amazonka-robomaker (empty) → 2.0
raw patch · 228 files changed
+24003/−0 lines, 228 filesdep +amazonka-coredep +amazonka-robomakerdep +amazonka-test
Dependencies added: amazonka-core, amazonka-robomaker, amazonka-test, base, bytestring, case-insensitive, tasty, tasty-hunit, text, time, unordered-containers
Files
- LICENSE +367/−0
- README.md +44/−0
- amazonka-robomaker.cabal +185/−0
- fixture/BatchDeleteWorlds.yaml +10/−0
- fixture/BatchDeleteWorldsResponse.proto +0/−0
- fixture/BatchDescribeSimulationJob.yaml +10/−0
- fixture/BatchDescribeSimulationJobResponse.proto +0/−0
- fixture/CancelDeploymentJob.yaml +10/−0
- fixture/CancelDeploymentJobResponse.proto +0/−0
- fixture/CancelSimulationJob.yaml +10/−0
- fixture/CancelSimulationJobBatch.yaml +10/−0
- fixture/CancelSimulationJobBatchResponse.proto +0/−0
- fixture/CancelSimulationJobResponse.proto +0/−0
- fixture/CancelWorldExportJob.yaml +10/−0
- fixture/CancelWorldExportJobResponse.proto +0/−0
- fixture/CancelWorldGenerationJob.yaml +10/−0
- fixture/CancelWorldGenerationJobResponse.proto +0/−0
- fixture/CreateDeploymentJob.yaml +10/−0
- fixture/CreateDeploymentJobResponse.proto +0/−0
- fixture/CreateFleet.yaml +10/−0
- fixture/CreateFleetResponse.proto +0/−0
- fixture/CreateRobot.yaml +10/−0
- fixture/CreateRobotApplication.yaml +10/−0
- fixture/CreateRobotApplicationResponse.proto +0/−0
- fixture/CreateRobotApplicationVersion.yaml +10/−0
- fixture/CreateRobotApplicationVersionResponse.proto +0/−0
- fixture/CreateRobotResponse.proto +0/−0
- fixture/CreateSimulationApplication.yaml +10/−0
- fixture/CreateSimulationApplicationResponse.proto +0/−0
- fixture/CreateSimulationApplicationVersion.yaml +10/−0
- fixture/CreateSimulationApplicationVersionResponse.proto +0/−0
- fixture/CreateSimulationJob.yaml +10/−0
- fixture/CreateSimulationJobResponse.proto +0/−0
- fixture/CreateWorldExportJob.yaml +10/−0
- fixture/CreateWorldExportJobResponse.proto +0/−0
- fixture/CreateWorldGenerationJob.yaml +10/−0
- fixture/CreateWorldGenerationJobResponse.proto +0/−0
- fixture/CreateWorldTemplate.yaml +10/−0
- fixture/CreateWorldTemplateResponse.proto +0/−0
- fixture/DeleteFleet.yaml +10/−0
- fixture/DeleteFleetResponse.proto +0/−0
- fixture/DeleteRobot.yaml +10/−0
- fixture/DeleteRobotApplication.yaml +10/−0
- fixture/DeleteRobotApplicationResponse.proto +0/−0
- fixture/DeleteRobotResponse.proto +0/−0
- fixture/DeleteSimulationApplication.yaml +10/−0
- fixture/DeleteSimulationApplicationResponse.proto +0/−0
- fixture/DeleteWorldTemplate.yaml +10/−0
- fixture/DeleteWorldTemplateResponse.proto +0/−0
- fixture/DeregisterRobot.yaml +10/−0
- fixture/DeregisterRobotResponse.proto +0/−0
- fixture/DescribeDeploymentJob.yaml +10/−0
- fixture/DescribeDeploymentJobResponse.proto +0/−0
- fixture/DescribeFleet.yaml +10/−0
- fixture/DescribeFleetResponse.proto +0/−0
- fixture/DescribeRobot.yaml +10/−0
- fixture/DescribeRobotApplication.yaml +10/−0
- fixture/DescribeRobotApplicationResponse.proto +0/−0
- fixture/DescribeRobotResponse.proto +0/−0
- fixture/DescribeSimulationApplication.yaml +10/−0
- fixture/DescribeSimulationApplicationResponse.proto +0/−0
- fixture/DescribeSimulationJob.yaml +10/−0
- fixture/DescribeSimulationJobBatch.yaml +10/−0
- fixture/DescribeSimulationJobBatchResponse.proto +0/−0
- fixture/DescribeSimulationJobResponse.proto +0/−0
- fixture/DescribeWorld.yaml +10/−0
- fixture/DescribeWorldExportJob.yaml +10/−0
- fixture/DescribeWorldExportJobResponse.proto +0/−0
- fixture/DescribeWorldGenerationJob.yaml +10/−0
- fixture/DescribeWorldGenerationJobResponse.proto +0/−0
- fixture/DescribeWorldResponse.proto +0/−0
- fixture/DescribeWorldTemplate.yaml +10/−0
- fixture/DescribeWorldTemplateResponse.proto +0/−0
- fixture/GetWorldTemplateBody.yaml +10/−0
- fixture/GetWorldTemplateBodyResponse.proto +0/−0
- fixture/ListDeploymentJobs.yaml +10/−0
- fixture/ListDeploymentJobsResponse.proto +0/−0
- fixture/ListFleets.yaml +10/−0
- fixture/ListFleetsResponse.proto +0/−0
- fixture/ListRobotApplications.yaml +10/−0
- fixture/ListRobotApplicationsResponse.proto +0/−0
- fixture/ListRobots.yaml +10/−0
- fixture/ListRobotsResponse.proto +0/−0
- fixture/ListSimulationApplications.yaml +10/−0
- fixture/ListSimulationApplicationsResponse.proto +0/−0
- fixture/ListSimulationJobBatches.yaml +10/−0
- fixture/ListSimulationJobBatchesResponse.proto +0/−0
- fixture/ListSimulationJobs.yaml +10/−0
- fixture/ListSimulationJobsResponse.proto +0/−0
- fixture/ListTagsForResource.yaml +10/−0
- fixture/ListTagsForResourceResponse.proto +0/−0
- fixture/ListWorldExportJobs.yaml +10/−0
- fixture/ListWorldExportJobsResponse.proto +0/−0
- fixture/ListWorldGenerationJobs.yaml +10/−0
- fixture/ListWorldGenerationJobsResponse.proto +0/−0
- fixture/ListWorldTemplates.yaml +10/−0
- fixture/ListWorldTemplatesResponse.proto +0/−0
- fixture/ListWorlds.yaml +10/−0
- fixture/ListWorldsResponse.proto +0/−0
- fixture/RegisterRobot.yaml +10/−0
- fixture/RegisterRobotResponse.proto +0/−0
- fixture/RestartSimulationJob.yaml +10/−0
- fixture/RestartSimulationJobResponse.proto +0/−0
- fixture/StartSimulationJobBatch.yaml +10/−0
- fixture/StartSimulationJobBatchResponse.proto +0/−0
- fixture/SyncDeploymentJob.yaml +10/−0
- fixture/SyncDeploymentJobResponse.proto +0/−0
- fixture/TagResource.yaml +10/−0
- fixture/TagResourceResponse.proto +0/−0
- fixture/UntagResource.yaml +10/−0
- fixture/UntagResourceResponse.proto +0/−0
- fixture/UpdateRobotApplication.yaml +10/−0
- fixture/UpdateRobotApplicationResponse.proto +0/−0
- fixture/UpdateSimulationApplication.yaml +10/−0
- fixture/UpdateSimulationApplicationResponse.proto +0/−0
- fixture/UpdateWorldTemplate.yaml +10/−0
- fixture/UpdateWorldTemplateResponse.proto +0/−0
- gen/Amazonka/RobOMaker.hs +605/−0
- gen/Amazonka/RobOMaker/BatchDeleteWorlds.hs +173/−0
- gen/Amazonka/RobOMaker/BatchDescribeSimulationJob.hs +183/−0
- gen/Amazonka/RobOMaker/CancelSimulationJob.hs +152/−0
- gen/Amazonka/RobOMaker/CancelSimulationJobBatch.hs +157/−0
- gen/Amazonka/RobOMaker/CancelWorldExportJob.hs +152/−0
- gen/Amazonka/RobOMaker/CancelWorldGenerationJob.hs +155/−0
- gen/Amazonka/RobOMaker/CreateRobotApplication.hs +342/−0
- gen/Amazonka/RobOMaker/CreateRobotApplicationVersion.hs +325/−0
- gen/Amazonka/RobOMaker/CreateSimulationApplication.hs +400/−0
- gen/Amazonka/RobOMaker/CreateSimulationApplicationVersion.hs +367/−0
- gen/Amazonka/RobOMaker/CreateSimulationJob.hs +747/−0
- gen/Amazonka/RobOMaker/CreateWorldExportJob.hs +463/−0
- gen/Amazonka/RobOMaker/CreateWorldGenerationJob.hs +465/−0
- gen/Amazonka/RobOMaker/CreateWorldTemplate.hs +284/−0
- gen/Amazonka/RobOMaker/DeleteRobotApplication.hs +175/−0
- gen/Amazonka/RobOMaker/DeleteSimulationApplication.hs +175/−0
- gen/Amazonka/RobOMaker/DeleteWorldTemplate.hs +152/−0
- gen/Amazonka/RobOMaker/DescribeRobotApplication.hs +307/−0
- gen/Amazonka/RobOMaker/DescribeSimulationApplication.hs +336/−0
- gen/Amazonka/RobOMaker/DescribeSimulationJob.hs +566/−0
- gen/Amazonka/RobOMaker/DescribeSimulationJobBatch.hs +441/−0
- gen/Amazonka/RobOMaker/DescribeWorld.hs +232/−0
- gen/Amazonka/RobOMaker/DescribeWorldExportJob.hs +397/−0
- gen/Amazonka/RobOMaker/DescribeWorldGenerationJob.hs +416/−0
- gen/Amazonka/RobOMaker/DescribeWorldTemplate.hs +251/−0
- gen/Amazonka/RobOMaker/GetWorldTemplateBody.hs +181/−0
- gen/Amazonka/RobOMaker/Lens.hs +835/−0
- gen/Amazonka/RobOMaker/ListRobotApplications.hs +307/−0
- gen/Amazonka/RobOMaker/ListSimulationApplications.hs +312/−0
- gen/Amazonka/RobOMaker/ListSimulationJobBatches.hs +280/−0
- gen/Amazonka/RobOMaker/ListSimulationJobs.hs +301/−0
- gen/Amazonka/RobOMaker/ListTagsForResource.hs +159/−0
- gen/Amazonka/RobOMaker/ListWorldExportJobs.hs +282/−0
- gen/Amazonka/RobOMaker/ListWorldGenerationJobs.hs +292/−0
- gen/Amazonka/RobOMaker/ListWorldTemplates.hs +267/−0
- gen/Amazonka/RobOMaker/ListWorlds.hs +271/−0
- gen/Amazonka/RobOMaker/RestartSimulationJob.hs +152/−0
- gen/Amazonka/RobOMaker/StartSimulationJobBatch.hs +484/−0
- gen/Amazonka/RobOMaker/TagResource.hs +177/−0
- gen/Amazonka/RobOMaker/Types.hs +645/−0
- gen/Amazonka/RobOMaker/Types/Architecture.hs +76/−0
- gen/Amazonka/RobOMaker/Types/BatchPolicy.hs +128/−0
- gen/Amazonka/RobOMaker/Types/Compute.hs +120/−0
- gen/Amazonka/RobOMaker/Types/ComputeResponse.hs +109/−0
- gen/Amazonka/RobOMaker/Types/ComputeType.hs +71/−0
- gen/Amazonka/RobOMaker/Types/DataSource.hs +170/−0
- gen/Amazonka/RobOMaker/Types/DataSourceConfig.hs +187/−0
- gen/Amazonka/RobOMaker/Types/DataSourceType.hs +76/−0
- gen/Amazonka/RobOMaker/Types/Environment.hs +70/−0
- gen/Amazonka/RobOMaker/Types/ExitBehavior.hs +71/−0
- gen/Amazonka/RobOMaker/Types/FailedCreateSimulationJobRequest.hs +125/−0
- gen/Amazonka/RobOMaker/Types/FailureBehavior.hs +71/−0
- gen/Amazonka/RobOMaker/Types/FailureSummary.hs +85/−0
- gen/Amazonka/RobOMaker/Types/Filter.hs +82/−0
- gen/Amazonka/RobOMaker/Types/FinishedWorldsSummary.hs +98/−0
- gen/Amazonka/RobOMaker/Types/LaunchConfig.hs +181/−0
- gen/Amazonka/RobOMaker/Types/LoggingConfig.hs +87/−0
- gen/Amazonka/RobOMaker/Types/NetworkInterface.hs +97/−0
- gen/Amazonka/RobOMaker/Types/OutputLocation.hs +93/−0
- gen/Amazonka/RobOMaker/Types/PortForwardingConfig.hs +80/−0
- gen/Amazonka/RobOMaker/Types/PortMapping.hs +115/−0
- gen/Amazonka/RobOMaker/Types/RenderingEngine.hs +93/−0
- gen/Amazonka/RobOMaker/Types/RenderingEngineType.hs +66/−0
- gen/Amazonka/RobOMaker/Types/RobotApplicationConfig.hs +205/−0
- gen/Amazonka/RobOMaker/Types/RobotApplicationSummary.hs +124/−0
- gen/Amazonka/RobOMaker/Types/RobotSoftwareSuite.hs +94/−0
- gen/Amazonka/RobOMaker/Types/RobotSoftwareSuiteType.hs +76/−0
- gen/Amazonka/RobOMaker/Types/RobotSoftwareSuiteVersionType.hs +81/−0
- gen/Amazonka/RobOMaker/Types/S3KeyOutput.hs +83/−0
- gen/Amazonka/RobOMaker/Types/SimulationApplicationConfig.hs +220/−0
- gen/Amazonka/RobOMaker/Types/SimulationApplicationSummary.hs +141/−0
- gen/Amazonka/RobOMaker/Types/SimulationJob.hs +362/−0
- gen/Amazonka/RobOMaker/Types/SimulationJobBatchErrorCode.hs +66/−0
- gen/Amazonka/RobOMaker/Types/SimulationJobBatchStatus.hs +106/−0
- gen/Amazonka/RobOMaker/Types/SimulationJobBatchSummary.hs +268/−0
- gen/Amazonka/RobOMaker/Types/SimulationJobErrorCode.hs +216/−0
- gen/Amazonka/RobOMaker/Types/SimulationJobRequest.hs +292/−0
- gen/Amazonka/RobOMaker/Types/SimulationJobStatus.hs +111/−0
- gen/Amazonka/RobOMaker/Types/SimulationJobSummary.hs +170/−0
- gen/Amazonka/RobOMaker/Types/SimulationSoftwareSuite.hs +93/−0
- gen/Amazonka/RobOMaker/Types/SimulationSoftwareSuiteType.hs +76/−0
- gen/Amazonka/RobOMaker/Types/Source.hs +109/−0
- gen/Amazonka/RobOMaker/Types/SourceConfig.hs +96/−0
- gen/Amazonka/RobOMaker/Types/TemplateLocation.hs +87/−0
- gen/Amazonka/RobOMaker/Types/TemplateSummary.hs +126/−0
- gen/Amazonka/RobOMaker/Types/Tool.hs +159/−0
- gen/Amazonka/RobOMaker/Types/UploadBehavior.hs +71/−0
- gen/Amazonka/RobOMaker/Types/UploadConfiguration.hs +184/−0
- gen/Amazonka/RobOMaker/Types/VPCConfig.hs +113/−0
- gen/Amazonka/RobOMaker/Types/VPCConfigResponse.hs +109/−0
- gen/Amazonka/RobOMaker/Types/WorldConfig.hs +74/−0
- gen/Amazonka/RobOMaker/Types/WorldCount.hs +102/−0
- gen/Amazonka/RobOMaker/Types/WorldExportJobErrorCode.hs +91/−0
- gen/Amazonka/RobOMaker/Types/WorldExportJobStatus.hs +91/−0
- gen/Amazonka/RobOMaker/Types/WorldExportJobSummary.hs +178/−0
- gen/Amazonka/RobOMaker/Types/WorldFailure.hs +151/−0
- gen/Amazonka/RobOMaker/Types/WorldGenerationJobErrorCode.hs +91/−0
- gen/Amazonka/RobOMaker/Types/WorldGenerationJobStatus.hs +96/−0
- gen/Amazonka/RobOMaker/Types/WorldGenerationJobSummary.hs +215/−0
- gen/Amazonka/RobOMaker/Types/WorldSummary.hs +108/−0
- gen/Amazonka/RobOMaker/UntagResource.hs +172/−0
- gen/Amazonka/RobOMaker/UpdateRobotApplication.hs +330/−0
- gen/Amazonka/RobOMaker/UpdateSimulationApplication.hs +383/−0
- gen/Amazonka/RobOMaker/UpdateWorldTemplate.hs +250/−0
- gen/Amazonka/RobOMaker/Waiters.hs +24/−0
- src/.gitkeep +0/−0
- test/Main.hs +23/−0
- test/Test/Amazonka/Gen/RobOMaker.hs +878/−0
- test/Test/Amazonka/RobOMaker.hs +20/−0
- test/Test/Amazonka/RobOMaker/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 RoboMaker SDK++* [Version](#version)+* [Description](#description)+* [Contribute](#contribute)+* [Licence](#licence)+++## Version+ +`2.0` - Derived from API version @2018-06-29@ of the AWS service descriptions, licensed under Apache 2.0.++## Description++Documentation is available via [Hackage](http://hackage.haskell.org/package/amazonka-robomaker)+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.RobOMaker](http://hackage.haskell.org/package/amazonka-robomaker/docs/Amazonka-RobOMaker.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-robomaker` 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-robomaker.cabal view
@@ -0,0 +1,185 @@+cabal-version: 2.2+name: amazonka-robomaker+version: 2.0+synopsis: Amazon RoboMaker 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 @2018-06-29@ 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.RobOMaker.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.RobOMaker" 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-robomaker++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.RobOMaker+ Amazonka.RobOMaker.BatchDeleteWorlds+ Amazonka.RobOMaker.BatchDescribeSimulationJob+ Amazonka.RobOMaker.CancelSimulationJob+ Amazonka.RobOMaker.CancelSimulationJobBatch+ Amazonka.RobOMaker.CancelWorldExportJob+ Amazonka.RobOMaker.CancelWorldGenerationJob+ Amazonka.RobOMaker.CreateRobotApplication+ Amazonka.RobOMaker.CreateRobotApplicationVersion+ Amazonka.RobOMaker.CreateSimulationApplication+ Amazonka.RobOMaker.CreateSimulationApplicationVersion+ Amazonka.RobOMaker.CreateSimulationJob+ Amazonka.RobOMaker.CreateWorldExportJob+ Amazonka.RobOMaker.CreateWorldGenerationJob+ Amazonka.RobOMaker.CreateWorldTemplate+ Amazonka.RobOMaker.DeleteRobotApplication+ Amazonka.RobOMaker.DeleteSimulationApplication+ Amazonka.RobOMaker.DeleteWorldTemplate+ Amazonka.RobOMaker.DescribeRobotApplication+ Amazonka.RobOMaker.DescribeSimulationApplication+ Amazonka.RobOMaker.DescribeSimulationJob+ Amazonka.RobOMaker.DescribeSimulationJobBatch+ Amazonka.RobOMaker.DescribeWorld+ Amazonka.RobOMaker.DescribeWorldExportJob+ Amazonka.RobOMaker.DescribeWorldGenerationJob+ Amazonka.RobOMaker.DescribeWorldTemplate+ Amazonka.RobOMaker.GetWorldTemplateBody+ Amazonka.RobOMaker.Lens+ Amazonka.RobOMaker.ListRobotApplications+ Amazonka.RobOMaker.ListSimulationApplications+ Amazonka.RobOMaker.ListSimulationJobBatches+ Amazonka.RobOMaker.ListSimulationJobs+ Amazonka.RobOMaker.ListTagsForResource+ Amazonka.RobOMaker.ListWorldExportJobs+ Amazonka.RobOMaker.ListWorldGenerationJobs+ Amazonka.RobOMaker.ListWorlds+ Amazonka.RobOMaker.ListWorldTemplates+ Amazonka.RobOMaker.RestartSimulationJob+ Amazonka.RobOMaker.StartSimulationJobBatch+ Amazonka.RobOMaker.TagResource+ Amazonka.RobOMaker.Types+ Amazonka.RobOMaker.Types.Architecture+ Amazonka.RobOMaker.Types.BatchPolicy+ Amazonka.RobOMaker.Types.Compute+ Amazonka.RobOMaker.Types.ComputeResponse+ Amazonka.RobOMaker.Types.ComputeType+ Amazonka.RobOMaker.Types.DataSource+ Amazonka.RobOMaker.Types.DataSourceConfig+ Amazonka.RobOMaker.Types.DataSourceType+ Amazonka.RobOMaker.Types.Environment+ Amazonka.RobOMaker.Types.ExitBehavior+ Amazonka.RobOMaker.Types.FailedCreateSimulationJobRequest+ Amazonka.RobOMaker.Types.FailureBehavior+ Amazonka.RobOMaker.Types.FailureSummary+ Amazonka.RobOMaker.Types.Filter+ Amazonka.RobOMaker.Types.FinishedWorldsSummary+ Amazonka.RobOMaker.Types.LaunchConfig+ Amazonka.RobOMaker.Types.LoggingConfig+ Amazonka.RobOMaker.Types.NetworkInterface+ Amazonka.RobOMaker.Types.OutputLocation+ Amazonka.RobOMaker.Types.PortForwardingConfig+ Amazonka.RobOMaker.Types.PortMapping+ Amazonka.RobOMaker.Types.RenderingEngine+ Amazonka.RobOMaker.Types.RenderingEngineType+ Amazonka.RobOMaker.Types.RobotApplicationConfig+ Amazonka.RobOMaker.Types.RobotApplicationSummary+ Amazonka.RobOMaker.Types.RobotSoftwareSuite+ Amazonka.RobOMaker.Types.RobotSoftwareSuiteType+ Amazonka.RobOMaker.Types.RobotSoftwareSuiteVersionType+ Amazonka.RobOMaker.Types.S3KeyOutput+ Amazonka.RobOMaker.Types.SimulationApplicationConfig+ Amazonka.RobOMaker.Types.SimulationApplicationSummary+ Amazonka.RobOMaker.Types.SimulationJob+ Amazonka.RobOMaker.Types.SimulationJobBatchErrorCode+ Amazonka.RobOMaker.Types.SimulationJobBatchStatus+ Amazonka.RobOMaker.Types.SimulationJobBatchSummary+ Amazonka.RobOMaker.Types.SimulationJobErrorCode+ Amazonka.RobOMaker.Types.SimulationJobRequest+ Amazonka.RobOMaker.Types.SimulationJobStatus+ Amazonka.RobOMaker.Types.SimulationJobSummary+ Amazonka.RobOMaker.Types.SimulationSoftwareSuite+ Amazonka.RobOMaker.Types.SimulationSoftwareSuiteType+ Amazonka.RobOMaker.Types.Source+ Amazonka.RobOMaker.Types.SourceConfig+ Amazonka.RobOMaker.Types.TemplateLocation+ Amazonka.RobOMaker.Types.TemplateSummary+ Amazonka.RobOMaker.Types.Tool+ Amazonka.RobOMaker.Types.UploadBehavior+ Amazonka.RobOMaker.Types.UploadConfiguration+ Amazonka.RobOMaker.Types.VPCConfig+ Amazonka.RobOMaker.Types.VPCConfigResponse+ Amazonka.RobOMaker.Types.WorldConfig+ Amazonka.RobOMaker.Types.WorldCount+ Amazonka.RobOMaker.Types.WorldExportJobErrorCode+ Amazonka.RobOMaker.Types.WorldExportJobStatus+ Amazonka.RobOMaker.Types.WorldExportJobSummary+ Amazonka.RobOMaker.Types.WorldFailure+ Amazonka.RobOMaker.Types.WorldGenerationJobErrorCode+ Amazonka.RobOMaker.Types.WorldGenerationJobStatus+ Amazonka.RobOMaker.Types.WorldGenerationJobSummary+ Amazonka.RobOMaker.Types.WorldSummary+ Amazonka.RobOMaker.UntagResource+ Amazonka.RobOMaker.UpdateRobotApplication+ Amazonka.RobOMaker.UpdateSimulationApplication+ Amazonka.RobOMaker.UpdateWorldTemplate+ Amazonka.RobOMaker.Waiters++ build-depends:+ , amazonka-core >=2.0 && <2.1+ , base >=4.12 && <5++test-suite amazonka-robomaker-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.RobOMaker+ Test.Amazonka.RobOMaker+ Test.Amazonka.RobOMaker.Internal++ build-depends:+ , amazonka-core >=2.0 && <2.1+ , amazonka-robomaker+ , amazonka-test >=2.0 && <2.1+ , base+ , bytestring+ , case-insensitive+ , tasty+ , tasty-hunit+ , text+ , time+ , unordered-containers
+ fixture/BatchDeleteWorlds.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/BatchDeleteWorldsResponse.proto view
+ fixture/BatchDescribeSimulationJob.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/BatchDescribeSimulationJobResponse.proto view
+ fixture/CancelDeploymentJob.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/CancelDeploymentJobResponse.proto view
+ fixture/CancelSimulationJob.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/CancelSimulationJobBatch.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/CancelSimulationJobBatchResponse.proto view
+ fixture/CancelSimulationJobResponse.proto view
+ fixture/CancelWorldExportJob.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/CancelWorldExportJobResponse.proto view
+ fixture/CancelWorldGenerationJob.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/CancelWorldGenerationJobResponse.proto view
+ fixture/CreateDeploymentJob.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/CreateDeploymentJobResponse.proto view
+ fixture/CreateFleet.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/CreateFleetResponse.proto view
+ fixture/CreateRobot.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/CreateRobotApplication.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/CreateRobotApplicationResponse.proto view
+ fixture/CreateRobotApplicationVersion.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/CreateRobotApplicationVersionResponse.proto view
+ fixture/CreateRobotResponse.proto view
+ fixture/CreateSimulationApplication.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/CreateSimulationApplicationResponse.proto view
+ fixture/CreateSimulationApplicationVersion.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/CreateSimulationApplicationVersionResponse.proto view
+ fixture/CreateSimulationJob.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/CreateSimulationJobResponse.proto view
+ fixture/CreateWorldExportJob.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/CreateWorldExportJobResponse.proto view
+ fixture/CreateWorldGenerationJob.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/CreateWorldGenerationJobResponse.proto view
+ fixture/CreateWorldTemplate.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/CreateWorldTemplateResponse.proto view
+ fixture/DeleteFleet.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/DeleteFleetResponse.proto view
+ fixture/DeleteRobot.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/DeleteRobotApplication.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/DeleteRobotApplicationResponse.proto view
+ fixture/DeleteRobotResponse.proto view
+ fixture/DeleteSimulationApplication.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/DeleteSimulationApplicationResponse.proto view
+ fixture/DeleteWorldTemplate.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/DeleteWorldTemplateResponse.proto view
+ fixture/DeregisterRobot.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/DeregisterRobotResponse.proto view
+ fixture/DescribeDeploymentJob.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/DescribeDeploymentJobResponse.proto view
+ fixture/DescribeFleet.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/DescribeFleetResponse.proto view
+ fixture/DescribeRobot.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/DescribeRobotApplication.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/DescribeRobotApplicationResponse.proto view
+ fixture/DescribeRobotResponse.proto view
+ fixture/DescribeSimulationApplication.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/DescribeSimulationApplicationResponse.proto view
+ fixture/DescribeSimulationJob.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/DescribeSimulationJobBatch.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/DescribeSimulationJobBatchResponse.proto view
+ fixture/DescribeSimulationJobResponse.proto view
+ fixture/DescribeWorld.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/DescribeWorldExportJob.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/DescribeWorldExportJobResponse.proto view
+ fixture/DescribeWorldGenerationJob.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/DescribeWorldGenerationJobResponse.proto view
+ fixture/DescribeWorldResponse.proto view
+ fixture/DescribeWorldTemplate.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/DescribeWorldTemplateResponse.proto view
+ fixture/GetWorldTemplateBody.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/GetWorldTemplateBodyResponse.proto view
+ fixture/ListDeploymentJobs.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/ListDeploymentJobsResponse.proto view
+ fixture/ListFleets.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/ListFleetsResponse.proto view
+ fixture/ListRobotApplications.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/ListRobotApplicationsResponse.proto view
+ fixture/ListRobots.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/ListRobotsResponse.proto view
+ fixture/ListSimulationApplications.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/ListSimulationApplicationsResponse.proto view
+ fixture/ListSimulationJobBatches.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/ListSimulationJobBatchesResponse.proto view
+ fixture/ListSimulationJobs.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/ListSimulationJobsResponse.proto view
+ fixture/ListTagsForResource.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/ListWorldExportJobs.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/ListWorldExportJobsResponse.proto view
+ fixture/ListWorldGenerationJobs.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/ListWorldGenerationJobsResponse.proto view
+ fixture/ListWorldTemplates.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/ListWorldTemplatesResponse.proto view
+ fixture/ListWorlds.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/ListWorldsResponse.proto view
+ fixture/RegisterRobot.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/RegisterRobotResponse.proto view
+ fixture/RestartSimulationJob.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/RestartSimulationJobResponse.proto view
+ fixture/StartSimulationJobBatch.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/StartSimulationJobBatchResponse.proto view
+ fixture/SyncDeploymentJob.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/SyncDeploymentJobResponse.proto view
+ fixture/TagResource.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/UpdateRobotApplication.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/UpdateRobotApplicationResponse.proto view
+ fixture/UpdateSimulationApplication.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/UpdateSimulationApplicationResponse.proto view
+ fixture/UpdateWorldTemplate.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/robomaker/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: robomaker.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/UpdateWorldTemplateResponse.proto view
+ gen/Amazonka/RobOMaker.hs view
@@ -0,0 +1,605 @@+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Amazonka.RobOMaker+-- 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 @2018-06-29@ of the AWS service descriptions, licensed under Apache 2.0.+--+-- This section provides documentation for the AWS RoboMaker API+-- operations.+module Amazonka.RobOMaker+ ( -- * Service Configuration+ defaultService,++ -- * Errors+ -- $errors++ -- ** ConcurrentDeploymentException+ _ConcurrentDeploymentException,++ -- ** IdempotentParameterMismatchException+ _IdempotentParameterMismatchException,++ -- ** InternalServerException+ _InternalServerException,++ -- ** InvalidParameterException+ _InvalidParameterException,++ -- ** LimitExceededException+ _LimitExceededException,++ -- ** ResourceAlreadyExistsException+ _ResourceAlreadyExistsException,++ -- ** ResourceNotFoundException+ _ResourceNotFoundException,++ -- ** ServiceUnavailableException+ _ServiceUnavailableException,++ -- ** ThrottlingException+ _ThrottlingException,++ -- * Waiters+ -- $waiters++ -- * Operations+ -- $operations++ -- ** BatchDeleteWorlds+ BatchDeleteWorlds (BatchDeleteWorlds'),+ newBatchDeleteWorlds,+ BatchDeleteWorldsResponse (BatchDeleteWorldsResponse'),+ newBatchDeleteWorldsResponse,++ -- ** BatchDescribeSimulationJob+ BatchDescribeSimulationJob (BatchDescribeSimulationJob'),+ newBatchDescribeSimulationJob,+ BatchDescribeSimulationJobResponse (BatchDescribeSimulationJobResponse'),+ newBatchDescribeSimulationJobResponse,++ -- ** CancelSimulationJob+ CancelSimulationJob (CancelSimulationJob'),+ newCancelSimulationJob,+ CancelSimulationJobResponse (CancelSimulationJobResponse'),+ newCancelSimulationJobResponse,++ -- ** CancelSimulationJobBatch+ CancelSimulationJobBatch (CancelSimulationJobBatch'),+ newCancelSimulationJobBatch,+ CancelSimulationJobBatchResponse (CancelSimulationJobBatchResponse'),+ newCancelSimulationJobBatchResponse,++ -- ** CancelWorldExportJob+ CancelWorldExportJob (CancelWorldExportJob'),+ newCancelWorldExportJob,+ CancelWorldExportJobResponse (CancelWorldExportJobResponse'),+ newCancelWorldExportJobResponse,++ -- ** CancelWorldGenerationJob+ CancelWorldGenerationJob (CancelWorldGenerationJob'),+ newCancelWorldGenerationJob,+ CancelWorldGenerationJobResponse (CancelWorldGenerationJobResponse'),+ newCancelWorldGenerationJobResponse,++ -- ** CreateRobotApplication+ CreateRobotApplication (CreateRobotApplication'),+ newCreateRobotApplication,+ CreateRobotApplicationResponse (CreateRobotApplicationResponse'),+ newCreateRobotApplicationResponse,++ -- ** CreateRobotApplicationVersion+ CreateRobotApplicationVersion (CreateRobotApplicationVersion'),+ newCreateRobotApplicationVersion,+ CreateRobotApplicationVersionResponse (CreateRobotApplicationVersionResponse'),+ newCreateRobotApplicationVersionResponse,++ -- ** CreateSimulationApplication+ CreateSimulationApplication (CreateSimulationApplication'),+ newCreateSimulationApplication,+ CreateSimulationApplicationResponse (CreateSimulationApplicationResponse'),+ newCreateSimulationApplicationResponse,++ -- ** CreateSimulationApplicationVersion+ CreateSimulationApplicationVersion (CreateSimulationApplicationVersion'),+ newCreateSimulationApplicationVersion,+ CreateSimulationApplicationVersionResponse (CreateSimulationApplicationVersionResponse'),+ newCreateSimulationApplicationVersionResponse,++ -- ** CreateSimulationJob+ CreateSimulationJob (CreateSimulationJob'),+ newCreateSimulationJob,+ CreateSimulationJobResponse (CreateSimulationJobResponse'),+ newCreateSimulationJobResponse,++ -- ** CreateWorldExportJob+ CreateWorldExportJob (CreateWorldExportJob'),+ newCreateWorldExportJob,+ CreateWorldExportJobResponse (CreateWorldExportJobResponse'),+ newCreateWorldExportJobResponse,++ -- ** CreateWorldGenerationJob+ CreateWorldGenerationJob (CreateWorldGenerationJob'),+ newCreateWorldGenerationJob,+ CreateWorldGenerationJobResponse (CreateWorldGenerationJobResponse'),+ newCreateWorldGenerationJobResponse,++ -- ** CreateWorldTemplate+ CreateWorldTemplate (CreateWorldTemplate'),+ newCreateWorldTemplate,+ CreateWorldTemplateResponse (CreateWorldTemplateResponse'),+ newCreateWorldTemplateResponse,++ -- ** DeleteRobotApplication+ DeleteRobotApplication (DeleteRobotApplication'),+ newDeleteRobotApplication,+ DeleteRobotApplicationResponse (DeleteRobotApplicationResponse'),+ newDeleteRobotApplicationResponse,++ -- ** DeleteSimulationApplication+ DeleteSimulationApplication (DeleteSimulationApplication'),+ newDeleteSimulationApplication,+ DeleteSimulationApplicationResponse (DeleteSimulationApplicationResponse'),+ newDeleteSimulationApplicationResponse,++ -- ** DeleteWorldTemplate+ DeleteWorldTemplate (DeleteWorldTemplate'),+ newDeleteWorldTemplate,+ DeleteWorldTemplateResponse (DeleteWorldTemplateResponse'),+ newDeleteWorldTemplateResponse,++ -- ** DescribeRobotApplication+ DescribeRobotApplication (DescribeRobotApplication'),+ newDescribeRobotApplication,+ DescribeRobotApplicationResponse (DescribeRobotApplicationResponse'),+ newDescribeRobotApplicationResponse,++ -- ** DescribeSimulationApplication+ DescribeSimulationApplication (DescribeSimulationApplication'),+ newDescribeSimulationApplication,+ DescribeSimulationApplicationResponse (DescribeSimulationApplicationResponse'),+ newDescribeSimulationApplicationResponse,++ -- ** DescribeSimulationJob+ DescribeSimulationJob (DescribeSimulationJob'),+ newDescribeSimulationJob,+ DescribeSimulationJobResponse (DescribeSimulationJobResponse'),+ newDescribeSimulationJobResponse,++ -- ** DescribeSimulationJobBatch+ DescribeSimulationJobBatch (DescribeSimulationJobBatch'),+ newDescribeSimulationJobBatch,+ DescribeSimulationJobBatchResponse (DescribeSimulationJobBatchResponse'),+ newDescribeSimulationJobBatchResponse,++ -- ** DescribeWorld+ DescribeWorld (DescribeWorld'),+ newDescribeWorld,+ DescribeWorldResponse (DescribeWorldResponse'),+ newDescribeWorldResponse,++ -- ** DescribeWorldExportJob+ DescribeWorldExportJob (DescribeWorldExportJob'),+ newDescribeWorldExportJob,+ DescribeWorldExportJobResponse (DescribeWorldExportJobResponse'),+ newDescribeWorldExportJobResponse,++ -- ** DescribeWorldGenerationJob+ DescribeWorldGenerationJob (DescribeWorldGenerationJob'),+ newDescribeWorldGenerationJob,+ DescribeWorldGenerationJobResponse (DescribeWorldGenerationJobResponse'),+ newDescribeWorldGenerationJobResponse,++ -- ** DescribeWorldTemplate+ DescribeWorldTemplate (DescribeWorldTemplate'),+ newDescribeWorldTemplate,+ DescribeWorldTemplateResponse (DescribeWorldTemplateResponse'),+ newDescribeWorldTemplateResponse,++ -- ** GetWorldTemplateBody+ GetWorldTemplateBody (GetWorldTemplateBody'),+ newGetWorldTemplateBody,+ GetWorldTemplateBodyResponse (GetWorldTemplateBodyResponse'),+ newGetWorldTemplateBodyResponse,++ -- ** ListRobotApplications (Paginated)+ ListRobotApplications (ListRobotApplications'),+ newListRobotApplications,+ ListRobotApplicationsResponse (ListRobotApplicationsResponse'),+ newListRobotApplicationsResponse,++ -- ** ListSimulationApplications (Paginated)+ ListSimulationApplications (ListSimulationApplications'),+ newListSimulationApplications,+ ListSimulationApplicationsResponse (ListSimulationApplicationsResponse'),+ newListSimulationApplicationsResponse,++ -- ** ListSimulationJobBatches (Paginated)+ ListSimulationJobBatches (ListSimulationJobBatches'),+ newListSimulationJobBatches,+ ListSimulationJobBatchesResponse (ListSimulationJobBatchesResponse'),+ newListSimulationJobBatchesResponse,++ -- ** ListSimulationJobs (Paginated)+ ListSimulationJobs (ListSimulationJobs'),+ newListSimulationJobs,+ ListSimulationJobsResponse (ListSimulationJobsResponse'),+ newListSimulationJobsResponse,++ -- ** ListTagsForResource+ ListTagsForResource (ListTagsForResource'),+ newListTagsForResource,+ ListTagsForResourceResponse (ListTagsForResourceResponse'),+ newListTagsForResourceResponse,++ -- ** ListWorldExportJobs (Paginated)+ ListWorldExportJobs (ListWorldExportJobs'),+ newListWorldExportJobs,+ ListWorldExportJobsResponse (ListWorldExportJobsResponse'),+ newListWorldExportJobsResponse,++ -- ** ListWorldGenerationJobs (Paginated)+ ListWorldGenerationJobs (ListWorldGenerationJobs'),+ newListWorldGenerationJobs,+ ListWorldGenerationJobsResponse (ListWorldGenerationJobsResponse'),+ newListWorldGenerationJobsResponse,++ -- ** ListWorldTemplates (Paginated)+ ListWorldTemplates (ListWorldTemplates'),+ newListWorldTemplates,+ ListWorldTemplatesResponse (ListWorldTemplatesResponse'),+ newListWorldTemplatesResponse,++ -- ** ListWorlds (Paginated)+ ListWorlds (ListWorlds'),+ newListWorlds,+ ListWorldsResponse (ListWorldsResponse'),+ newListWorldsResponse,++ -- ** RestartSimulationJob+ RestartSimulationJob (RestartSimulationJob'),+ newRestartSimulationJob,+ RestartSimulationJobResponse (RestartSimulationJobResponse'),+ newRestartSimulationJobResponse,++ -- ** StartSimulationJobBatch+ StartSimulationJobBatch (StartSimulationJobBatch'),+ newStartSimulationJobBatch,+ StartSimulationJobBatchResponse (StartSimulationJobBatchResponse'),+ newStartSimulationJobBatchResponse,++ -- ** TagResource+ TagResource (TagResource'),+ newTagResource,+ TagResourceResponse (TagResourceResponse'),+ newTagResourceResponse,++ -- ** UntagResource+ UntagResource (UntagResource'),+ newUntagResource,+ UntagResourceResponse (UntagResourceResponse'),+ newUntagResourceResponse,++ -- ** UpdateRobotApplication+ UpdateRobotApplication (UpdateRobotApplication'),+ newUpdateRobotApplication,+ UpdateRobotApplicationResponse (UpdateRobotApplicationResponse'),+ newUpdateRobotApplicationResponse,++ -- ** UpdateSimulationApplication+ UpdateSimulationApplication (UpdateSimulationApplication'),+ newUpdateSimulationApplication,+ UpdateSimulationApplicationResponse (UpdateSimulationApplicationResponse'),+ newUpdateSimulationApplicationResponse,++ -- ** UpdateWorldTemplate+ UpdateWorldTemplate (UpdateWorldTemplate'),+ newUpdateWorldTemplate,+ UpdateWorldTemplateResponse (UpdateWorldTemplateResponse'),+ newUpdateWorldTemplateResponse,++ -- * Types++ -- ** Architecture+ Architecture (..),++ -- ** ComputeType+ ComputeType (..),++ -- ** DataSourceType+ DataSourceType (..),++ -- ** ExitBehavior+ ExitBehavior (..),++ -- ** FailureBehavior+ FailureBehavior (..),++ -- ** RenderingEngineType+ RenderingEngineType (..),++ -- ** RobotSoftwareSuiteType+ RobotSoftwareSuiteType (..),++ -- ** RobotSoftwareSuiteVersionType+ RobotSoftwareSuiteVersionType (..),++ -- ** SimulationJobBatchErrorCode+ SimulationJobBatchErrorCode (..),++ -- ** SimulationJobBatchStatus+ SimulationJobBatchStatus (..),++ -- ** SimulationJobErrorCode+ SimulationJobErrorCode (..),++ -- ** SimulationJobStatus+ SimulationJobStatus (..),++ -- ** SimulationSoftwareSuiteType+ SimulationSoftwareSuiteType (..),++ -- ** UploadBehavior+ UploadBehavior (..),++ -- ** WorldExportJobErrorCode+ WorldExportJobErrorCode (..),++ -- ** WorldExportJobStatus+ WorldExportJobStatus (..),++ -- ** WorldGenerationJobErrorCode+ WorldGenerationJobErrorCode (..),++ -- ** WorldGenerationJobStatus+ WorldGenerationJobStatus (..),++ -- ** BatchPolicy+ BatchPolicy (BatchPolicy'),+ newBatchPolicy,++ -- ** Compute+ Compute (Compute'),+ newCompute,++ -- ** ComputeResponse+ ComputeResponse (ComputeResponse'),+ newComputeResponse,++ -- ** DataSource+ DataSource (DataSource'),+ newDataSource,++ -- ** DataSourceConfig+ DataSourceConfig (DataSourceConfig'),+ newDataSourceConfig,++ -- ** Environment+ Environment (Environment'),+ newEnvironment,++ -- ** FailedCreateSimulationJobRequest+ FailedCreateSimulationJobRequest (FailedCreateSimulationJobRequest'),+ newFailedCreateSimulationJobRequest,++ -- ** FailureSummary+ FailureSummary (FailureSummary'),+ newFailureSummary,++ -- ** Filter+ Filter (Filter'),+ newFilter,++ -- ** FinishedWorldsSummary+ FinishedWorldsSummary (FinishedWorldsSummary'),+ newFinishedWorldsSummary,++ -- ** LaunchConfig+ LaunchConfig (LaunchConfig'),+ newLaunchConfig,++ -- ** LoggingConfig+ LoggingConfig (LoggingConfig'),+ newLoggingConfig,++ -- ** NetworkInterface+ NetworkInterface (NetworkInterface'),+ newNetworkInterface,++ -- ** OutputLocation+ OutputLocation (OutputLocation'),+ newOutputLocation,++ -- ** PortForwardingConfig+ PortForwardingConfig (PortForwardingConfig'),+ newPortForwardingConfig,++ -- ** PortMapping+ PortMapping (PortMapping'),+ newPortMapping,++ -- ** RenderingEngine+ RenderingEngine (RenderingEngine'),+ newRenderingEngine,++ -- ** RobotApplicationConfig+ RobotApplicationConfig (RobotApplicationConfig'),+ newRobotApplicationConfig,++ -- ** RobotApplicationSummary+ RobotApplicationSummary (RobotApplicationSummary'),+ newRobotApplicationSummary,++ -- ** RobotSoftwareSuite+ RobotSoftwareSuite (RobotSoftwareSuite'),+ newRobotSoftwareSuite,++ -- ** S3KeyOutput+ S3KeyOutput (S3KeyOutput'),+ newS3KeyOutput,++ -- ** SimulationApplicationConfig+ SimulationApplicationConfig (SimulationApplicationConfig'),+ newSimulationApplicationConfig,++ -- ** SimulationApplicationSummary+ SimulationApplicationSummary (SimulationApplicationSummary'),+ newSimulationApplicationSummary,++ -- ** SimulationJob+ SimulationJob (SimulationJob'),+ newSimulationJob,++ -- ** SimulationJobBatchSummary+ SimulationJobBatchSummary (SimulationJobBatchSummary'),+ newSimulationJobBatchSummary,++ -- ** SimulationJobRequest+ SimulationJobRequest (SimulationJobRequest'),+ newSimulationJobRequest,++ -- ** SimulationJobSummary+ SimulationJobSummary (SimulationJobSummary'),+ newSimulationJobSummary,++ -- ** SimulationSoftwareSuite+ SimulationSoftwareSuite (SimulationSoftwareSuite'),+ newSimulationSoftwareSuite,++ -- ** Source+ Source (Source'),+ newSource,++ -- ** SourceConfig+ SourceConfig (SourceConfig'),+ newSourceConfig,++ -- ** TemplateLocation+ TemplateLocation (TemplateLocation'),+ newTemplateLocation,++ -- ** TemplateSummary+ TemplateSummary (TemplateSummary'),+ newTemplateSummary,++ -- ** Tool+ Tool (Tool'),+ newTool,++ -- ** UploadConfiguration+ UploadConfiguration (UploadConfiguration'),+ newUploadConfiguration,++ -- ** VPCConfig+ VPCConfig (VPCConfig'),+ newVPCConfig,++ -- ** VPCConfigResponse+ VPCConfigResponse (VPCConfigResponse'),+ newVPCConfigResponse,++ -- ** WorldConfig+ WorldConfig (WorldConfig'),+ newWorldConfig,++ -- ** WorldCount+ WorldCount (WorldCount'),+ newWorldCount,++ -- ** WorldExportJobSummary+ WorldExportJobSummary (WorldExportJobSummary'),+ newWorldExportJobSummary,++ -- ** WorldFailure+ WorldFailure (WorldFailure'),+ newWorldFailure,++ -- ** WorldGenerationJobSummary+ WorldGenerationJobSummary (WorldGenerationJobSummary'),+ newWorldGenerationJobSummary,++ -- ** WorldSummary+ WorldSummary (WorldSummary'),+ newWorldSummary,+ )+where++import Amazonka.RobOMaker.BatchDeleteWorlds+import Amazonka.RobOMaker.BatchDescribeSimulationJob+import Amazonka.RobOMaker.CancelSimulationJob+import Amazonka.RobOMaker.CancelSimulationJobBatch+import Amazonka.RobOMaker.CancelWorldExportJob+import Amazonka.RobOMaker.CancelWorldGenerationJob+import Amazonka.RobOMaker.CreateRobotApplication+import Amazonka.RobOMaker.CreateRobotApplicationVersion+import Amazonka.RobOMaker.CreateSimulationApplication+import Amazonka.RobOMaker.CreateSimulationApplicationVersion+import Amazonka.RobOMaker.CreateSimulationJob+import Amazonka.RobOMaker.CreateWorldExportJob+import Amazonka.RobOMaker.CreateWorldGenerationJob+import Amazonka.RobOMaker.CreateWorldTemplate+import Amazonka.RobOMaker.DeleteRobotApplication+import Amazonka.RobOMaker.DeleteSimulationApplication+import Amazonka.RobOMaker.DeleteWorldTemplate+import Amazonka.RobOMaker.DescribeRobotApplication+import Amazonka.RobOMaker.DescribeSimulationApplication+import Amazonka.RobOMaker.DescribeSimulationJob+import Amazonka.RobOMaker.DescribeSimulationJobBatch+import Amazonka.RobOMaker.DescribeWorld+import Amazonka.RobOMaker.DescribeWorldExportJob+import Amazonka.RobOMaker.DescribeWorldGenerationJob+import Amazonka.RobOMaker.DescribeWorldTemplate+import Amazonka.RobOMaker.GetWorldTemplateBody+import Amazonka.RobOMaker.Lens+import Amazonka.RobOMaker.ListRobotApplications+import Amazonka.RobOMaker.ListSimulationApplications+import Amazonka.RobOMaker.ListSimulationJobBatches+import Amazonka.RobOMaker.ListSimulationJobs+import Amazonka.RobOMaker.ListTagsForResource+import Amazonka.RobOMaker.ListWorldExportJobs+import Amazonka.RobOMaker.ListWorldGenerationJobs+import Amazonka.RobOMaker.ListWorldTemplates+import Amazonka.RobOMaker.ListWorlds+import Amazonka.RobOMaker.RestartSimulationJob+import Amazonka.RobOMaker.StartSimulationJobBatch+import Amazonka.RobOMaker.TagResource+import Amazonka.RobOMaker.Types+import Amazonka.RobOMaker.UntagResource+import Amazonka.RobOMaker.UpdateRobotApplication+import Amazonka.RobOMaker.UpdateSimulationApplication+import Amazonka.RobOMaker.UpdateWorldTemplate+import Amazonka.RobOMaker.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 'RobOMaker'.++-- $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/RobOMaker/BatchDeleteWorlds.hs view
@@ -0,0 +1,173 @@+{-# 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.RobOMaker.BatchDeleteWorlds+-- 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 one or more worlds in a batch operation.+module Amazonka.RobOMaker.BatchDeleteWorlds+ ( -- * Creating a Request+ BatchDeleteWorlds (..),+ newBatchDeleteWorlds,++ -- * Request Lenses+ batchDeleteWorlds_worlds,++ -- * Destructuring the Response+ BatchDeleteWorldsResponse (..),+ newBatchDeleteWorldsResponse,++ -- * Response Lenses+ batchDeleteWorldsResponse_unprocessedWorlds,+ batchDeleteWorldsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.RobOMaker.Types++-- | /See:/ 'newBatchDeleteWorlds' smart constructor.+data BatchDeleteWorlds = BatchDeleteWorlds'+ { -- | A list of Amazon Resource Names (arns) that correspond to worlds to+ -- delete.+ worlds :: Prelude.NonEmpty Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'BatchDeleteWorlds' 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:+--+-- 'worlds', 'batchDeleteWorlds_worlds' - A list of Amazon Resource Names (arns) that correspond to worlds to+-- delete.+newBatchDeleteWorlds ::+ -- | 'worlds'+ Prelude.NonEmpty Prelude.Text ->+ BatchDeleteWorlds+newBatchDeleteWorlds pWorlds_ =+ BatchDeleteWorlds'+ { worlds =+ Lens.coerced Lens.# pWorlds_+ }++-- | A list of Amazon Resource Names (arns) that correspond to worlds to+-- delete.+batchDeleteWorlds_worlds :: Lens.Lens' BatchDeleteWorlds (Prelude.NonEmpty Prelude.Text)+batchDeleteWorlds_worlds = Lens.lens (\BatchDeleteWorlds' {worlds} -> worlds) (\s@BatchDeleteWorlds' {} a -> s {worlds = a} :: BatchDeleteWorlds) Prelude.. Lens.coerced++instance Core.AWSRequest BatchDeleteWorlds where+ type+ AWSResponse BatchDeleteWorlds =+ BatchDeleteWorldsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ BatchDeleteWorldsResponse'+ Prelude.<$> (x Data..?> "unprocessedWorlds")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable BatchDeleteWorlds where+ hashWithSalt _salt BatchDeleteWorlds' {..} =+ _salt `Prelude.hashWithSalt` worlds++instance Prelude.NFData BatchDeleteWorlds where+ rnf BatchDeleteWorlds' {..} = Prelude.rnf worlds++instance Data.ToHeaders BatchDeleteWorlds where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON BatchDeleteWorlds where+ toJSON BatchDeleteWorlds' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("worlds" Data..= worlds)]+ )++instance Data.ToPath BatchDeleteWorlds where+ toPath = Prelude.const "/batchDeleteWorlds"++instance Data.ToQuery BatchDeleteWorlds where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newBatchDeleteWorldsResponse' smart constructor.+data BatchDeleteWorldsResponse = BatchDeleteWorldsResponse'+ { -- | A list of unprocessed worlds associated with the call. These worlds were+ -- not deleted.+ unprocessedWorlds :: Prelude.Maybe (Prelude.NonEmpty Prelude.Text),+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'BatchDeleteWorldsResponse' 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:+--+-- 'unprocessedWorlds', 'batchDeleteWorldsResponse_unprocessedWorlds' - A list of unprocessed worlds associated with the call. These worlds were+-- not deleted.+--+-- 'httpStatus', 'batchDeleteWorldsResponse_httpStatus' - The response's http status code.+newBatchDeleteWorldsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ BatchDeleteWorldsResponse+newBatchDeleteWorldsResponse pHttpStatus_ =+ BatchDeleteWorldsResponse'+ { unprocessedWorlds =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A list of unprocessed worlds associated with the call. These worlds were+-- not deleted.+batchDeleteWorldsResponse_unprocessedWorlds :: Lens.Lens' BatchDeleteWorldsResponse (Prelude.Maybe (Prelude.NonEmpty Prelude.Text))+batchDeleteWorldsResponse_unprocessedWorlds = Lens.lens (\BatchDeleteWorldsResponse' {unprocessedWorlds} -> unprocessedWorlds) (\s@BatchDeleteWorldsResponse' {} a -> s {unprocessedWorlds = a} :: BatchDeleteWorldsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+batchDeleteWorldsResponse_httpStatus :: Lens.Lens' BatchDeleteWorldsResponse Prelude.Int+batchDeleteWorldsResponse_httpStatus = Lens.lens (\BatchDeleteWorldsResponse' {httpStatus} -> httpStatus) (\s@BatchDeleteWorldsResponse' {} a -> s {httpStatus = a} :: BatchDeleteWorldsResponse)++instance Prelude.NFData BatchDeleteWorldsResponse where+ rnf BatchDeleteWorldsResponse' {..} =+ Prelude.rnf unprocessedWorlds+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/RobOMaker/BatchDescribeSimulationJob.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.RobOMaker.BatchDescribeSimulationJob+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Describes one or more simulation jobs.+module Amazonka.RobOMaker.BatchDescribeSimulationJob+ ( -- * Creating a Request+ BatchDescribeSimulationJob (..),+ newBatchDescribeSimulationJob,++ -- * Request Lenses+ batchDescribeSimulationJob_jobs,++ -- * Destructuring the Response+ BatchDescribeSimulationJobResponse (..),+ newBatchDescribeSimulationJobResponse,++ -- * Response Lenses+ batchDescribeSimulationJobResponse_jobs,+ batchDescribeSimulationJobResponse_unprocessedJobs,+ batchDescribeSimulationJobResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.RobOMaker.Types++-- | /See:/ 'newBatchDescribeSimulationJob' smart constructor.+data BatchDescribeSimulationJob = BatchDescribeSimulationJob'+ { -- | A list of Amazon Resource Names (ARNs) of simulation jobs to describe.+ jobs :: Prelude.NonEmpty Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'BatchDescribeSimulationJob' 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:+--+-- 'jobs', 'batchDescribeSimulationJob_jobs' - A list of Amazon Resource Names (ARNs) of simulation jobs to describe.+newBatchDescribeSimulationJob ::+ -- | 'jobs'+ Prelude.NonEmpty Prelude.Text ->+ BatchDescribeSimulationJob+newBatchDescribeSimulationJob pJobs_ =+ BatchDescribeSimulationJob'+ { jobs =+ Lens.coerced Lens.# pJobs_+ }++-- | A list of Amazon Resource Names (ARNs) of simulation jobs to describe.+batchDescribeSimulationJob_jobs :: Lens.Lens' BatchDescribeSimulationJob (Prelude.NonEmpty Prelude.Text)+batchDescribeSimulationJob_jobs = Lens.lens (\BatchDescribeSimulationJob' {jobs} -> jobs) (\s@BatchDescribeSimulationJob' {} a -> s {jobs = a} :: BatchDescribeSimulationJob) Prelude.. Lens.coerced++instance Core.AWSRequest BatchDescribeSimulationJob where+ type+ AWSResponse BatchDescribeSimulationJob =+ BatchDescribeSimulationJobResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ BatchDescribeSimulationJobResponse'+ Prelude.<$> (x Data..?> "jobs" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "unprocessedJobs")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable BatchDescribeSimulationJob where+ hashWithSalt _salt BatchDescribeSimulationJob' {..} =+ _salt `Prelude.hashWithSalt` jobs++instance Prelude.NFData BatchDescribeSimulationJob where+ rnf BatchDescribeSimulationJob' {..} =+ Prelude.rnf jobs++instance Data.ToHeaders BatchDescribeSimulationJob where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON BatchDescribeSimulationJob where+ toJSON BatchDescribeSimulationJob' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("jobs" Data..= jobs)]+ )++instance Data.ToPath BatchDescribeSimulationJob where+ toPath = Prelude.const "/batchDescribeSimulationJob"++instance Data.ToQuery BatchDescribeSimulationJob where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newBatchDescribeSimulationJobResponse' smart constructor.+data BatchDescribeSimulationJobResponse = BatchDescribeSimulationJobResponse'+ { -- | A list of simulation jobs.+ jobs :: Prelude.Maybe [SimulationJob],+ -- | A list of unprocessed simulation job Amazon Resource Names (ARNs).+ unprocessedJobs :: Prelude.Maybe (Prelude.NonEmpty Prelude.Text),+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'BatchDescribeSimulationJobResponse' 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:+--+-- 'jobs', 'batchDescribeSimulationJobResponse_jobs' - A list of simulation jobs.+--+-- 'unprocessedJobs', 'batchDescribeSimulationJobResponse_unprocessedJobs' - A list of unprocessed simulation job Amazon Resource Names (ARNs).+--+-- 'httpStatus', 'batchDescribeSimulationJobResponse_httpStatus' - The response's http status code.+newBatchDescribeSimulationJobResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ BatchDescribeSimulationJobResponse+newBatchDescribeSimulationJobResponse pHttpStatus_ =+ BatchDescribeSimulationJobResponse'+ { jobs =+ Prelude.Nothing,+ unprocessedJobs = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A list of simulation jobs.+batchDescribeSimulationJobResponse_jobs :: Lens.Lens' BatchDescribeSimulationJobResponse (Prelude.Maybe [SimulationJob])+batchDescribeSimulationJobResponse_jobs = Lens.lens (\BatchDescribeSimulationJobResponse' {jobs} -> jobs) (\s@BatchDescribeSimulationJobResponse' {} a -> s {jobs = a} :: BatchDescribeSimulationJobResponse) Prelude.. Lens.mapping Lens.coerced++-- | A list of unprocessed simulation job Amazon Resource Names (ARNs).+batchDescribeSimulationJobResponse_unprocessedJobs :: Lens.Lens' BatchDescribeSimulationJobResponse (Prelude.Maybe (Prelude.NonEmpty Prelude.Text))+batchDescribeSimulationJobResponse_unprocessedJobs = Lens.lens (\BatchDescribeSimulationJobResponse' {unprocessedJobs} -> unprocessedJobs) (\s@BatchDescribeSimulationJobResponse' {} a -> s {unprocessedJobs = a} :: BatchDescribeSimulationJobResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+batchDescribeSimulationJobResponse_httpStatus :: Lens.Lens' BatchDescribeSimulationJobResponse Prelude.Int+batchDescribeSimulationJobResponse_httpStatus = Lens.lens (\BatchDescribeSimulationJobResponse' {httpStatus} -> httpStatus) (\s@BatchDescribeSimulationJobResponse' {} a -> s {httpStatus = a} :: BatchDescribeSimulationJobResponse)++instance+ Prelude.NFData+ BatchDescribeSimulationJobResponse+ where+ rnf BatchDescribeSimulationJobResponse' {..} =+ Prelude.rnf jobs+ `Prelude.seq` Prelude.rnf unprocessedJobs+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/RobOMaker/CancelSimulationJob.hs view
@@ -0,0 +1,152 @@+{-# 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.RobOMaker.CancelSimulationJob+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Cancels the specified simulation job.+module Amazonka.RobOMaker.CancelSimulationJob+ ( -- * Creating a Request+ CancelSimulationJob (..),+ newCancelSimulationJob,++ -- * Request Lenses+ cancelSimulationJob_job,++ -- * Destructuring the Response+ CancelSimulationJobResponse (..),+ newCancelSimulationJobResponse,++ -- * Response Lenses+ cancelSimulationJobResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.RobOMaker.Types++-- | /See:/ 'newCancelSimulationJob' smart constructor.+data CancelSimulationJob = CancelSimulationJob'+ { -- | The simulation job ARN to cancel.+ job :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CancelSimulationJob' 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:+--+-- 'job', 'cancelSimulationJob_job' - The simulation job ARN to cancel.+newCancelSimulationJob ::+ -- | 'job'+ Prelude.Text ->+ CancelSimulationJob+newCancelSimulationJob pJob_ =+ CancelSimulationJob' {job = pJob_}++-- | The simulation job ARN to cancel.+cancelSimulationJob_job :: Lens.Lens' CancelSimulationJob Prelude.Text+cancelSimulationJob_job = Lens.lens (\CancelSimulationJob' {job} -> job) (\s@CancelSimulationJob' {} a -> s {job = a} :: CancelSimulationJob)++instance Core.AWSRequest CancelSimulationJob where+ type+ AWSResponse CancelSimulationJob =+ CancelSimulationJobResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ CancelSimulationJobResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CancelSimulationJob where+ hashWithSalt _salt CancelSimulationJob' {..} =+ _salt `Prelude.hashWithSalt` job++instance Prelude.NFData CancelSimulationJob where+ rnf CancelSimulationJob' {..} = Prelude.rnf job++instance Data.ToHeaders CancelSimulationJob where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CancelSimulationJob where+ toJSON CancelSimulationJob' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("job" Data..= job)]+ )++instance Data.ToPath CancelSimulationJob where+ toPath = Prelude.const "/cancelSimulationJob"++instance Data.ToQuery CancelSimulationJob where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCancelSimulationJobResponse' smart constructor.+data CancelSimulationJobResponse = CancelSimulationJobResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CancelSimulationJobResponse' 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', 'cancelSimulationJobResponse_httpStatus' - The response's http status code.+newCancelSimulationJobResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CancelSimulationJobResponse+newCancelSimulationJobResponse pHttpStatus_ =+ CancelSimulationJobResponse'+ { httpStatus =+ pHttpStatus_+ }++-- | The response's http status code.+cancelSimulationJobResponse_httpStatus :: Lens.Lens' CancelSimulationJobResponse Prelude.Int+cancelSimulationJobResponse_httpStatus = Lens.lens (\CancelSimulationJobResponse' {httpStatus} -> httpStatus) (\s@CancelSimulationJobResponse' {} a -> s {httpStatus = a} :: CancelSimulationJobResponse)++instance Prelude.NFData CancelSimulationJobResponse where+ rnf CancelSimulationJobResponse' {..} =+ Prelude.rnf httpStatus
+ gen/Amazonka/RobOMaker/CancelSimulationJobBatch.hs view
@@ -0,0 +1,157 @@+{-# 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.RobOMaker.CancelSimulationJobBatch+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Cancels a simulation job batch. When you cancel a simulation job batch,+-- you are also cancelling all of the active simulation jobs created as+-- part of the batch.+module Amazonka.RobOMaker.CancelSimulationJobBatch+ ( -- * Creating a Request+ CancelSimulationJobBatch (..),+ newCancelSimulationJobBatch,++ -- * Request Lenses+ cancelSimulationJobBatch_batch,++ -- * Destructuring the Response+ CancelSimulationJobBatchResponse (..),+ newCancelSimulationJobBatchResponse,++ -- * Response Lenses+ cancelSimulationJobBatchResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.RobOMaker.Types++-- | /See:/ 'newCancelSimulationJobBatch' smart constructor.+data CancelSimulationJobBatch = CancelSimulationJobBatch'+ { -- | The id of the batch to cancel.+ batch :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CancelSimulationJobBatch' 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:+--+-- 'batch', 'cancelSimulationJobBatch_batch' - The id of the batch to cancel.+newCancelSimulationJobBatch ::+ -- | 'batch'+ Prelude.Text ->+ CancelSimulationJobBatch+newCancelSimulationJobBatch pBatch_ =+ CancelSimulationJobBatch' {batch = pBatch_}++-- | The id of the batch to cancel.+cancelSimulationJobBatch_batch :: Lens.Lens' CancelSimulationJobBatch Prelude.Text+cancelSimulationJobBatch_batch = Lens.lens (\CancelSimulationJobBatch' {batch} -> batch) (\s@CancelSimulationJobBatch' {} a -> s {batch = a} :: CancelSimulationJobBatch)++instance Core.AWSRequest CancelSimulationJobBatch where+ type+ AWSResponse CancelSimulationJobBatch =+ CancelSimulationJobBatchResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ CancelSimulationJobBatchResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CancelSimulationJobBatch where+ hashWithSalt _salt CancelSimulationJobBatch' {..} =+ _salt `Prelude.hashWithSalt` batch++instance Prelude.NFData CancelSimulationJobBatch where+ rnf CancelSimulationJobBatch' {..} = Prelude.rnf batch++instance Data.ToHeaders CancelSimulationJobBatch where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CancelSimulationJobBatch where+ toJSON CancelSimulationJobBatch' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("batch" Data..= batch)]+ )++instance Data.ToPath CancelSimulationJobBatch where+ toPath = Prelude.const "/cancelSimulationJobBatch"++instance Data.ToQuery CancelSimulationJobBatch where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCancelSimulationJobBatchResponse' smart constructor.+data CancelSimulationJobBatchResponse = CancelSimulationJobBatchResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CancelSimulationJobBatchResponse' 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', 'cancelSimulationJobBatchResponse_httpStatus' - The response's http status code.+newCancelSimulationJobBatchResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CancelSimulationJobBatchResponse+newCancelSimulationJobBatchResponse pHttpStatus_ =+ CancelSimulationJobBatchResponse'+ { httpStatus =+ pHttpStatus_+ }++-- | The response's http status code.+cancelSimulationJobBatchResponse_httpStatus :: Lens.Lens' CancelSimulationJobBatchResponse Prelude.Int+cancelSimulationJobBatchResponse_httpStatus = Lens.lens (\CancelSimulationJobBatchResponse' {httpStatus} -> httpStatus) (\s@CancelSimulationJobBatchResponse' {} a -> s {httpStatus = a} :: CancelSimulationJobBatchResponse)++instance+ Prelude.NFData+ CancelSimulationJobBatchResponse+ where+ rnf CancelSimulationJobBatchResponse' {..} =+ Prelude.rnf httpStatus
+ gen/Amazonka/RobOMaker/CancelWorldExportJob.hs view
@@ -0,0 +1,152 @@+{-# 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.RobOMaker.CancelWorldExportJob+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Cancels the specified export job.+module Amazonka.RobOMaker.CancelWorldExportJob+ ( -- * Creating a Request+ CancelWorldExportJob (..),+ newCancelWorldExportJob,++ -- * Request Lenses+ cancelWorldExportJob_job,++ -- * Destructuring the Response+ CancelWorldExportJobResponse (..),+ newCancelWorldExportJobResponse,++ -- * Response Lenses+ cancelWorldExportJobResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.RobOMaker.Types++-- | /See:/ 'newCancelWorldExportJob' smart constructor.+data CancelWorldExportJob = CancelWorldExportJob'+ { -- | The Amazon Resource Name (arn) of the world export job to cancel.+ job :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CancelWorldExportJob' 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:+--+-- 'job', 'cancelWorldExportJob_job' - The Amazon Resource Name (arn) of the world export job to cancel.+newCancelWorldExportJob ::+ -- | 'job'+ Prelude.Text ->+ CancelWorldExportJob+newCancelWorldExportJob pJob_ =+ CancelWorldExportJob' {job = pJob_}++-- | The Amazon Resource Name (arn) of the world export job to cancel.+cancelWorldExportJob_job :: Lens.Lens' CancelWorldExportJob Prelude.Text+cancelWorldExportJob_job = Lens.lens (\CancelWorldExportJob' {job} -> job) (\s@CancelWorldExportJob' {} a -> s {job = a} :: CancelWorldExportJob)++instance Core.AWSRequest CancelWorldExportJob where+ type+ AWSResponse CancelWorldExportJob =+ CancelWorldExportJobResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ CancelWorldExportJobResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CancelWorldExportJob where+ hashWithSalt _salt CancelWorldExportJob' {..} =+ _salt `Prelude.hashWithSalt` job++instance Prelude.NFData CancelWorldExportJob where+ rnf CancelWorldExportJob' {..} = Prelude.rnf job++instance Data.ToHeaders CancelWorldExportJob where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CancelWorldExportJob where+ toJSON CancelWorldExportJob' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("job" Data..= job)]+ )++instance Data.ToPath CancelWorldExportJob where+ toPath = Prelude.const "/cancelWorldExportJob"++instance Data.ToQuery CancelWorldExportJob where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCancelWorldExportJobResponse' smart constructor.+data CancelWorldExportJobResponse = CancelWorldExportJobResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CancelWorldExportJobResponse' 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', 'cancelWorldExportJobResponse_httpStatus' - The response's http status code.+newCancelWorldExportJobResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CancelWorldExportJobResponse+newCancelWorldExportJobResponse pHttpStatus_ =+ CancelWorldExportJobResponse'+ { httpStatus =+ pHttpStatus_+ }++-- | The response's http status code.+cancelWorldExportJobResponse_httpStatus :: Lens.Lens' CancelWorldExportJobResponse Prelude.Int+cancelWorldExportJobResponse_httpStatus = Lens.lens (\CancelWorldExportJobResponse' {httpStatus} -> httpStatus) (\s@CancelWorldExportJobResponse' {} a -> s {httpStatus = a} :: CancelWorldExportJobResponse)++instance Prelude.NFData CancelWorldExportJobResponse where+ rnf CancelWorldExportJobResponse' {..} =+ Prelude.rnf httpStatus
+ gen/Amazonka/RobOMaker/CancelWorldGenerationJob.hs view
@@ -0,0 +1,155 @@+{-# 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.RobOMaker.CancelWorldGenerationJob+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Cancels the specified world generator job.+module Amazonka.RobOMaker.CancelWorldGenerationJob+ ( -- * Creating a Request+ CancelWorldGenerationJob (..),+ newCancelWorldGenerationJob,++ -- * Request Lenses+ cancelWorldGenerationJob_job,++ -- * Destructuring the Response+ CancelWorldGenerationJobResponse (..),+ newCancelWorldGenerationJobResponse,++ -- * Response Lenses+ cancelWorldGenerationJobResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.RobOMaker.Types++-- | /See:/ 'newCancelWorldGenerationJob' smart constructor.+data CancelWorldGenerationJob = CancelWorldGenerationJob'+ { -- | The Amazon Resource Name (arn) of the world generator job to cancel.+ job :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CancelWorldGenerationJob' 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:+--+-- 'job', 'cancelWorldGenerationJob_job' - The Amazon Resource Name (arn) of the world generator job to cancel.+newCancelWorldGenerationJob ::+ -- | 'job'+ Prelude.Text ->+ CancelWorldGenerationJob+newCancelWorldGenerationJob pJob_ =+ CancelWorldGenerationJob' {job = pJob_}++-- | The Amazon Resource Name (arn) of the world generator job to cancel.+cancelWorldGenerationJob_job :: Lens.Lens' CancelWorldGenerationJob Prelude.Text+cancelWorldGenerationJob_job = Lens.lens (\CancelWorldGenerationJob' {job} -> job) (\s@CancelWorldGenerationJob' {} a -> s {job = a} :: CancelWorldGenerationJob)++instance Core.AWSRequest CancelWorldGenerationJob where+ type+ AWSResponse CancelWorldGenerationJob =+ CancelWorldGenerationJobResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ CancelWorldGenerationJobResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CancelWorldGenerationJob where+ hashWithSalt _salt CancelWorldGenerationJob' {..} =+ _salt `Prelude.hashWithSalt` job++instance Prelude.NFData CancelWorldGenerationJob where+ rnf CancelWorldGenerationJob' {..} = Prelude.rnf job++instance Data.ToHeaders CancelWorldGenerationJob where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CancelWorldGenerationJob where+ toJSON CancelWorldGenerationJob' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("job" Data..= job)]+ )++instance Data.ToPath CancelWorldGenerationJob where+ toPath = Prelude.const "/cancelWorldGenerationJob"++instance Data.ToQuery CancelWorldGenerationJob where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCancelWorldGenerationJobResponse' smart constructor.+data CancelWorldGenerationJobResponse = CancelWorldGenerationJobResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CancelWorldGenerationJobResponse' 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', 'cancelWorldGenerationJobResponse_httpStatus' - The response's http status code.+newCancelWorldGenerationJobResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CancelWorldGenerationJobResponse+newCancelWorldGenerationJobResponse pHttpStatus_ =+ CancelWorldGenerationJobResponse'+ { httpStatus =+ pHttpStatus_+ }++-- | The response's http status code.+cancelWorldGenerationJobResponse_httpStatus :: Lens.Lens' CancelWorldGenerationJobResponse Prelude.Int+cancelWorldGenerationJobResponse_httpStatus = Lens.lens (\CancelWorldGenerationJobResponse' {httpStatus} -> httpStatus) (\s@CancelWorldGenerationJobResponse' {} a -> s {httpStatus = a} :: CancelWorldGenerationJobResponse)++instance+ Prelude.NFData+ CancelWorldGenerationJobResponse+ where+ rnf CancelWorldGenerationJobResponse' {..} =+ Prelude.rnf httpStatus
+ gen/Amazonka/RobOMaker/CreateRobotApplication.hs view
@@ -0,0 +1,342 @@+{-# 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.RobOMaker.CreateRobotApplication+-- 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 a robot application.+module Amazonka.RobOMaker.CreateRobotApplication+ ( -- * Creating a Request+ CreateRobotApplication (..),+ newCreateRobotApplication,++ -- * Request Lenses+ createRobotApplication_environment,+ createRobotApplication_sources,+ createRobotApplication_tags,+ createRobotApplication_name,+ createRobotApplication_robotSoftwareSuite,++ -- * Destructuring the Response+ CreateRobotApplicationResponse (..),+ newCreateRobotApplicationResponse,++ -- * Response Lenses+ createRobotApplicationResponse_arn,+ createRobotApplicationResponse_environment,+ createRobotApplicationResponse_lastUpdatedAt,+ createRobotApplicationResponse_name,+ createRobotApplicationResponse_revisionId,+ createRobotApplicationResponse_robotSoftwareSuite,+ createRobotApplicationResponse_sources,+ createRobotApplicationResponse_tags,+ createRobotApplicationResponse_version,+ createRobotApplicationResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.RobOMaker.Types++-- | /See:/ 'newCreateRobotApplication' smart constructor.+data CreateRobotApplication = CreateRobotApplication'+ { -- | The object that contains that URI of the Docker image that you use for+ -- your robot application.+ environment :: Prelude.Maybe Environment,+ -- | The sources of the robot application.+ sources :: Prelude.Maybe [SourceConfig],+ -- | A map that contains tag keys and tag values that are attached to the+ -- robot application.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The name of the robot application.+ name :: Prelude.Text,+ -- | The robot software suite (ROS distribuition) used by the robot+ -- application.+ robotSoftwareSuite :: RobotSoftwareSuite+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateRobotApplication' 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:+--+-- 'environment', 'createRobotApplication_environment' - The object that contains that URI of the Docker image that you use for+-- your robot application.+--+-- 'sources', 'createRobotApplication_sources' - The sources of the robot application.+--+-- 'tags', 'createRobotApplication_tags' - A map that contains tag keys and tag values that are attached to the+-- robot application.+--+-- 'name', 'createRobotApplication_name' - The name of the robot application.+--+-- 'robotSoftwareSuite', 'createRobotApplication_robotSoftwareSuite' - The robot software suite (ROS distribuition) used by the robot+-- application.+newCreateRobotApplication ::+ -- | 'name'+ Prelude.Text ->+ -- | 'robotSoftwareSuite'+ RobotSoftwareSuite ->+ CreateRobotApplication+newCreateRobotApplication pName_ pRobotSoftwareSuite_ =+ CreateRobotApplication'+ { environment =+ Prelude.Nothing,+ sources = Prelude.Nothing,+ tags = Prelude.Nothing,+ name = pName_,+ robotSoftwareSuite = pRobotSoftwareSuite_+ }++-- | The object that contains that URI of the Docker image that you use for+-- your robot application.+createRobotApplication_environment :: Lens.Lens' CreateRobotApplication (Prelude.Maybe Environment)+createRobotApplication_environment = Lens.lens (\CreateRobotApplication' {environment} -> environment) (\s@CreateRobotApplication' {} a -> s {environment = a} :: CreateRobotApplication)++-- | The sources of the robot application.+createRobotApplication_sources :: Lens.Lens' CreateRobotApplication (Prelude.Maybe [SourceConfig])+createRobotApplication_sources = Lens.lens (\CreateRobotApplication' {sources} -> sources) (\s@CreateRobotApplication' {} a -> s {sources = a} :: CreateRobotApplication) Prelude.. Lens.mapping Lens.coerced++-- | A map that contains tag keys and tag values that are attached to the+-- robot application.+createRobotApplication_tags :: Lens.Lens' CreateRobotApplication (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createRobotApplication_tags = Lens.lens (\CreateRobotApplication' {tags} -> tags) (\s@CreateRobotApplication' {} a -> s {tags = a} :: CreateRobotApplication) Prelude.. Lens.mapping Lens.coerced++-- | The name of the robot application.+createRobotApplication_name :: Lens.Lens' CreateRobotApplication Prelude.Text+createRobotApplication_name = Lens.lens (\CreateRobotApplication' {name} -> name) (\s@CreateRobotApplication' {} a -> s {name = a} :: CreateRobotApplication)++-- | The robot software suite (ROS distribuition) used by the robot+-- application.+createRobotApplication_robotSoftwareSuite :: Lens.Lens' CreateRobotApplication RobotSoftwareSuite+createRobotApplication_robotSoftwareSuite = Lens.lens (\CreateRobotApplication' {robotSoftwareSuite} -> robotSoftwareSuite) (\s@CreateRobotApplication' {} a -> s {robotSoftwareSuite = a} :: CreateRobotApplication)++instance Core.AWSRequest CreateRobotApplication where+ type+ AWSResponse CreateRobotApplication =+ CreateRobotApplicationResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateRobotApplicationResponse'+ Prelude.<$> (x Data..?> "arn")+ Prelude.<*> (x Data..?> "environment")+ Prelude.<*> (x Data..?> "lastUpdatedAt")+ Prelude.<*> (x Data..?> "name")+ Prelude.<*> (x Data..?> "revisionId")+ Prelude.<*> (x Data..?> "robotSoftwareSuite")+ Prelude.<*> (x Data..?> "sources" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "tags" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "version")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateRobotApplication where+ hashWithSalt _salt CreateRobotApplication' {..} =+ _salt+ `Prelude.hashWithSalt` environment+ `Prelude.hashWithSalt` sources+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` robotSoftwareSuite++instance Prelude.NFData CreateRobotApplication where+ rnf CreateRobotApplication' {..} =+ Prelude.rnf environment+ `Prelude.seq` Prelude.rnf sources+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf robotSoftwareSuite++instance Data.ToHeaders CreateRobotApplication where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateRobotApplication where+ toJSON CreateRobotApplication' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("environment" Data..=) Prelude.<$> environment,+ ("sources" Data..=) Prelude.<$> sources,+ ("tags" Data..=) Prelude.<$> tags,+ Prelude.Just ("name" Data..= name),+ Prelude.Just+ ("robotSoftwareSuite" Data..= robotSoftwareSuite)+ ]+ )++instance Data.ToPath CreateRobotApplication where+ toPath = Prelude.const "/createRobotApplication"++instance Data.ToQuery CreateRobotApplication where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateRobotApplicationResponse' smart constructor.+data CreateRobotApplicationResponse = CreateRobotApplicationResponse'+ { -- | The Amazon Resource Name (ARN) of the robot application.+ arn :: Prelude.Maybe Prelude.Text,+ -- | An object that contains the Docker image URI used to a create your robot+ -- application.+ environment :: Prelude.Maybe Environment,+ -- | The time, in milliseconds since the epoch, when the robot application+ -- was last updated.+ lastUpdatedAt :: Prelude.Maybe Data.POSIX,+ -- | The name of the robot application.+ name :: Prelude.Maybe Prelude.Text,+ -- | The revision id of the robot application.+ revisionId :: Prelude.Maybe Prelude.Text,+ -- | The robot software suite (ROS distribution) used by the robot+ -- application.+ robotSoftwareSuite :: Prelude.Maybe RobotSoftwareSuite,+ -- | The sources of the robot application.+ sources :: Prelude.Maybe [Source],+ -- | The list of all tags added to the robot application.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The version of the robot application.+ version :: 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 'CreateRobotApplicationResponse' 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', 'createRobotApplicationResponse_arn' - The Amazon Resource Name (ARN) of the robot application.+--+-- 'environment', 'createRobotApplicationResponse_environment' - An object that contains the Docker image URI used to a create your robot+-- application.+--+-- 'lastUpdatedAt', 'createRobotApplicationResponse_lastUpdatedAt' - The time, in milliseconds since the epoch, when the robot application+-- was last updated.+--+-- 'name', 'createRobotApplicationResponse_name' - The name of the robot application.+--+-- 'revisionId', 'createRobotApplicationResponse_revisionId' - The revision id of the robot application.+--+-- 'robotSoftwareSuite', 'createRobotApplicationResponse_robotSoftwareSuite' - The robot software suite (ROS distribution) used by the robot+-- application.+--+-- 'sources', 'createRobotApplicationResponse_sources' - The sources of the robot application.+--+-- 'tags', 'createRobotApplicationResponse_tags' - The list of all tags added to the robot application.+--+-- 'version', 'createRobotApplicationResponse_version' - The version of the robot application.+--+-- 'httpStatus', 'createRobotApplicationResponse_httpStatus' - The response's http status code.+newCreateRobotApplicationResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateRobotApplicationResponse+newCreateRobotApplicationResponse pHttpStatus_ =+ CreateRobotApplicationResponse'+ { arn =+ Prelude.Nothing,+ environment = Prelude.Nothing,+ lastUpdatedAt = Prelude.Nothing,+ name = Prelude.Nothing,+ revisionId = Prelude.Nothing,+ robotSoftwareSuite = Prelude.Nothing,+ sources = Prelude.Nothing,+ tags = Prelude.Nothing,+ version = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The Amazon Resource Name (ARN) of the robot application.+createRobotApplicationResponse_arn :: Lens.Lens' CreateRobotApplicationResponse (Prelude.Maybe Prelude.Text)+createRobotApplicationResponse_arn = Lens.lens (\CreateRobotApplicationResponse' {arn} -> arn) (\s@CreateRobotApplicationResponse' {} a -> s {arn = a} :: CreateRobotApplicationResponse)++-- | An object that contains the Docker image URI used to a create your robot+-- application.+createRobotApplicationResponse_environment :: Lens.Lens' CreateRobotApplicationResponse (Prelude.Maybe Environment)+createRobotApplicationResponse_environment = Lens.lens (\CreateRobotApplicationResponse' {environment} -> environment) (\s@CreateRobotApplicationResponse' {} a -> s {environment = a} :: CreateRobotApplicationResponse)++-- | The time, in milliseconds since the epoch, when the robot application+-- was last updated.+createRobotApplicationResponse_lastUpdatedAt :: Lens.Lens' CreateRobotApplicationResponse (Prelude.Maybe Prelude.UTCTime)+createRobotApplicationResponse_lastUpdatedAt = Lens.lens (\CreateRobotApplicationResponse' {lastUpdatedAt} -> lastUpdatedAt) (\s@CreateRobotApplicationResponse' {} a -> s {lastUpdatedAt = a} :: CreateRobotApplicationResponse) Prelude.. Lens.mapping Data._Time++-- | The name of the robot application.+createRobotApplicationResponse_name :: Lens.Lens' CreateRobotApplicationResponse (Prelude.Maybe Prelude.Text)+createRobotApplicationResponse_name = Lens.lens (\CreateRobotApplicationResponse' {name} -> name) (\s@CreateRobotApplicationResponse' {} a -> s {name = a} :: CreateRobotApplicationResponse)++-- | The revision id of the robot application.+createRobotApplicationResponse_revisionId :: Lens.Lens' CreateRobotApplicationResponse (Prelude.Maybe Prelude.Text)+createRobotApplicationResponse_revisionId = Lens.lens (\CreateRobotApplicationResponse' {revisionId} -> revisionId) (\s@CreateRobotApplicationResponse' {} a -> s {revisionId = a} :: CreateRobotApplicationResponse)++-- | The robot software suite (ROS distribution) used by the robot+-- application.+createRobotApplicationResponse_robotSoftwareSuite :: Lens.Lens' CreateRobotApplicationResponse (Prelude.Maybe RobotSoftwareSuite)+createRobotApplicationResponse_robotSoftwareSuite = Lens.lens (\CreateRobotApplicationResponse' {robotSoftwareSuite} -> robotSoftwareSuite) (\s@CreateRobotApplicationResponse' {} a -> s {robotSoftwareSuite = a} :: CreateRobotApplicationResponse)++-- | The sources of the robot application.+createRobotApplicationResponse_sources :: Lens.Lens' CreateRobotApplicationResponse (Prelude.Maybe [Source])+createRobotApplicationResponse_sources = Lens.lens (\CreateRobotApplicationResponse' {sources} -> sources) (\s@CreateRobotApplicationResponse' {} a -> s {sources = a} :: CreateRobotApplicationResponse) Prelude.. Lens.mapping Lens.coerced++-- | The list of all tags added to the robot application.+createRobotApplicationResponse_tags :: Lens.Lens' CreateRobotApplicationResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createRobotApplicationResponse_tags = Lens.lens (\CreateRobotApplicationResponse' {tags} -> tags) (\s@CreateRobotApplicationResponse' {} a -> s {tags = a} :: CreateRobotApplicationResponse) Prelude.. Lens.mapping Lens.coerced++-- | The version of the robot application.+createRobotApplicationResponse_version :: Lens.Lens' CreateRobotApplicationResponse (Prelude.Maybe Prelude.Text)+createRobotApplicationResponse_version = Lens.lens (\CreateRobotApplicationResponse' {version} -> version) (\s@CreateRobotApplicationResponse' {} a -> s {version = a} :: CreateRobotApplicationResponse)++-- | The response's http status code.+createRobotApplicationResponse_httpStatus :: Lens.Lens' CreateRobotApplicationResponse Prelude.Int+createRobotApplicationResponse_httpStatus = Lens.lens (\CreateRobotApplicationResponse' {httpStatus} -> httpStatus) (\s@CreateRobotApplicationResponse' {} a -> s {httpStatus = a} :: CreateRobotApplicationResponse)++instance+ Prelude.NFData+ CreateRobotApplicationResponse+ where+ rnf CreateRobotApplicationResponse' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf environment+ `Prelude.seq` Prelude.rnf lastUpdatedAt+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf revisionId+ `Prelude.seq` Prelude.rnf robotSoftwareSuite+ `Prelude.seq` Prelude.rnf sources+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf version+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/RobOMaker/CreateRobotApplicationVersion.hs view
@@ -0,0 +1,325 @@+{-# 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.RobOMaker.CreateRobotApplicationVersion+-- 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 a version of a robot application.+module Amazonka.RobOMaker.CreateRobotApplicationVersion+ ( -- * Creating a Request+ CreateRobotApplicationVersion (..),+ newCreateRobotApplicationVersion,++ -- * Request Lenses+ createRobotApplicationVersion_currentRevisionId,+ createRobotApplicationVersion_imageDigest,+ createRobotApplicationVersion_s3Etags,+ createRobotApplicationVersion_application,++ -- * Destructuring the Response+ CreateRobotApplicationVersionResponse (..),+ newCreateRobotApplicationVersionResponse,++ -- * Response Lenses+ createRobotApplicationVersionResponse_arn,+ createRobotApplicationVersionResponse_environment,+ createRobotApplicationVersionResponse_lastUpdatedAt,+ createRobotApplicationVersionResponse_name,+ createRobotApplicationVersionResponse_revisionId,+ createRobotApplicationVersionResponse_robotSoftwareSuite,+ createRobotApplicationVersionResponse_sources,+ createRobotApplicationVersionResponse_version,+ createRobotApplicationVersionResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.RobOMaker.Types++-- | /See:/ 'newCreateRobotApplicationVersion' smart constructor.+data CreateRobotApplicationVersion = CreateRobotApplicationVersion'+ { -- | The current revision id for the robot application. If you provide a+ -- value and it matches the latest revision ID, a new version will be+ -- created.+ currentRevisionId :: Prelude.Maybe Prelude.Text,+ -- | A SHA256 identifier for the Docker image that you use for your robot+ -- application.+ imageDigest :: Prelude.Maybe Prelude.Text,+ -- | The Amazon S3 identifier for the zip file bundle that you use for your+ -- robot application.+ s3Etags :: Prelude.Maybe [Prelude.Text],+ -- | The application information for the robot application.+ application :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateRobotApplicationVersion' 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:+--+-- 'currentRevisionId', 'createRobotApplicationVersion_currentRevisionId' - The current revision id for the robot application. If you provide a+-- value and it matches the latest revision ID, a new version will be+-- created.+--+-- 'imageDigest', 'createRobotApplicationVersion_imageDigest' - A SHA256 identifier for the Docker image that you use for your robot+-- application.+--+-- 's3Etags', 'createRobotApplicationVersion_s3Etags' - The Amazon S3 identifier for the zip file bundle that you use for your+-- robot application.+--+-- 'application', 'createRobotApplicationVersion_application' - The application information for the robot application.+newCreateRobotApplicationVersion ::+ -- | 'application'+ Prelude.Text ->+ CreateRobotApplicationVersion+newCreateRobotApplicationVersion pApplication_ =+ CreateRobotApplicationVersion'+ { currentRevisionId =+ Prelude.Nothing,+ imageDigest = Prelude.Nothing,+ s3Etags = Prelude.Nothing,+ application = pApplication_+ }++-- | The current revision id for the robot application. If you provide a+-- value and it matches the latest revision ID, a new version will be+-- created.+createRobotApplicationVersion_currentRevisionId :: Lens.Lens' CreateRobotApplicationVersion (Prelude.Maybe Prelude.Text)+createRobotApplicationVersion_currentRevisionId = Lens.lens (\CreateRobotApplicationVersion' {currentRevisionId} -> currentRevisionId) (\s@CreateRobotApplicationVersion' {} a -> s {currentRevisionId = a} :: CreateRobotApplicationVersion)++-- | A SHA256 identifier for the Docker image that you use for your robot+-- application.+createRobotApplicationVersion_imageDigest :: Lens.Lens' CreateRobotApplicationVersion (Prelude.Maybe Prelude.Text)+createRobotApplicationVersion_imageDigest = Lens.lens (\CreateRobotApplicationVersion' {imageDigest} -> imageDigest) (\s@CreateRobotApplicationVersion' {} a -> s {imageDigest = a} :: CreateRobotApplicationVersion)++-- | The Amazon S3 identifier for the zip file bundle that you use for your+-- robot application.+createRobotApplicationVersion_s3Etags :: Lens.Lens' CreateRobotApplicationVersion (Prelude.Maybe [Prelude.Text])+createRobotApplicationVersion_s3Etags = Lens.lens (\CreateRobotApplicationVersion' {s3Etags} -> s3Etags) (\s@CreateRobotApplicationVersion' {} a -> s {s3Etags = a} :: CreateRobotApplicationVersion) Prelude.. Lens.mapping Lens.coerced++-- | The application information for the robot application.+createRobotApplicationVersion_application :: Lens.Lens' CreateRobotApplicationVersion Prelude.Text+createRobotApplicationVersion_application = Lens.lens (\CreateRobotApplicationVersion' {application} -> application) (\s@CreateRobotApplicationVersion' {} a -> s {application = a} :: CreateRobotApplicationVersion)++instance+ Core.AWSRequest+ CreateRobotApplicationVersion+ where+ type+ AWSResponse CreateRobotApplicationVersion =+ CreateRobotApplicationVersionResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateRobotApplicationVersionResponse'+ Prelude.<$> (x Data..?> "arn")+ Prelude.<*> (x Data..?> "environment")+ Prelude.<*> (x Data..?> "lastUpdatedAt")+ Prelude.<*> (x Data..?> "name")+ Prelude.<*> (x Data..?> "revisionId")+ Prelude.<*> (x Data..?> "robotSoftwareSuite")+ Prelude.<*> (x Data..?> "sources" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "version")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ CreateRobotApplicationVersion+ where+ hashWithSalt _salt CreateRobotApplicationVersion' {..} =+ _salt+ `Prelude.hashWithSalt` currentRevisionId+ `Prelude.hashWithSalt` imageDigest+ `Prelude.hashWithSalt` s3Etags+ `Prelude.hashWithSalt` application++instance Prelude.NFData CreateRobotApplicationVersion where+ rnf CreateRobotApplicationVersion' {..} =+ Prelude.rnf currentRevisionId+ `Prelude.seq` Prelude.rnf imageDigest+ `Prelude.seq` Prelude.rnf s3Etags+ `Prelude.seq` Prelude.rnf application++instance Data.ToHeaders CreateRobotApplicationVersion where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateRobotApplicationVersion where+ toJSON CreateRobotApplicationVersion' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("currentRevisionId" Data..=)+ Prelude.<$> currentRevisionId,+ ("imageDigest" Data..=) Prelude.<$> imageDigest,+ ("s3Etags" Data..=) Prelude.<$> s3Etags,+ Prelude.Just ("application" Data..= application)+ ]+ )++instance Data.ToPath CreateRobotApplicationVersion where+ toPath =+ Prelude.const "/createRobotApplicationVersion"++instance Data.ToQuery CreateRobotApplicationVersion where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateRobotApplicationVersionResponse' smart constructor.+data CreateRobotApplicationVersionResponse = CreateRobotApplicationVersionResponse'+ { -- | The Amazon Resource Name (ARN) of the robot application.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The object that contains the Docker image URI used to create your robot+ -- application.+ environment :: Prelude.Maybe Environment,+ -- | The time, in milliseconds since the epoch, when the robot application+ -- was last updated.+ lastUpdatedAt :: Prelude.Maybe Data.POSIX,+ -- | The name of the robot application.+ name :: Prelude.Maybe Prelude.Text,+ -- | The revision id of the robot application.+ revisionId :: Prelude.Maybe Prelude.Text,+ -- | The robot software suite (ROS distribution) used by the robot+ -- application.+ robotSoftwareSuite :: Prelude.Maybe RobotSoftwareSuite,+ -- | The sources of the robot application.+ sources :: Prelude.Maybe [Source],+ -- | The version of the robot application.+ version :: 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 'CreateRobotApplicationVersionResponse' 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', 'createRobotApplicationVersionResponse_arn' - The Amazon Resource Name (ARN) of the robot application.+--+-- 'environment', 'createRobotApplicationVersionResponse_environment' - The object that contains the Docker image URI used to create your robot+-- application.+--+-- 'lastUpdatedAt', 'createRobotApplicationVersionResponse_lastUpdatedAt' - The time, in milliseconds since the epoch, when the robot application+-- was last updated.+--+-- 'name', 'createRobotApplicationVersionResponse_name' - The name of the robot application.+--+-- 'revisionId', 'createRobotApplicationVersionResponse_revisionId' - The revision id of the robot application.+--+-- 'robotSoftwareSuite', 'createRobotApplicationVersionResponse_robotSoftwareSuite' - The robot software suite (ROS distribution) used by the robot+-- application.+--+-- 'sources', 'createRobotApplicationVersionResponse_sources' - The sources of the robot application.+--+-- 'version', 'createRobotApplicationVersionResponse_version' - The version of the robot application.+--+-- 'httpStatus', 'createRobotApplicationVersionResponse_httpStatus' - The response's http status code.+newCreateRobotApplicationVersionResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateRobotApplicationVersionResponse+newCreateRobotApplicationVersionResponse pHttpStatus_ =+ CreateRobotApplicationVersionResponse'+ { arn =+ Prelude.Nothing,+ environment = Prelude.Nothing,+ lastUpdatedAt = Prelude.Nothing,+ name = Prelude.Nothing,+ revisionId = Prelude.Nothing,+ robotSoftwareSuite = Prelude.Nothing,+ sources = Prelude.Nothing,+ version = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The Amazon Resource Name (ARN) of the robot application.+createRobotApplicationVersionResponse_arn :: Lens.Lens' CreateRobotApplicationVersionResponse (Prelude.Maybe Prelude.Text)+createRobotApplicationVersionResponse_arn = Lens.lens (\CreateRobotApplicationVersionResponse' {arn} -> arn) (\s@CreateRobotApplicationVersionResponse' {} a -> s {arn = a} :: CreateRobotApplicationVersionResponse)++-- | The object that contains the Docker image URI used to create your robot+-- application.+createRobotApplicationVersionResponse_environment :: Lens.Lens' CreateRobotApplicationVersionResponse (Prelude.Maybe Environment)+createRobotApplicationVersionResponse_environment = Lens.lens (\CreateRobotApplicationVersionResponse' {environment} -> environment) (\s@CreateRobotApplicationVersionResponse' {} a -> s {environment = a} :: CreateRobotApplicationVersionResponse)++-- | The time, in milliseconds since the epoch, when the robot application+-- was last updated.+createRobotApplicationVersionResponse_lastUpdatedAt :: Lens.Lens' CreateRobotApplicationVersionResponse (Prelude.Maybe Prelude.UTCTime)+createRobotApplicationVersionResponse_lastUpdatedAt = Lens.lens (\CreateRobotApplicationVersionResponse' {lastUpdatedAt} -> lastUpdatedAt) (\s@CreateRobotApplicationVersionResponse' {} a -> s {lastUpdatedAt = a} :: CreateRobotApplicationVersionResponse) Prelude.. Lens.mapping Data._Time++-- | The name of the robot application.+createRobotApplicationVersionResponse_name :: Lens.Lens' CreateRobotApplicationVersionResponse (Prelude.Maybe Prelude.Text)+createRobotApplicationVersionResponse_name = Lens.lens (\CreateRobotApplicationVersionResponse' {name} -> name) (\s@CreateRobotApplicationVersionResponse' {} a -> s {name = a} :: CreateRobotApplicationVersionResponse)++-- | The revision id of the robot application.+createRobotApplicationVersionResponse_revisionId :: Lens.Lens' CreateRobotApplicationVersionResponse (Prelude.Maybe Prelude.Text)+createRobotApplicationVersionResponse_revisionId = Lens.lens (\CreateRobotApplicationVersionResponse' {revisionId} -> revisionId) (\s@CreateRobotApplicationVersionResponse' {} a -> s {revisionId = a} :: CreateRobotApplicationVersionResponse)++-- | The robot software suite (ROS distribution) used by the robot+-- application.+createRobotApplicationVersionResponse_robotSoftwareSuite :: Lens.Lens' CreateRobotApplicationVersionResponse (Prelude.Maybe RobotSoftwareSuite)+createRobotApplicationVersionResponse_robotSoftwareSuite = Lens.lens (\CreateRobotApplicationVersionResponse' {robotSoftwareSuite} -> robotSoftwareSuite) (\s@CreateRobotApplicationVersionResponse' {} a -> s {robotSoftwareSuite = a} :: CreateRobotApplicationVersionResponse)++-- | The sources of the robot application.+createRobotApplicationVersionResponse_sources :: Lens.Lens' CreateRobotApplicationVersionResponse (Prelude.Maybe [Source])+createRobotApplicationVersionResponse_sources = Lens.lens (\CreateRobotApplicationVersionResponse' {sources} -> sources) (\s@CreateRobotApplicationVersionResponse' {} a -> s {sources = a} :: CreateRobotApplicationVersionResponse) Prelude.. Lens.mapping Lens.coerced++-- | The version of the robot application.+createRobotApplicationVersionResponse_version :: Lens.Lens' CreateRobotApplicationVersionResponse (Prelude.Maybe Prelude.Text)+createRobotApplicationVersionResponse_version = Lens.lens (\CreateRobotApplicationVersionResponse' {version} -> version) (\s@CreateRobotApplicationVersionResponse' {} a -> s {version = a} :: CreateRobotApplicationVersionResponse)++-- | The response's http status code.+createRobotApplicationVersionResponse_httpStatus :: Lens.Lens' CreateRobotApplicationVersionResponse Prelude.Int+createRobotApplicationVersionResponse_httpStatus = Lens.lens (\CreateRobotApplicationVersionResponse' {httpStatus} -> httpStatus) (\s@CreateRobotApplicationVersionResponse' {} a -> s {httpStatus = a} :: CreateRobotApplicationVersionResponse)++instance+ Prelude.NFData+ CreateRobotApplicationVersionResponse+ where+ rnf CreateRobotApplicationVersionResponse' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf environment+ `Prelude.seq` Prelude.rnf lastUpdatedAt+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf revisionId+ `Prelude.seq` Prelude.rnf robotSoftwareSuite+ `Prelude.seq` Prelude.rnf sources+ `Prelude.seq` Prelude.rnf version+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/RobOMaker/CreateSimulationApplication.hs view
@@ -0,0 +1,400 @@+{-# 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.RobOMaker.CreateSimulationApplication+-- 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 a simulation application.+module Amazonka.RobOMaker.CreateSimulationApplication+ ( -- * Creating a Request+ CreateSimulationApplication (..),+ newCreateSimulationApplication,++ -- * Request Lenses+ createSimulationApplication_environment,+ createSimulationApplication_renderingEngine,+ createSimulationApplication_sources,+ createSimulationApplication_tags,+ createSimulationApplication_name,+ createSimulationApplication_simulationSoftwareSuite,+ createSimulationApplication_robotSoftwareSuite,++ -- * Destructuring the Response+ CreateSimulationApplicationResponse (..),+ newCreateSimulationApplicationResponse,++ -- * Response Lenses+ createSimulationApplicationResponse_arn,+ createSimulationApplicationResponse_environment,+ createSimulationApplicationResponse_lastUpdatedAt,+ createSimulationApplicationResponse_name,+ createSimulationApplicationResponse_renderingEngine,+ createSimulationApplicationResponse_revisionId,+ createSimulationApplicationResponse_robotSoftwareSuite,+ createSimulationApplicationResponse_simulationSoftwareSuite,+ createSimulationApplicationResponse_sources,+ createSimulationApplicationResponse_tags,+ createSimulationApplicationResponse_version,+ createSimulationApplicationResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.RobOMaker.Types++-- | /See:/ 'newCreateSimulationApplication' smart constructor.+data CreateSimulationApplication = CreateSimulationApplication'+ { -- | The object that contains the Docker image URI used to create your+ -- simulation application.+ environment :: Prelude.Maybe Environment,+ -- | The rendering engine for the simulation application.+ renderingEngine :: Prelude.Maybe RenderingEngine,+ -- | The sources of the simulation application.+ sources :: Prelude.Maybe [SourceConfig],+ -- | A map that contains tag keys and tag values that are attached to the+ -- simulation application.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The name of the simulation application.+ name :: Prelude.Text,+ -- | The simulation software suite used by the simulation application.+ simulationSoftwareSuite :: SimulationSoftwareSuite,+ -- | The robot software suite (ROS distribution) used by the simulation+ -- application.+ robotSoftwareSuite :: RobotSoftwareSuite+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateSimulationApplication' 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:+--+-- 'environment', 'createSimulationApplication_environment' - The object that contains the Docker image URI used to create your+-- simulation application.+--+-- 'renderingEngine', 'createSimulationApplication_renderingEngine' - The rendering engine for the simulation application.+--+-- 'sources', 'createSimulationApplication_sources' - The sources of the simulation application.+--+-- 'tags', 'createSimulationApplication_tags' - A map that contains tag keys and tag values that are attached to the+-- simulation application.+--+-- 'name', 'createSimulationApplication_name' - The name of the simulation application.+--+-- 'simulationSoftwareSuite', 'createSimulationApplication_simulationSoftwareSuite' - The simulation software suite used by the simulation application.+--+-- 'robotSoftwareSuite', 'createSimulationApplication_robotSoftwareSuite' - The robot software suite (ROS distribution) used by the simulation+-- application.+newCreateSimulationApplication ::+ -- | 'name'+ Prelude.Text ->+ -- | 'simulationSoftwareSuite'+ SimulationSoftwareSuite ->+ -- | 'robotSoftwareSuite'+ RobotSoftwareSuite ->+ CreateSimulationApplication+newCreateSimulationApplication+ pName_+ pSimulationSoftwareSuite_+ pRobotSoftwareSuite_ =+ CreateSimulationApplication'+ { environment =+ Prelude.Nothing,+ renderingEngine = Prelude.Nothing,+ sources = Prelude.Nothing,+ tags = Prelude.Nothing,+ name = pName_,+ simulationSoftwareSuite =+ pSimulationSoftwareSuite_,+ robotSoftwareSuite = pRobotSoftwareSuite_+ }++-- | The object that contains the Docker image URI used to create your+-- simulation application.+createSimulationApplication_environment :: Lens.Lens' CreateSimulationApplication (Prelude.Maybe Environment)+createSimulationApplication_environment = Lens.lens (\CreateSimulationApplication' {environment} -> environment) (\s@CreateSimulationApplication' {} a -> s {environment = a} :: CreateSimulationApplication)++-- | The rendering engine for the simulation application.+createSimulationApplication_renderingEngine :: Lens.Lens' CreateSimulationApplication (Prelude.Maybe RenderingEngine)+createSimulationApplication_renderingEngine = Lens.lens (\CreateSimulationApplication' {renderingEngine} -> renderingEngine) (\s@CreateSimulationApplication' {} a -> s {renderingEngine = a} :: CreateSimulationApplication)++-- | The sources of the simulation application.+createSimulationApplication_sources :: Lens.Lens' CreateSimulationApplication (Prelude.Maybe [SourceConfig])+createSimulationApplication_sources = Lens.lens (\CreateSimulationApplication' {sources} -> sources) (\s@CreateSimulationApplication' {} a -> s {sources = a} :: CreateSimulationApplication) Prelude.. Lens.mapping Lens.coerced++-- | A map that contains tag keys and tag values that are attached to the+-- simulation application.+createSimulationApplication_tags :: Lens.Lens' CreateSimulationApplication (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createSimulationApplication_tags = Lens.lens (\CreateSimulationApplication' {tags} -> tags) (\s@CreateSimulationApplication' {} a -> s {tags = a} :: CreateSimulationApplication) Prelude.. Lens.mapping Lens.coerced++-- | The name of the simulation application.+createSimulationApplication_name :: Lens.Lens' CreateSimulationApplication Prelude.Text+createSimulationApplication_name = Lens.lens (\CreateSimulationApplication' {name} -> name) (\s@CreateSimulationApplication' {} a -> s {name = a} :: CreateSimulationApplication)++-- | The simulation software suite used by the simulation application.+createSimulationApplication_simulationSoftwareSuite :: Lens.Lens' CreateSimulationApplication SimulationSoftwareSuite+createSimulationApplication_simulationSoftwareSuite = Lens.lens (\CreateSimulationApplication' {simulationSoftwareSuite} -> simulationSoftwareSuite) (\s@CreateSimulationApplication' {} a -> s {simulationSoftwareSuite = a} :: CreateSimulationApplication)++-- | The robot software suite (ROS distribution) used by the simulation+-- application.+createSimulationApplication_robotSoftwareSuite :: Lens.Lens' CreateSimulationApplication RobotSoftwareSuite+createSimulationApplication_robotSoftwareSuite = Lens.lens (\CreateSimulationApplication' {robotSoftwareSuite} -> robotSoftwareSuite) (\s@CreateSimulationApplication' {} a -> s {robotSoftwareSuite = a} :: CreateSimulationApplication)++instance Core.AWSRequest CreateSimulationApplication where+ type+ AWSResponse CreateSimulationApplication =+ CreateSimulationApplicationResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateSimulationApplicationResponse'+ Prelude.<$> (x Data..?> "arn")+ Prelude.<*> (x Data..?> "environment")+ Prelude.<*> (x Data..?> "lastUpdatedAt")+ Prelude.<*> (x Data..?> "name")+ Prelude.<*> (x Data..?> "renderingEngine")+ Prelude.<*> (x Data..?> "revisionId")+ Prelude.<*> (x Data..?> "robotSoftwareSuite")+ Prelude.<*> (x Data..?> "simulationSoftwareSuite")+ Prelude.<*> (x Data..?> "sources" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "tags" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "version")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateSimulationApplication where+ hashWithSalt _salt CreateSimulationApplication' {..} =+ _salt+ `Prelude.hashWithSalt` environment+ `Prelude.hashWithSalt` renderingEngine+ `Prelude.hashWithSalt` sources+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` simulationSoftwareSuite+ `Prelude.hashWithSalt` robotSoftwareSuite++instance Prelude.NFData CreateSimulationApplication where+ rnf CreateSimulationApplication' {..} =+ Prelude.rnf environment+ `Prelude.seq` Prelude.rnf renderingEngine+ `Prelude.seq` Prelude.rnf sources+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf simulationSoftwareSuite+ `Prelude.seq` Prelude.rnf robotSoftwareSuite++instance Data.ToHeaders CreateSimulationApplication where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateSimulationApplication where+ toJSON CreateSimulationApplication' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("environment" Data..=) Prelude.<$> environment,+ ("renderingEngine" Data..=)+ Prelude.<$> renderingEngine,+ ("sources" Data..=) Prelude.<$> sources,+ ("tags" Data..=) Prelude.<$> tags,+ Prelude.Just ("name" Data..= name),+ Prelude.Just+ ( "simulationSoftwareSuite"+ Data..= simulationSoftwareSuite+ ),+ Prelude.Just+ ("robotSoftwareSuite" Data..= robotSoftwareSuite)+ ]+ )++instance Data.ToPath CreateSimulationApplication where+ toPath = Prelude.const "/createSimulationApplication"++instance Data.ToQuery CreateSimulationApplication where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateSimulationApplicationResponse' smart constructor.+data CreateSimulationApplicationResponse = CreateSimulationApplicationResponse'+ { -- | The Amazon Resource Name (ARN) of the simulation application.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The object that contains the Docker image URI that you used to create+ -- your simulation application.+ environment :: Prelude.Maybe Environment,+ -- | The time, in milliseconds since the epoch, when the simulation+ -- application was last updated.+ lastUpdatedAt :: Prelude.Maybe Data.POSIX,+ -- | The name of the simulation application.+ name :: Prelude.Maybe Prelude.Text,+ -- | The rendering engine for the simulation application.+ renderingEngine :: Prelude.Maybe RenderingEngine,+ -- | The revision id of the simulation application.+ revisionId :: Prelude.Maybe Prelude.Text,+ -- | Information about the robot software suite (ROS distribution).+ robotSoftwareSuite :: Prelude.Maybe RobotSoftwareSuite,+ -- | The simulation software suite used by the simulation application.+ simulationSoftwareSuite :: Prelude.Maybe SimulationSoftwareSuite,+ -- | The sources of the simulation application.+ sources :: Prelude.Maybe [Source],+ -- | The list of all tags added to the simulation application.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The version of the simulation application.+ version :: 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 'CreateSimulationApplicationResponse' 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', 'createSimulationApplicationResponse_arn' - The Amazon Resource Name (ARN) of the simulation application.+--+-- 'environment', 'createSimulationApplicationResponse_environment' - The object that contains the Docker image URI that you used to create+-- your simulation application.+--+-- 'lastUpdatedAt', 'createSimulationApplicationResponse_lastUpdatedAt' - The time, in milliseconds since the epoch, when the simulation+-- application was last updated.+--+-- 'name', 'createSimulationApplicationResponse_name' - The name of the simulation application.+--+-- 'renderingEngine', 'createSimulationApplicationResponse_renderingEngine' - The rendering engine for the simulation application.+--+-- 'revisionId', 'createSimulationApplicationResponse_revisionId' - The revision id of the simulation application.+--+-- 'robotSoftwareSuite', 'createSimulationApplicationResponse_robotSoftwareSuite' - Information about the robot software suite (ROS distribution).+--+-- 'simulationSoftwareSuite', 'createSimulationApplicationResponse_simulationSoftwareSuite' - The simulation software suite used by the simulation application.+--+-- 'sources', 'createSimulationApplicationResponse_sources' - The sources of the simulation application.+--+-- 'tags', 'createSimulationApplicationResponse_tags' - The list of all tags added to the simulation application.+--+-- 'version', 'createSimulationApplicationResponse_version' - The version of the simulation application.+--+-- 'httpStatus', 'createSimulationApplicationResponse_httpStatus' - The response's http status code.+newCreateSimulationApplicationResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateSimulationApplicationResponse+newCreateSimulationApplicationResponse pHttpStatus_ =+ CreateSimulationApplicationResponse'+ { arn =+ Prelude.Nothing,+ environment = Prelude.Nothing,+ lastUpdatedAt = Prelude.Nothing,+ name = Prelude.Nothing,+ renderingEngine = Prelude.Nothing,+ revisionId = Prelude.Nothing,+ robotSoftwareSuite = Prelude.Nothing,+ simulationSoftwareSuite =+ Prelude.Nothing,+ sources = Prelude.Nothing,+ tags = Prelude.Nothing,+ version = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The Amazon Resource Name (ARN) of the simulation application.+createSimulationApplicationResponse_arn :: Lens.Lens' CreateSimulationApplicationResponse (Prelude.Maybe Prelude.Text)+createSimulationApplicationResponse_arn = Lens.lens (\CreateSimulationApplicationResponse' {arn} -> arn) (\s@CreateSimulationApplicationResponse' {} a -> s {arn = a} :: CreateSimulationApplicationResponse)++-- | The object that contains the Docker image URI that you used to create+-- your simulation application.+createSimulationApplicationResponse_environment :: Lens.Lens' CreateSimulationApplicationResponse (Prelude.Maybe Environment)+createSimulationApplicationResponse_environment = Lens.lens (\CreateSimulationApplicationResponse' {environment} -> environment) (\s@CreateSimulationApplicationResponse' {} a -> s {environment = a} :: CreateSimulationApplicationResponse)++-- | The time, in milliseconds since the epoch, when the simulation+-- application was last updated.+createSimulationApplicationResponse_lastUpdatedAt :: Lens.Lens' CreateSimulationApplicationResponse (Prelude.Maybe Prelude.UTCTime)+createSimulationApplicationResponse_lastUpdatedAt = Lens.lens (\CreateSimulationApplicationResponse' {lastUpdatedAt} -> lastUpdatedAt) (\s@CreateSimulationApplicationResponse' {} a -> s {lastUpdatedAt = a} :: CreateSimulationApplicationResponse) Prelude.. Lens.mapping Data._Time++-- | The name of the simulation application.+createSimulationApplicationResponse_name :: Lens.Lens' CreateSimulationApplicationResponse (Prelude.Maybe Prelude.Text)+createSimulationApplicationResponse_name = Lens.lens (\CreateSimulationApplicationResponse' {name} -> name) (\s@CreateSimulationApplicationResponse' {} a -> s {name = a} :: CreateSimulationApplicationResponse)++-- | The rendering engine for the simulation application.+createSimulationApplicationResponse_renderingEngine :: Lens.Lens' CreateSimulationApplicationResponse (Prelude.Maybe RenderingEngine)+createSimulationApplicationResponse_renderingEngine = Lens.lens (\CreateSimulationApplicationResponse' {renderingEngine} -> renderingEngine) (\s@CreateSimulationApplicationResponse' {} a -> s {renderingEngine = a} :: CreateSimulationApplicationResponse)++-- | The revision id of the simulation application.+createSimulationApplicationResponse_revisionId :: Lens.Lens' CreateSimulationApplicationResponse (Prelude.Maybe Prelude.Text)+createSimulationApplicationResponse_revisionId = Lens.lens (\CreateSimulationApplicationResponse' {revisionId} -> revisionId) (\s@CreateSimulationApplicationResponse' {} a -> s {revisionId = a} :: CreateSimulationApplicationResponse)++-- | Information about the robot software suite (ROS distribution).+createSimulationApplicationResponse_robotSoftwareSuite :: Lens.Lens' CreateSimulationApplicationResponse (Prelude.Maybe RobotSoftwareSuite)+createSimulationApplicationResponse_robotSoftwareSuite = Lens.lens (\CreateSimulationApplicationResponse' {robotSoftwareSuite} -> robotSoftwareSuite) (\s@CreateSimulationApplicationResponse' {} a -> s {robotSoftwareSuite = a} :: CreateSimulationApplicationResponse)++-- | The simulation software suite used by the simulation application.+createSimulationApplicationResponse_simulationSoftwareSuite :: Lens.Lens' CreateSimulationApplicationResponse (Prelude.Maybe SimulationSoftwareSuite)+createSimulationApplicationResponse_simulationSoftwareSuite = Lens.lens (\CreateSimulationApplicationResponse' {simulationSoftwareSuite} -> simulationSoftwareSuite) (\s@CreateSimulationApplicationResponse' {} a -> s {simulationSoftwareSuite = a} :: CreateSimulationApplicationResponse)++-- | The sources of the simulation application.+createSimulationApplicationResponse_sources :: Lens.Lens' CreateSimulationApplicationResponse (Prelude.Maybe [Source])+createSimulationApplicationResponse_sources = Lens.lens (\CreateSimulationApplicationResponse' {sources} -> sources) (\s@CreateSimulationApplicationResponse' {} a -> s {sources = a} :: CreateSimulationApplicationResponse) Prelude.. Lens.mapping Lens.coerced++-- | The list of all tags added to the simulation application.+createSimulationApplicationResponse_tags :: Lens.Lens' CreateSimulationApplicationResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createSimulationApplicationResponse_tags = Lens.lens (\CreateSimulationApplicationResponse' {tags} -> tags) (\s@CreateSimulationApplicationResponse' {} a -> s {tags = a} :: CreateSimulationApplicationResponse) Prelude.. Lens.mapping Lens.coerced++-- | The version of the simulation application.+createSimulationApplicationResponse_version :: Lens.Lens' CreateSimulationApplicationResponse (Prelude.Maybe Prelude.Text)+createSimulationApplicationResponse_version = Lens.lens (\CreateSimulationApplicationResponse' {version} -> version) (\s@CreateSimulationApplicationResponse' {} a -> s {version = a} :: CreateSimulationApplicationResponse)++-- | The response's http status code.+createSimulationApplicationResponse_httpStatus :: Lens.Lens' CreateSimulationApplicationResponse Prelude.Int+createSimulationApplicationResponse_httpStatus = Lens.lens (\CreateSimulationApplicationResponse' {httpStatus} -> httpStatus) (\s@CreateSimulationApplicationResponse' {} a -> s {httpStatus = a} :: CreateSimulationApplicationResponse)++instance+ Prelude.NFData+ CreateSimulationApplicationResponse+ where+ rnf CreateSimulationApplicationResponse' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf environment+ `Prelude.seq` Prelude.rnf lastUpdatedAt+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf renderingEngine+ `Prelude.seq` Prelude.rnf revisionId+ `Prelude.seq` Prelude.rnf robotSoftwareSuite+ `Prelude.seq` Prelude.rnf simulationSoftwareSuite+ `Prelude.seq` Prelude.rnf sources+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf version+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/RobOMaker/CreateSimulationApplicationVersion.hs view
@@ -0,0 +1,367 @@+{-# 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.RobOMaker.CreateSimulationApplicationVersion+-- 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 a simulation application with a specific revision id.+module Amazonka.RobOMaker.CreateSimulationApplicationVersion+ ( -- * Creating a Request+ CreateSimulationApplicationVersion (..),+ newCreateSimulationApplicationVersion,++ -- * Request Lenses+ createSimulationApplicationVersion_currentRevisionId,+ createSimulationApplicationVersion_imageDigest,+ createSimulationApplicationVersion_s3Etags,+ createSimulationApplicationVersion_application,++ -- * Destructuring the Response+ CreateSimulationApplicationVersionResponse (..),+ newCreateSimulationApplicationVersionResponse,++ -- * Response Lenses+ createSimulationApplicationVersionResponse_arn,+ createSimulationApplicationVersionResponse_environment,+ createSimulationApplicationVersionResponse_lastUpdatedAt,+ createSimulationApplicationVersionResponse_name,+ createSimulationApplicationVersionResponse_renderingEngine,+ createSimulationApplicationVersionResponse_revisionId,+ createSimulationApplicationVersionResponse_robotSoftwareSuite,+ createSimulationApplicationVersionResponse_simulationSoftwareSuite,+ createSimulationApplicationVersionResponse_sources,+ createSimulationApplicationVersionResponse_version,+ createSimulationApplicationVersionResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.RobOMaker.Types++-- | /See:/ 'newCreateSimulationApplicationVersion' smart constructor.+data CreateSimulationApplicationVersion = CreateSimulationApplicationVersion'+ { -- | The current revision id for the simulation application. If you provide a+ -- value and it matches the latest revision ID, a new version will be+ -- created.+ currentRevisionId :: Prelude.Maybe Prelude.Text,+ -- | The SHA256 digest used to identify the Docker image URI used to created+ -- the simulation application.+ imageDigest :: Prelude.Maybe Prelude.Text,+ -- | The Amazon S3 eTag identifier for the zip file bundle that you use to+ -- create the simulation application.+ s3Etags :: Prelude.Maybe [Prelude.Text],+ -- | The application information for the simulation application.+ application :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateSimulationApplicationVersion' 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:+--+-- 'currentRevisionId', 'createSimulationApplicationVersion_currentRevisionId' - The current revision id for the simulation application. If you provide a+-- value and it matches the latest revision ID, a new version will be+-- created.+--+-- 'imageDigest', 'createSimulationApplicationVersion_imageDigest' - The SHA256 digest used to identify the Docker image URI used to created+-- the simulation application.+--+-- 's3Etags', 'createSimulationApplicationVersion_s3Etags' - The Amazon S3 eTag identifier for the zip file bundle that you use to+-- create the simulation application.+--+-- 'application', 'createSimulationApplicationVersion_application' - The application information for the simulation application.+newCreateSimulationApplicationVersion ::+ -- | 'application'+ Prelude.Text ->+ CreateSimulationApplicationVersion+newCreateSimulationApplicationVersion pApplication_ =+ CreateSimulationApplicationVersion'+ { currentRevisionId =+ Prelude.Nothing,+ imageDigest = Prelude.Nothing,+ s3Etags = Prelude.Nothing,+ application = pApplication_+ }++-- | The current revision id for the simulation application. If you provide a+-- value and it matches the latest revision ID, a new version will be+-- created.+createSimulationApplicationVersion_currentRevisionId :: Lens.Lens' CreateSimulationApplicationVersion (Prelude.Maybe Prelude.Text)+createSimulationApplicationVersion_currentRevisionId = Lens.lens (\CreateSimulationApplicationVersion' {currentRevisionId} -> currentRevisionId) (\s@CreateSimulationApplicationVersion' {} a -> s {currentRevisionId = a} :: CreateSimulationApplicationVersion)++-- | The SHA256 digest used to identify the Docker image URI used to created+-- the simulation application.+createSimulationApplicationVersion_imageDigest :: Lens.Lens' CreateSimulationApplicationVersion (Prelude.Maybe Prelude.Text)+createSimulationApplicationVersion_imageDigest = Lens.lens (\CreateSimulationApplicationVersion' {imageDigest} -> imageDigest) (\s@CreateSimulationApplicationVersion' {} a -> s {imageDigest = a} :: CreateSimulationApplicationVersion)++-- | The Amazon S3 eTag identifier for the zip file bundle that you use to+-- create the simulation application.+createSimulationApplicationVersion_s3Etags :: Lens.Lens' CreateSimulationApplicationVersion (Prelude.Maybe [Prelude.Text])+createSimulationApplicationVersion_s3Etags = Lens.lens (\CreateSimulationApplicationVersion' {s3Etags} -> s3Etags) (\s@CreateSimulationApplicationVersion' {} a -> s {s3Etags = a} :: CreateSimulationApplicationVersion) Prelude.. Lens.mapping Lens.coerced++-- | The application information for the simulation application.+createSimulationApplicationVersion_application :: Lens.Lens' CreateSimulationApplicationVersion Prelude.Text+createSimulationApplicationVersion_application = Lens.lens (\CreateSimulationApplicationVersion' {application} -> application) (\s@CreateSimulationApplicationVersion' {} a -> s {application = a} :: CreateSimulationApplicationVersion)++instance+ Core.AWSRequest+ CreateSimulationApplicationVersion+ where+ type+ AWSResponse CreateSimulationApplicationVersion =+ CreateSimulationApplicationVersionResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateSimulationApplicationVersionResponse'+ Prelude.<$> (x Data..?> "arn")+ Prelude.<*> (x Data..?> "environment")+ Prelude.<*> (x Data..?> "lastUpdatedAt")+ Prelude.<*> (x Data..?> "name")+ Prelude.<*> (x Data..?> "renderingEngine")+ Prelude.<*> (x Data..?> "revisionId")+ Prelude.<*> (x Data..?> "robotSoftwareSuite")+ Prelude.<*> (x Data..?> "simulationSoftwareSuite")+ Prelude.<*> (x Data..?> "sources" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "version")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ CreateSimulationApplicationVersion+ where+ hashWithSalt+ _salt+ CreateSimulationApplicationVersion' {..} =+ _salt+ `Prelude.hashWithSalt` currentRevisionId+ `Prelude.hashWithSalt` imageDigest+ `Prelude.hashWithSalt` s3Etags+ `Prelude.hashWithSalt` application++instance+ Prelude.NFData+ CreateSimulationApplicationVersion+ where+ rnf CreateSimulationApplicationVersion' {..} =+ Prelude.rnf currentRevisionId+ `Prelude.seq` Prelude.rnf imageDigest+ `Prelude.seq` Prelude.rnf s3Etags+ `Prelude.seq` Prelude.rnf application++instance+ Data.ToHeaders+ CreateSimulationApplicationVersion+ where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance+ Data.ToJSON+ CreateSimulationApplicationVersion+ where+ toJSON CreateSimulationApplicationVersion' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("currentRevisionId" Data..=)+ Prelude.<$> currentRevisionId,+ ("imageDigest" Data..=) Prelude.<$> imageDigest,+ ("s3Etags" Data..=) Prelude.<$> s3Etags,+ Prelude.Just ("application" Data..= application)+ ]+ )++instance+ Data.ToPath+ CreateSimulationApplicationVersion+ where+ toPath =+ Prelude.const "/createSimulationApplicationVersion"++instance+ Data.ToQuery+ CreateSimulationApplicationVersion+ where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateSimulationApplicationVersionResponse' smart constructor.+data CreateSimulationApplicationVersionResponse = CreateSimulationApplicationVersionResponse'+ { -- | The Amazon Resource Name (ARN) of the simulation application.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The object that contains the Docker image URI used to create the+ -- simulation application.+ environment :: Prelude.Maybe Environment,+ -- | The time, in milliseconds since the epoch, when the simulation+ -- application was last updated.+ lastUpdatedAt :: Prelude.Maybe Data.POSIX,+ -- | The name of the simulation application.+ name :: Prelude.Maybe Prelude.Text,+ -- | The rendering engine for the simulation application.+ renderingEngine :: Prelude.Maybe RenderingEngine,+ -- | The revision ID of the simulation application.+ revisionId :: Prelude.Maybe Prelude.Text,+ -- | Information about the robot software suite (ROS distribution).+ robotSoftwareSuite :: Prelude.Maybe RobotSoftwareSuite,+ -- | The simulation software suite used by the simulation application.+ simulationSoftwareSuite :: Prelude.Maybe SimulationSoftwareSuite,+ -- | The sources of the simulation application.+ sources :: Prelude.Maybe [Source],+ -- | The version of the simulation application.+ version :: 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 'CreateSimulationApplicationVersionResponse' 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', 'createSimulationApplicationVersionResponse_arn' - The Amazon Resource Name (ARN) of the simulation application.+--+-- 'environment', 'createSimulationApplicationVersionResponse_environment' - The object that contains the Docker image URI used to create the+-- simulation application.+--+-- 'lastUpdatedAt', 'createSimulationApplicationVersionResponse_lastUpdatedAt' - The time, in milliseconds since the epoch, when the simulation+-- application was last updated.+--+-- 'name', 'createSimulationApplicationVersionResponse_name' - The name of the simulation application.+--+-- 'renderingEngine', 'createSimulationApplicationVersionResponse_renderingEngine' - The rendering engine for the simulation application.+--+-- 'revisionId', 'createSimulationApplicationVersionResponse_revisionId' - The revision ID of the simulation application.+--+-- 'robotSoftwareSuite', 'createSimulationApplicationVersionResponse_robotSoftwareSuite' - Information about the robot software suite (ROS distribution).+--+-- 'simulationSoftwareSuite', 'createSimulationApplicationVersionResponse_simulationSoftwareSuite' - The simulation software suite used by the simulation application.+--+-- 'sources', 'createSimulationApplicationVersionResponse_sources' - The sources of the simulation application.+--+-- 'version', 'createSimulationApplicationVersionResponse_version' - The version of the simulation application.+--+-- 'httpStatus', 'createSimulationApplicationVersionResponse_httpStatus' - The response's http status code.+newCreateSimulationApplicationVersionResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateSimulationApplicationVersionResponse+newCreateSimulationApplicationVersionResponse+ pHttpStatus_ =+ CreateSimulationApplicationVersionResponse'+ { arn =+ Prelude.Nothing,+ environment = Prelude.Nothing,+ lastUpdatedAt = Prelude.Nothing,+ name = Prelude.Nothing,+ renderingEngine =+ Prelude.Nothing,+ revisionId = Prelude.Nothing,+ robotSoftwareSuite =+ Prelude.Nothing,+ simulationSoftwareSuite =+ Prelude.Nothing,+ sources = Prelude.Nothing,+ version = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The Amazon Resource Name (ARN) of the simulation application.+createSimulationApplicationVersionResponse_arn :: Lens.Lens' CreateSimulationApplicationVersionResponse (Prelude.Maybe Prelude.Text)+createSimulationApplicationVersionResponse_arn = Lens.lens (\CreateSimulationApplicationVersionResponse' {arn} -> arn) (\s@CreateSimulationApplicationVersionResponse' {} a -> s {arn = a} :: CreateSimulationApplicationVersionResponse)++-- | The object that contains the Docker image URI used to create the+-- simulation application.+createSimulationApplicationVersionResponse_environment :: Lens.Lens' CreateSimulationApplicationVersionResponse (Prelude.Maybe Environment)+createSimulationApplicationVersionResponse_environment = Lens.lens (\CreateSimulationApplicationVersionResponse' {environment} -> environment) (\s@CreateSimulationApplicationVersionResponse' {} a -> s {environment = a} :: CreateSimulationApplicationVersionResponse)++-- | The time, in milliseconds since the epoch, when the simulation+-- application was last updated.+createSimulationApplicationVersionResponse_lastUpdatedAt :: Lens.Lens' CreateSimulationApplicationVersionResponse (Prelude.Maybe Prelude.UTCTime)+createSimulationApplicationVersionResponse_lastUpdatedAt = Lens.lens (\CreateSimulationApplicationVersionResponse' {lastUpdatedAt} -> lastUpdatedAt) (\s@CreateSimulationApplicationVersionResponse' {} a -> s {lastUpdatedAt = a} :: CreateSimulationApplicationVersionResponse) Prelude.. Lens.mapping Data._Time++-- | The name of the simulation application.+createSimulationApplicationVersionResponse_name :: Lens.Lens' CreateSimulationApplicationVersionResponse (Prelude.Maybe Prelude.Text)+createSimulationApplicationVersionResponse_name = Lens.lens (\CreateSimulationApplicationVersionResponse' {name} -> name) (\s@CreateSimulationApplicationVersionResponse' {} a -> s {name = a} :: CreateSimulationApplicationVersionResponse)++-- | The rendering engine for the simulation application.+createSimulationApplicationVersionResponse_renderingEngine :: Lens.Lens' CreateSimulationApplicationVersionResponse (Prelude.Maybe RenderingEngine)+createSimulationApplicationVersionResponse_renderingEngine = Lens.lens (\CreateSimulationApplicationVersionResponse' {renderingEngine} -> renderingEngine) (\s@CreateSimulationApplicationVersionResponse' {} a -> s {renderingEngine = a} :: CreateSimulationApplicationVersionResponse)++-- | The revision ID of the simulation application.+createSimulationApplicationVersionResponse_revisionId :: Lens.Lens' CreateSimulationApplicationVersionResponse (Prelude.Maybe Prelude.Text)+createSimulationApplicationVersionResponse_revisionId = Lens.lens (\CreateSimulationApplicationVersionResponse' {revisionId} -> revisionId) (\s@CreateSimulationApplicationVersionResponse' {} a -> s {revisionId = a} :: CreateSimulationApplicationVersionResponse)++-- | Information about the robot software suite (ROS distribution).+createSimulationApplicationVersionResponse_robotSoftwareSuite :: Lens.Lens' CreateSimulationApplicationVersionResponse (Prelude.Maybe RobotSoftwareSuite)+createSimulationApplicationVersionResponse_robotSoftwareSuite = Lens.lens (\CreateSimulationApplicationVersionResponse' {robotSoftwareSuite} -> robotSoftwareSuite) (\s@CreateSimulationApplicationVersionResponse' {} a -> s {robotSoftwareSuite = a} :: CreateSimulationApplicationVersionResponse)++-- | The simulation software suite used by the simulation application.+createSimulationApplicationVersionResponse_simulationSoftwareSuite :: Lens.Lens' CreateSimulationApplicationVersionResponse (Prelude.Maybe SimulationSoftwareSuite)+createSimulationApplicationVersionResponse_simulationSoftwareSuite = Lens.lens (\CreateSimulationApplicationVersionResponse' {simulationSoftwareSuite} -> simulationSoftwareSuite) (\s@CreateSimulationApplicationVersionResponse' {} a -> s {simulationSoftwareSuite = a} :: CreateSimulationApplicationVersionResponse)++-- | The sources of the simulation application.+createSimulationApplicationVersionResponse_sources :: Lens.Lens' CreateSimulationApplicationVersionResponse (Prelude.Maybe [Source])+createSimulationApplicationVersionResponse_sources = Lens.lens (\CreateSimulationApplicationVersionResponse' {sources} -> sources) (\s@CreateSimulationApplicationVersionResponse' {} a -> s {sources = a} :: CreateSimulationApplicationVersionResponse) Prelude.. Lens.mapping Lens.coerced++-- | The version of the simulation application.+createSimulationApplicationVersionResponse_version :: Lens.Lens' CreateSimulationApplicationVersionResponse (Prelude.Maybe Prelude.Text)+createSimulationApplicationVersionResponse_version = Lens.lens (\CreateSimulationApplicationVersionResponse' {version} -> version) (\s@CreateSimulationApplicationVersionResponse' {} a -> s {version = a} :: CreateSimulationApplicationVersionResponse)++-- | The response's http status code.+createSimulationApplicationVersionResponse_httpStatus :: Lens.Lens' CreateSimulationApplicationVersionResponse Prelude.Int+createSimulationApplicationVersionResponse_httpStatus = Lens.lens (\CreateSimulationApplicationVersionResponse' {httpStatus} -> httpStatus) (\s@CreateSimulationApplicationVersionResponse' {} a -> s {httpStatus = a} :: CreateSimulationApplicationVersionResponse)++instance+ Prelude.NFData+ CreateSimulationApplicationVersionResponse+ where+ rnf CreateSimulationApplicationVersionResponse' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf environment+ `Prelude.seq` Prelude.rnf lastUpdatedAt+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf renderingEngine+ `Prelude.seq` Prelude.rnf revisionId+ `Prelude.seq` Prelude.rnf robotSoftwareSuite+ `Prelude.seq` Prelude.rnf simulationSoftwareSuite+ `Prelude.seq` Prelude.rnf sources+ `Prelude.seq` Prelude.rnf version+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/RobOMaker/CreateSimulationJob.hs view
@@ -0,0 +1,747 @@+{-# 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.RobOMaker.CreateSimulationJob+-- 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 a simulation job.+--+-- After 90 days, simulation jobs expire and will be deleted. They will no+-- longer be accessible.+module Amazonka.RobOMaker.CreateSimulationJob+ ( -- * Creating a Request+ CreateSimulationJob (..),+ newCreateSimulationJob,++ -- * Request Lenses+ createSimulationJob_clientRequestToken,+ createSimulationJob_compute,+ createSimulationJob_dataSources,+ createSimulationJob_failureBehavior,+ createSimulationJob_loggingConfig,+ createSimulationJob_outputLocation,+ createSimulationJob_robotApplications,+ createSimulationJob_simulationApplications,+ createSimulationJob_tags,+ createSimulationJob_vpcConfig,+ createSimulationJob_maxJobDurationInSeconds,+ createSimulationJob_iamRole,++ -- * Destructuring the Response+ CreateSimulationJobResponse (..),+ newCreateSimulationJobResponse,++ -- * Response Lenses+ createSimulationJobResponse_arn,+ createSimulationJobResponse_clientRequestToken,+ createSimulationJobResponse_compute,+ createSimulationJobResponse_dataSources,+ createSimulationJobResponse_failureBehavior,+ createSimulationJobResponse_failureCode,+ createSimulationJobResponse_iamRole,+ createSimulationJobResponse_lastStartedAt,+ createSimulationJobResponse_lastUpdatedAt,+ createSimulationJobResponse_loggingConfig,+ createSimulationJobResponse_maxJobDurationInSeconds,+ createSimulationJobResponse_outputLocation,+ createSimulationJobResponse_robotApplications,+ createSimulationJobResponse_simulationApplications,+ createSimulationJobResponse_simulationTimeMillis,+ createSimulationJobResponse_status,+ createSimulationJobResponse_tags,+ createSimulationJobResponse_vpcConfig,+ createSimulationJobResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.RobOMaker.Types++-- | /See:/ 'newCreateSimulationJob' smart constructor.+data CreateSimulationJob = CreateSimulationJob'+ { -- | Unique, case-sensitive identifier that you provide to ensure the+ -- idempotency of the request.+ clientRequestToken :: Prelude.Maybe Prelude.Text,+ -- | Compute information for the simulation job.+ compute :: Prelude.Maybe Compute,+ -- | Specify data sources to mount read-only files from S3 into your+ -- simulation. These files are available under+ -- @\/opt\/robomaker\/datasources\/data_source_name@.+ --+ -- There is a limit of 100 files and a combined size of 25GB for all+ -- @DataSourceConfig@ objects.+ dataSources :: Prelude.Maybe (Prelude.NonEmpty DataSourceConfig),+ -- | The failure behavior the simulation job.+ --+ -- [Continue]+ -- Leaves the instance running for its maximum timeout duration after a+ -- @4XX@ error code.+ --+ -- [Fail]+ -- Stop the simulation job and terminate the instance.+ failureBehavior :: Prelude.Maybe FailureBehavior,+ -- | The logging configuration.+ loggingConfig :: Prelude.Maybe LoggingConfig,+ -- | Location for output files generated by the simulation job.+ outputLocation :: Prelude.Maybe OutputLocation,+ -- | The robot application to use in the simulation job.+ robotApplications :: Prelude.Maybe (Prelude.NonEmpty RobotApplicationConfig),+ -- | The simulation application to use in the simulation job.+ simulationApplications :: Prelude.Maybe (Prelude.NonEmpty SimulationApplicationConfig),+ -- | A map that contains tag keys and tag values that are attached to the+ -- simulation job.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | If your simulation job accesses resources in a VPC, you provide this+ -- parameter identifying the list of security group IDs and subnet IDs.+ -- These must belong to the same VPC. You must provide at least one+ -- security group and one subnet ID.+ vpcConfig :: Prelude.Maybe VPCConfig,+ -- | The maximum simulation job duration in seconds (up to 14 days or+ -- 1,209,600 seconds. When @maxJobDurationInSeconds@ is reached, the+ -- simulation job will status will transition to @Completed@.+ maxJobDurationInSeconds :: Prelude.Integer,+ -- | The IAM role name that allows the simulation instance to call the AWS+ -- APIs that are specified in its associated policies on your behalf. This+ -- is how credentials are passed in to your simulation job.+ iamRole :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateSimulationJob' 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:+--+-- 'clientRequestToken', 'createSimulationJob_clientRequestToken' - Unique, case-sensitive identifier that you provide to ensure the+-- idempotency of the request.+--+-- 'compute', 'createSimulationJob_compute' - Compute information for the simulation job.+--+-- 'dataSources', 'createSimulationJob_dataSources' - Specify data sources to mount read-only files from S3 into your+-- simulation. These files are available under+-- @\/opt\/robomaker\/datasources\/data_source_name@.+--+-- There is a limit of 100 files and a combined size of 25GB for all+-- @DataSourceConfig@ objects.+--+-- 'failureBehavior', 'createSimulationJob_failureBehavior' - The failure behavior the simulation job.+--+-- [Continue]+-- Leaves the instance running for its maximum timeout duration after a+-- @4XX@ error code.+--+-- [Fail]+-- Stop the simulation job and terminate the instance.+--+-- 'loggingConfig', 'createSimulationJob_loggingConfig' - The logging configuration.+--+-- 'outputLocation', 'createSimulationJob_outputLocation' - Location for output files generated by the simulation job.+--+-- 'robotApplications', 'createSimulationJob_robotApplications' - The robot application to use in the simulation job.+--+-- 'simulationApplications', 'createSimulationJob_simulationApplications' - The simulation application to use in the simulation job.+--+-- 'tags', 'createSimulationJob_tags' - A map that contains tag keys and tag values that are attached to the+-- simulation job.+--+-- 'vpcConfig', 'createSimulationJob_vpcConfig' - If your simulation job accesses resources in a VPC, you provide this+-- parameter identifying the list of security group IDs and subnet IDs.+-- These must belong to the same VPC. You must provide at least one+-- security group and one subnet ID.+--+-- 'maxJobDurationInSeconds', 'createSimulationJob_maxJobDurationInSeconds' - The maximum simulation job duration in seconds (up to 14 days or+-- 1,209,600 seconds. When @maxJobDurationInSeconds@ is reached, the+-- simulation job will status will transition to @Completed@.+--+-- 'iamRole', 'createSimulationJob_iamRole' - The IAM role name that allows the simulation instance to call the AWS+-- APIs that are specified in its associated policies on your behalf. This+-- is how credentials are passed in to your simulation job.+newCreateSimulationJob ::+ -- | 'maxJobDurationInSeconds'+ Prelude.Integer ->+ -- | 'iamRole'+ Prelude.Text ->+ CreateSimulationJob+newCreateSimulationJob+ pMaxJobDurationInSeconds_+ pIamRole_ =+ CreateSimulationJob'+ { clientRequestToken =+ Prelude.Nothing,+ compute = Prelude.Nothing,+ dataSources = Prelude.Nothing,+ failureBehavior = Prelude.Nothing,+ loggingConfig = Prelude.Nothing,+ outputLocation = Prelude.Nothing,+ robotApplications = Prelude.Nothing,+ simulationApplications = Prelude.Nothing,+ tags = Prelude.Nothing,+ vpcConfig = Prelude.Nothing,+ maxJobDurationInSeconds = pMaxJobDurationInSeconds_,+ iamRole = pIamRole_+ }++-- | Unique, case-sensitive identifier that you provide to ensure the+-- idempotency of the request.+createSimulationJob_clientRequestToken :: Lens.Lens' CreateSimulationJob (Prelude.Maybe Prelude.Text)+createSimulationJob_clientRequestToken = Lens.lens (\CreateSimulationJob' {clientRequestToken} -> clientRequestToken) (\s@CreateSimulationJob' {} a -> s {clientRequestToken = a} :: CreateSimulationJob)++-- | Compute information for the simulation job.+createSimulationJob_compute :: Lens.Lens' CreateSimulationJob (Prelude.Maybe Compute)+createSimulationJob_compute = Lens.lens (\CreateSimulationJob' {compute} -> compute) (\s@CreateSimulationJob' {} a -> s {compute = a} :: CreateSimulationJob)++-- | Specify data sources to mount read-only files from S3 into your+-- simulation. These files are available under+-- @\/opt\/robomaker\/datasources\/data_source_name@.+--+-- There is a limit of 100 files and a combined size of 25GB for all+-- @DataSourceConfig@ objects.+createSimulationJob_dataSources :: Lens.Lens' CreateSimulationJob (Prelude.Maybe (Prelude.NonEmpty DataSourceConfig))+createSimulationJob_dataSources = Lens.lens (\CreateSimulationJob' {dataSources} -> dataSources) (\s@CreateSimulationJob' {} a -> s {dataSources = a} :: CreateSimulationJob) Prelude.. Lens.mapping Lens.coerced++-- | The failure behavior the simulation job.+--+-- [Continue]+-- Leaves the instance running for its maximum timeout duration after a+-- @4XX@ error code.+--+-- [Fail]+-- Stop the simulation job and terminate the instance.+createSimulationJob_failureBehavior :: Lens.Lens' CreateSimulationJob (Prelude.Maybe FailureBehavior)+createSimulationJob_failureBehavior = Lens.lens (\CreateSimulationJob' {failureBehavior} -> failureBehavior) (\s@CreateSimulationJob' {} a -> s {failureBehavior = a} :: CreateSimulationJob)++-- | The logging configuration.+createSimulationJob_loggingConfig :: Lens.Lens' CreateSimulationJob (Prelude.Maybe LoggingConfig)+createSimulationJob_loggingConfig = Lens.lens (\CreateSimulationJob' {loggingConfig} -> loggingConfig) (\s@CreateSimulationJob' {} a -> s {loggingConfig = a} :: CreateSimulationJob)++-- | Location for output files generated by the simulation job.+createSimulationJob_outputLocation :: Lens.Lens' CreateSimulationJob (Prelude.Maybe OutputLocation)+createSimulationJob_outputLocation = Lens.lens (\CreateSimulationJob' {outputLocation} -> outputLocation) (\s@CreateSimulationJob' {} a -> s {outputLocation = a} :: CreateSimulationJob)++-- | The robot application to use in the simulation job.+createSimulationJob_robotApplications :: Lens.Lens' CreateSimulationJob (Prelude.Maybe (Prelude.NonEmpty RobotApplicationConfig))+createSimulationJob_robotApplications = Lens.lens (\CreateSimulationJob' {robotApplications} -> robotApplications) (\s@CreateSimulationJob' {} a -> s {robotApplications = a} :: CreateSimulationJob) Prelude.. Lens.mapping Lens.coerced++-- | The simulation application to use in the simulation job.+createSimulationJob_simulationApplications :: Lens.Lens' CreateSimulationJob (Prelude.Maybe (Prelude.NonEmpty SimulationApplicationConfig))+createSimulationJob_simulationApplications = Lens.lens (\CreateSimulationJob' {simulationApplications} -> simulationApplications) (\s@CreateSimulationJob' {} a -> s {simulationApplications = a} :: CreateSimulationJob) Prelude.. Lens.mapping Lens.coerced++-- | A map that contains tag keys and tag values that are attached to the+-- simulation job.+createSimulationJob_tags :: Lens.Lens' CreateSimulationJob (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createSimulationJob_tags = Lens.lens (\CreateSimulationJob' {tags} -> tags) (\s@CreateSimulationJob' {} a -> s {tags = a} :: CreateSimulationJob) Prelude.. Lens.mapping Lens.coerced++-- | If your simulation job accesses resources in a VPC, you provide this+-- parameter identifying the list of security group IDs and subnet IDs.+-- These must belong to the same VPC. You must provide at least one+-- security group and one subnet ID.+createSimulationJob_vpcConfig :: Lens.Lens' CreateSimulationJob (Prelude.Maybe VPCConfig)+createSimulationJob_vpcConfig = Lens.lens (\CreateSimulationJob' {vpcConfig} -> vpcConfig) (\s@CreateSimulationJob' {} a -> s {vpcConfig = a} :: CreateSimulationJob)++-- | The maximum simulation job duration in seconds (up to 14 days or+-- 1,209,600 seconds. When @maxJobDurationInSeconds@ is reached, the+-- simulation job will status will transition to @Completed@.+createSimulationJob_maxJobDurationInSeconds :: Lens.Lens' CreateSimulationJob Prelude.Integer+createSimulationJob_maxJobDurationInSeconds = Lens.lens (\CreateSimulationJob' {maxJobDurationInSeconds} -> maxJobDurationInSeconds) (\s@CreateSimulationJob' {} a -> s {maxJobDurationInSeconds = a} :: CreateSimulationJob)++-- | The IAM role name that allows the simulation instance to call the AWS+-- APIs that are specified in its associated policies on your behalf. This+-- is how credentials are passed in to your simulation job.+createSimulationJob_iamRole :: Lens.Lens' CreateSimulationJob Prelude.Text+createSimulationJob_iamRole = Lens.lens (\CreateSimulationJob' {iamRole} -> iamRole) (\s@CreateSimulationJob' {} a -> s {iamRole = a} :: CreateSimulationJob)++instance Core.AWSRequest CreateSimulationJob where+ type+ AWSResponse CreateSimulationJob =+ CreateSimulationJobResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateSimulationJobResponse'+ Prelude.<$> (x Data..?> "arn")+ Prelude.<*> (x Data..?> "clientRequestToken")+ Prelude.<*> (x Data..?> "compute")+ Prelude.<*> (x Data..?> "dataSources" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "failureBehavior")+ Prelude.<*> (x Data..?> "failureCode")+ Prelude.<*> (x Data..?> "iamRole")+ Prelude.<*> (x Data..?> "lastStartedAt")+ Prelude.<*> (x Data..?> "lastUpdatedAt")+ Prelude.<*> (x Data..?> "loggingConfig")+ Prelude.<*> (x Data..?> "maxJobDurationInSeconds")+ Prelude.<*> (x Data..?> "outputLocation")+ Prelude.<*> (x Data..?> "robotApplications")+ Prelude.<*> (x Data..?> "simulationApplications")+ Prelude.<*> (x Data..?> "simulationTimeMillis")+ Prelude.<*> (x Data..?> "status")+ Prelude.<*> (x Data..?> "tags" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "vpcConfig")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateSimulationJob where+ hashWithSalt _salt CreateSimulationJob' {..} =+ _salt+ `Prelude.hashWithSalt` clientRequestToken+ `Prelude.hashWithSalt` compute+ `Prelude.hashWithSalt` dataSources+ `Prelude.hashWithSalt` failureBehavior+ `Prelude.hashWithSalt` loggingConfig+ `Prelude.hashWithSalt` outputLocation+ `Prelude.hashWithSalt` robotApplications+ `Prelude.hashWithSalt` simulationApplications+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` vpcConfig+ `Prelude.hashWithSalt` maxJobDurationInSeconds+ `Prelude.hashWithSalt` iamRole++instance Prelude.NFData CreateSimulationJob where+ rnf CreateSimulationJob' {..} =+ Prelude.rnf clientRequestToken+ `Prelude.seq` Prelude.rnf compute+ `Prelude.seq` Prelude.rnf dataSources+ `Prelude.seq` Prelude.rnf failureBehavior+ `Prelude.seq` Prelude.rnf loggingConfig+ `Prelude.seq` Prelude.rnf outputLocation+ `Prelude.seq` Prelude.rnf robotApplications+ `Prelude.seq` Prelude.rnf simulationApplications+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf vpcConfig+ `Prelude.seq` Prelude.rnf maxJobDurationInSeconds+ `Prelude.seq` Prelude.rnf iamRole++instance Data.ToHeaders CreateSimulationJob where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateSimulationJob where+ toJSON CreateSimulationJob' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("clientRequestToken" Data..=)+ Prelude.<$> clientRequestToken,+ ("compute" Data..=) Prelude.<$> compute,+ ("dataSources" Data..=) Prelude.<$> dataSources,+ ("failureBehavior" Data..=)+ Prelude.<$> failureBehavior,+ ("loggingConfig" Data..=) Prelude.<$> loggingConfig,+ ("outputLocation" Data..=)+ Prelude.<$> outputLocation,+ ("robotApplications" Data..=)+ Prelude.<$> robotApplications,+ ("simulationApplications" Data..=)+ Prelude.<$> simulationApplications,+ ("tags" Data..=) Prelude.<$> tags,+ ("vpcConfig" Data..=) Prelude.<$> vpcConfig,+ Prelude.Just+ ( "maxJobDurationInSeconds"+ Data..= maxJobDurationInSeconds+ ),+ Prelude.Just ("iamRole" Data..= iamRole)+ ]+ )++instance Data.ToPath CreateSimulationJob where+ toPath = Prelude.const "/createSimulationJob"++instance Data.ToQuery CreateSimulationJob where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateSimulationJobResponse' smart constructor.+data CreateSimulationJobResponse = CreateSimulationJobResponse'+ { -- | The Amazon Resource Name (ARN) of the simulation job.+ arn :: Prelude.Maybe Prelude.Text,+ -- | Unique, case-sensitive identifier that you provide to ensure the+ -- idempotency of the request.+ clientRequestToken :: Prelude.Maybe Prelude.Text,+ -- | Compute information for the simulation job.+ compute :: Prelude.Maybe ComputeResponse,+ -- | The data sources for the simulation job.+ dataSources :: Prelude.Maybe [DataSource],+ -- | the failure behavior for the simulation job.+ failureBehavior :: Prelude.Maybe FailureBehavior,+ -- | The failure code of the simulation job if it failed:+ --+ -- [InternalServiceError]+ -- Internal service error.+ --+ -- [RobotApplicationCrash]+ -- Robot application exited abnormally.+ --+ -- [SimulationApplicationCrash]+ -- Simulation application exited abnormally.+ --+ -- [BadPermissionsRobotApplication]+ -- Robot application bundle could not be downloaded.+ --+ -- [BadPermissionsSimulationApplication]+ -- Simulation application bundle could not be downloaded.+ --+ -- [BadPermissionsS3Output]+ -- Unable to publish outputs to customer-provided S3 bucket.+ --+ -- [BadPermissionsCloudwatchLogs]+ -- Unable to publish logs to customer-provided CloudWatch Logs+ -- resource.+ --+ -- [SubnetIpLimitExceeded]+ -- Subnet IP limit exceeded.+ --+ -- [ENILimitExceeded]+ -- ENI limit exceeded.+ --+ -- [BadPermissionsUserCredentials]+ -- Unable to use the Role provided.+ --+ -- [InvalidBundleRobotApplication]+ -- Robot bundle cannot be extracted (invalid format, bundling error, or+ -- other issue).+ --+ -- [InvalidBundleSimulationApplication]+ -- Simulation bundle cannot be extracted (invalid format, bundling+ -- error, or other issue).+ --+ -- [RobotApplicationVersionMismatchedEtag]+ -- Etag for RobotApplication does not match value during version+ -- creation.+ --+ -- [SimulationApplicationVersionMismatchedEtag]+ -- Etag for SimulationApplication does not match value during version+ -- creation.+ failureCode :: Prelude.Maybe SimulationJobErrorCode,+ -- | The IAM role that allows the simulation job to call the AWS APIs that+ -- are specified in its associated policies on your behalf.+ iamRole :: Prelude.Maybe Prelude.Text,+ -- | The time, in milliseconds since the epoch, when the simulation job was+ -- last started.+ lastStartedAt :: Prelude.Maybe Data.POSIX,+ -- | The time, in milliseconds since the epoch, when the simulation job was+ -- last updated.+ lastUpdatedAt :: Prelude.Maybe Data.POSIX,+ -- | The logging configuration.+ loggingConfig :: Prelude.Maybe LoggingConfig,+ -- | The maximum simulation job duration in seconds.+ maxJobDurationInSeconds :: Prelude.Maybe Prelude.Integer,+ -- | Simulation job output files location.+ outputLocation :: Prelude.Maybe OutputLocation,+ -- | The robot application used by the simulation job.+ robotApplications :: Prelude.Maybe (Prelude.NonEmpty RobotApplicationConfig),+ -- | The simulation application used by the simulation job.+ simulationApplications :: Prelude.Maybe (Prelude.NonEmpty SimulationApplicationConfig),+ -- | The simulation job execution duration in milliseconds.+ simulationTimeMillis :: Prelude.Maybe Prelude.Integer,+ -- | The status of the simulation job.+ status :: Prelude.Maybe SimulationJobStatus,+ -- | The list of all tags added to the simulation job.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | Information about the vpc configuration.+ vpcConfig :: Prelude.Maybe VPCConfigResponse,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateSimulationJobResponse' 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', 'createSimulationJobResponse_arn' - The Amazon Resource Name (ARN) of the simulation job.+--+-- 'clientRequestToken', 'createSimulationJobResponse_clientRequestToken' - Unique, case-sensitive identifier that you provide to ensure the+-- idempotency of the request.+--+-- 'compute', 'createSimulationJobResponse_compute' - Compute information for the simulation job.+--+-- 'dataSources', 'createSimulationJobResponse_dataSources' - The data sources for the simulation job.+--+-- 'failureBehavior', 'createSimulationJobResponse_failureBehavior' - the failure behavior for the simulation job.+--+-- 'failureCode', 'createSimulationJobResponse_failureCode' - The failure code of the simulation job if it failed:+--+-- [InternalServiceError]+-- Internal service error.+--+-- [RobotApplicationCrash]+-- Robot application exited abnormally.+--+-- [SimulationApplicationCrash]+-- Simulation application exited abnormally.+--+-- [BadPermissionsRobotApplication]+-- Robot application bundle could not be downloaded.+--+-- [BadPermissionsSimulationApplication]+-- Simulation application bundle could not be downloaded.+--+-- [BadPermissionsS3Output]+-- Unable to publish outputs to customer-provided S3 bucket.+--+-- [BadPermissionsCloudwatchLogs]+-- Unable to publish logs to customer-provided CloudWatch Logs+-- resource.+--+-- [SubnetIpLimitExceeded]+-- Subnet IP limit exceeded.+--+-- [ENILimitExceeded]+-- ENI limit exceeded.+--+-- [BadPermissionsUserCredentials]+-- Unable to use the Role provided.+--+-- [InvalidBundleRobotApplication]+-- Robot bundle cannot be extracted (invalid format, bundling error, or+-- other issue).+--+-- [InvalidBundleSimulationApplication]+-- Simulation bundle cannot be extracted (invalid format, bundling+-- error, or other issue).+--+-- [RobotApplicationVersionMismatchedEtag]+-- Etag for RobotApplication does not match value during version+-- creation.+--+-- [SimulationApplicationVersionMismatchedEtag]+-- Etag for SimulationApplication does not match value during version+-- creation.+--+-- 'iamRole', 'createSimulationJobResponse_iamRole' - The IAM role that allows the simulation job to call the AWS APIs that+-- are specified in its associated policies on your behalf.+--+-- 'lastStartedAt', 'createSimulationJobResponse_lastStartedAt' - The time, in milliseconds since the epoch, when the simulation job was+-- last started.+--+-- 'lastUpdatedAt', 'createSimulationJobResponse_lastUpdatedAt' - The time, in milliseconds since the epoch, when the simulation job was+-- last updated.+--+-- 'loggingConfig', 'createSimulationJobResponse_loggingConfig' - The logging configuration.+--+-- 'maxJobDurationInSeconds', 'createSimulationJobResponse_maxJobDurationInSeconds' - The maximum simulation job duration in seconds.+--+-- 'outputLocation', 'createSimulationJobResponse_outputLocation' - Simulation job output files location.+--+-- 'robotApplications', 'createSimulationJobResponse_robotApplications' - The robot application used by the simulation job.+--+-- 'simulationApplications', 'createSimulationJobResponse_simulationApplications' - The simulation application used by the simulation job.+--+-- 'simulationTimeMillis', 'createSimulationJobResponse_simulationTimeMillis' - The simulation job execution duration in milliseconds.+--+-- 'status', 'createSimulationJobResponse_status' - The status of the simulation job.+--+-- 'tags', 'createSimulationJobResponse_tags' - The list of all tags added to the simulation job.+--+-- 'vpcConfig', 'createSimulationJobResponse_vpcConfig' - Information about the vpc configuration.+--+-- 'httpStatus', 'createSimulationJobResponse_httpStatus' - The response's http status code.+newCreateSimulationJobResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateSimulationJobResponse+newCreateSimulationJobResponse pHttpStatus_ =+ CreateSimulationJobResponse'+ { arn = Prelude.Nothing,+ clientRequestToken = Prelude.Nothing,+ compute = Prelude.Nothing,+ dataSources = Prelude.Nothing,+ failureBehavior = Prelude.Nothing,+ failureCode = Prelude.Nothing,+ iamRole = Prelude.Nothing,+ lastStartedAt = Prelude.Nothing,+ lastUpdatedAt = Prelude.Nothing,+ loggingConfig = Prelude.Nothing,+ maxJobDurationInSeconds = Prelude.Nothing,+ outputLocation = Prelude.Nothing,+ robotApplications = Prelude.Nothing,+ simulationApplications = Prelude.Nothing,+ simulationTimeMillis = Prelude.Nothing,+ status = Prelude.Nothing,+ tags = Prelude.Nothing,+ vpcConfig = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The Amazon Resource Name (ARN) of the simulation job.+createSimulationJobResponse_arn :: Lens.Lens' CreateSimulationJobResponse (Prelude.Maybe Prelude.Text)+createSimulationJobResponse_arn = Lens.lens (\CreateSimulationJobResponse' {arn} -> arn) (\s@CreateSimulationJobResponse' {} a -> s {arn = a} :: CreateSimulationJobResponse)++-- | Unique, case-sensitive identifier that you provide to ensure the+-- idempotency of the request.+createSimulationJobResponse_clientRequestToken :: Lens.Lens' CreateSimulationJobResponse (Prelude.Maybe Prelude.Text)+createSimulationJobResponse_clientRequestToken = Lens.lens (\CreateSimulationJobResponse' {clientRequestToken} -> clientRequestToken) (\s@CreateSimulationJobResponse' {} a -> s {clientRequestToken = a} :: CreateSimulationJobResponse)++-- | Compute information for the simulation job.+createSimulationJobResponse_compute :: Lens.Lens' CreateSimulationJobResponse (Prelude.Maybe ComputeResponse)+createSimulationJobResponse_compute = Lens.lens (\CreateSimulationJobResponse' {compute} -> compute) (\s@CreateSimulationJobResponse' {} a -> s {compute = a} :: CreateSimulationJobResponse)++-- | The data sources for the simulation job.+createSimulationJobResponse_dataSources :: Lens.Lens' CreateSimulationJobResponse (Prelude.Maybe [DataSource])+createSimulationJobResponse_dataSources = Lens.lens (\CreateSimulationJobResponse' {dataSources} -> dataSources) (\s@CreateSimulationJobResponse' {} a -> s {dataSources = a} :: CreateSimulationJobResponse) Prelude.. Lens.mapping Lens.coerced++-- | the failure behavior for the simulation job.+createSimulationJobResponse_failureBehavior :: Lens.Lens' CreateSimulationJobResponse (Prelude.Maybe FailureBehavior)+createSimulationJobResponse_failureBehavior = Lens.lens (\CreateSimulationJobResponse' {failureBehavior} -> failureBehavior) (\s@CreateSimulationJobResponse' {} a -> s {failureBehavior = a} :: CreateSimulationJobResponse)++-- | The failure code of the simulation job if it failed:+--+-- [InternalServiceError]+-- Internal service error.+--+-- [RobotApplicationCrash]+-- Robot application exited abnormally.+--+-- [SimulationApplicationCrash]+-- Simulation application exited abnormally.+--+-- [BadPermissionsRobotApplication]+-- Robot application bundle could not be downloaded.+--+-- [BadPermissionsSimulationApplication]+-- Simulation application bundle could not be downloaded.+--+-- [BadPermissionsS3Output]+-- Unable to publish outputs to customer-provided S3 bucket.+--+-- [BadPermissionsCloudwatchLogs]+-- Unable to publish logs to customer-provided CloudWatch Logs+-- resource.+--+-- [SubnetIpLimitExceeded]+-- Subnet IP limit exceeded.+--+-- [ENILimitExceeded]+-- ENI limit exceeded.+--+-- [BadPermissionsUserCredentials]+-- Unable to use the Role provided.+--+-- [InvalidBundleRobotApplication]+-- Robot bundle cannot be extracted (invalid format, bundling error, or+-- other issue).+--+-- [InvalidBundleSimulationApplication]+-- Simulation bundle cannot be extracted (invalid format, bundling+-- error, or other issue).+--+-- [RobotApplicationVersionMismatchedEtag]+-- Etag for RobotApplication does not match value during version+-- creation.+--+-- [SimulationApplicationVersionMismatchedEtag]+-- Etag for SimulationApplication does not match value during version+-- creation.+createSimulationJobResponse_failureCode :: Lens.Lens' CreateSimulationJobResponse (Prelude.Maybe SimulationJobErrorCode)+createSimulationJobResponse_failureCode = Lens.lens (\CreateSimulationJobResponse' {failureCode} -> failureCode) (\s@CreateSimulationJobResponse' {} a -> s {failureCode = a} :: CreateSimulationJobResponse)++-- | The IAM role that allows the simulation job to call the AWS APIs that+-- are specified in its associated policies on your behalf.+createSimulationJobResponse_iamRole :: Lens.Lens' CreateSimulationJobResponse (Prelude.Maybe Prelude.Text)+createSimulationJobResponse_iamRole = Lens.lens (\CreateSimulationJobResponse' {iamRole} -> iamRole) (\s@CreateSimulationJobResponse' {} a -> s {iamRole = a} :: CreateSimulationJobResponse)++-- | The time, in milliseconds since the epoch, when the simulation job was+-- last started.+createSimulationJobResponse_lastStartedAt :: Lens.Lens' CreateSimulationJobResponse (Prelude.Maybe Prelude.UTCTime)+createSimulationJobResponse_lastStartedAt = Lens.lens (\CreateSimulationJobResponse' {lastStartedAt} -> lastStartedAt) (\s@CreateSimulationJobResponse' {} a -> s {lastStartedAt = a} :: CreateSimulationJobResponse) Prelude.. Lens.mapping Data._Time++-- | The time, in milliseconds since the epoch, when the simulation job was+-- last updated.+createSimulationJobResponse_lastUpdatedAt :: Lens.Lens' CreateSimulationJobResponse (Prelude.Maybe Prelude.UTCTime)+createSimulationJobResponse_lastUpdatedAt = Lens.lens (\CreateSimulationJobResponse' {lastUpdatedAt} -> lastUpdatedAt) (\s@CreateSimulationJobResponse' {} a -> s {lastUpdatedAt = a} :: CreateSimulationJobResponse) Prelude.. Lens.mapping Data._Time++-- | The logging configuration.+createSimulationJobResponse_loggingConfig :: Lens.Lens' CreateSimulationJobResponse (Prelude.Maybe LoggingConfig)+createSimulationJobResponse_loggingConfig = Lens.lens (\CreateSimulationJobResponse' {loggingConfig} -> loggingConfig) (\s@CreateSimulationJobResponse' {} a -> s {loggingConfig = a} :: CreateSimulationJobResponse)++-- | The maximum simulation job duration in seconds.+createSimulationJobResponse_maxJobDurationInSeconds :: Lens.Lens' CreateSimulationJobResponse (Prelude.Maybe Prelude.Integer)+createSimulationJobResponse_maxJobDurationInSeconds = Lens.lens (\CreateSimulationJobResponse' {maxJobDurationInSeconds} -> maxJobDurationInSeconds) (\s@CreateSimulationJobResponse' {} a -> s {maxJobDurationInSeconds = a} :: CreateSimulationJobResponse)++-- | Simulation job output files location.+createSimulationJobResponse_outputLocation :: Lens.Lens' CreateSimulationJobResponse (Prelude.Maybe OutputLocation)+createSimulationJobResponse_outputLocation = Lens.lens (\CreateSimulationJobResponse' {outputLocation} -> outputLocation) (\s@CreateSimulationJobResponse' {} a -> s {outputLocation = a} :: CreateSimulationJobResponse)++-- | The robot application used by the simulation job.+createSimulationJobResponse_robotApplications :: Lens.Lens' CreateSimulationJobResponse (Prelude.Maybe (Prelude.NonEmpty RobotApplicationConfig))+createSimulationJobResponse_robotApplications = Lens.lens (\CreateSimulationJobResponse' {robotApplications} -> robotApplications) (\s@CreateSimulationJobResponse' {} a -> s {robotApplications = a} :: CreateSimulationJobResponse) Prelude.. Lens.mapping Lens.coerced++-- | The simulation application used by the simulation job.+createSimulationJobResponse_simulationApplications :: Lens.Lens' CreateSimulationJobResponse (Prelude.Maybe (Prelude.NonEmpty SimulationApplicationConfig))+createSimulationJobResponse_simulationApplications = Lens.lens (\CreateSimulationJobResponse' {simulationApplications} -> simulationApplications) (\s@CreateSimulationJobResponse' {} a -> s {simulationApplications = a} :: CreateSimulationJobResponse) Prelude.. Lens.mapping Lens.coerced++-- | The simulation job execution duration in milliseconds.+createSimulationJobResponse_simulationTimeMillis :: Lens.Lens' CreateSimulationJobResponse (Prelude.Maybe Prelude.Integer)+createSimulationJobResponse_simulationTimeMillis = Lens.lens (\CreateSimulationJobResponse' {simulationTimeMillis} -> simulationTimeMillis) (\s@CreateSimulationJobResponse' {} a -> s {simulationTimeMillis = a} :: CreateSimulationJobResponse)++-- | The status of the simulation job.+createSimulationJobResponse_status :: Lens.Lens' CreateSimulationJobResponse (Prelude.Maybe SimulationJobStatus)+createSimulationJobResponse_status = Lens.lens (\CreateSimulationJobResponse' {status} -> status) (\s@CreateSimulationJobResponse' {} a -> s {status = a} :: CreateSimulationJobResponse)++-- | The list of all tags added to the simulation job.+createSimulationJobResponse_tags :: Lens.Lens' CreateSimulationJobResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createSimulationJobResponse_tags = Lens.lens (\CreateSimulationJobResponse' {tags} -> tags) (\s@CreateSimulationJobResponse' {} a -> s {tags = a} :: CreateSimulationJobResponse) Prelude.. Lens.mapping Lens.coerced++-- | Information about the vpc configuration.+createSimulationJobResponse_vpcConfig :: Lens.Lens' CreateSimulationJobResponse (Prelude.Maybe VPCConfigResponse)+createSimulationJobResponse_vpcConfig = Lens.lens (\CreateSimulationJobResponse' {vpcConfig} -> vpcConfig) (\s@CreateSimulationJobResponse' {} a -> s {vpcConfig = a} :: CreateSimulationJobResponse)++-- | The response's http status code.+createSimulationJobResponse_httpStatus :: Lens.Lens' CreateSimulationJobResponse Prelude.Int+createSimulationJobResponse_httpStatus = Lens.lens (\CreateSimulationJobResponse' {httpStatus} -> httpStatus) (\s@CreateSimulationJobResponse' {} a -> s {httpStatus = a} :: CreateSimulationJobResponse)++instance Prelude.NFData CreateSimulationJobResponse where+ rnf CreateSimulationJobResponse' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf clientRequestToken+ `Prelude.seq` Prelude.rnf compute+ `Prelude.seq` Prelude.rnf dataSources+ `Prelude.seq` Prelude.rnf failureBehavior+ `Prelude.seq` Prelude.rnf failureCode+ `Prelude.seq` Prelude.rnf iamRole+ `Prelude.seq` Prelude.rnf lastStartedAt+ `Prelude.seq` Prelude.rnf lastUpdatedAt+ `Prelude.seq` Prelude.rnf loggingConfig+ `Prelude.seq` Prelude.rnf maxJobDurationInSeconds+ `Prelude.seq` Prelude.rnf outputLocation+ `Prelude.seq` Prelude.rnf robotApplications+ `Prelude.seq` Prelude.rnf simulationApplications+ `Prelude.seq` Prelude.rnf simulationTimeMillis+ `Prelude.seq` Prelude.rnf status+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf vpcConfig+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/RobOMaker/CreateWorldExportJob.hs view
@@ -0,0 +1,463 @@+{-# 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.RobOMaker.CreateWorldExportJob+-- 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 a world export job.+module Amazonka.RobOMaker.CreateWorldExportJob+ ( -- * Creating a Request+ CreateWorldExportJob (..),+ newCreateWorldExportJob,++ -- * Request Lenses+ createWorldExportJob_clientRequestToken,+ createWorldExportJob_tags,+ createWorldExportJob_worlds,+ createWorldExportJob_outputLocation,+ createWorldExportJob_iamRole,++ -- * Destructuring the Response+ CreateWorldExportJobResponse (..),+ newCreateWorldExportJobResponse,++ -- * Response Lenses+ createWorldExportJobResponse_arn,+ createWorldExportJobResponse_clientRequestToken,+ createWorldExportJobResponse_createdAt,+ createWorldExportJobResponse_failureCode,+ createWorldExportJobResponse_iamRole,+ createWorldExportJobResponse_outputLocation,+ createWorldExportJobResponse_status,+ createWorldExportJobResponse_tags,+ createWorldExportJobResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.RobOMaker.Types++-- | /See:/ 'newCreateWorldExportJob' smart constructor.+data CreateWorldExportJob = CreateWorldExportJob'+ { -- | Unique, case-sensitive identifier that you provide to ensure the+ -- idempotency of the request.+ clientRequestToken :: Prelude.Maybe Prelude.Text,+ -- | A map that contains tag keys and tag values that are attached to the+ -- world export job.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | A list of Amazon Resource Names (arns) that correspond to worlds to+ -- export.+ worlds :: Prelude.NonEmpty Prelude.Text,+ outputLocation :: OutputLocation,+ -- | The IAM role that the world export process uses to access the Amazon S3+ -- bucket and put the export.+ iamRole :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateWorldExportJob' 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:+--+-- 'clientRequestToken', 'createWorldExportJob_clientRequestToken' - Unique, case-sensitive identifier that you provide to ensure the+-- idempotency of the request.+--+-- 'tags', 'createWorldExportJob_tags' - A map that contains tag keys and tag values that are attached to the+-- world export job.+--+-- 'worlds', 'createWorldExportJob_worlds' - A list of Amazon Resource Names (arns) that correspond to worlds to+-- export.+--+-- 'outputLocation', 'createWorldExportJob_outputLocation' - Undocumented member.+--+-- 'iamRole', 'createWorldExportJob_iamRole' - The IAM role that the world export process uses to access the Amazon S3+-- bucket and put the export.+newCreateWorldExportJob ::+ -- | 'worlds'+ Prelude.NonEmpty Prelude.Text ->+ -- | 'outputLocation'+ OutputLocation ->+ -- | 'iamRole'+ Prelude.Text ->+ CreateWorldExportJob+newCreateWorldExportJob+ pWorlds_+ pOutputLocation_+ pIamRole_ =+ CreateWorldExportJob'+ { clientRequestToken =+ Prelude.Nothing,+ tags = Prelude.Nothing,+ worlds = Lens.coerced Lens.# pWorlds_,+ outputLocation = pOutputLocation_,+ iamRole = pIamRole_+ }++-- | Unique, case-sensitive identifier that you provide to ensure the+-- idempotency of the request.+createWorldExportJob_clientRequestToken :: Lens.Lens' CreateWorldExportJob (Prelude.Maybe Prelude.Text)+createWorldExportJob_clientRequestToken = Lens.lens (\CreateWorldExportJob' {clientRequestToken} -> clientRequestToken) (\s@CreateWorldExportJob' {} a -> s {clientRequestToken = a} :: CreateWorldExportJob)++-- | A map that contains tag keys and tag values that are attached to the+-- world export job.+createWorldExportJob_tags :: Lens.Lens' CreateWorldExportJob (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createWorldExportJob_tags = Lens.lens (\CreateWorldExportJob' {tags} -> tags) (\s@CreateWorldExportJob' {} a -> s {tags = a} :: CreateWorldExportJob) Prelude.. Lens.mapping Lens.coerced++-- | A list of Amazon Resource Names (arns) that correspond to worlds to+-- export.+createWorldExportJob_worlds :: Lens.Lens' CreateWorldExportJob (Prelude.NonEmpty Prelude.Text)+createWorldExportJob_worlds = Lens.lens (\CreateWorldExportJob' {worlds} -> worlds) (\s@CreateWorldExportJob' {} a -> s {worlds = a} :: CreateWorldExportJob) Prelude.. Lens.coerced++-- | Undocumented member.+createWorldExportJob_outputLocation :: Lens.Lens' CreateWorldExportJob OutputLocation+createWorldExportJob_outputLocation = Lens.lens (\CreateWorldExportJob' {outputLocation} -> outputLocation) (\s@CreateWorldExportJob' {} a -> s {outputLocation = a} :: CreateWorldExportJob)++-- | The IAM role that the world export process uses to access the Amazon S3+-- bucket and put the export.+createWorldExportJob_iamRole :: Lens.Lens' CreateWorldExportJob Prelude.Text+createWorldExportJob_iamRole = Lens.lens (\CreateWorldExportJob' {iamRole} -> iamRole) (\s@CreateWorldExportJob' {} a -> s {iamRole = a} :: CreateWorldExportJob)++instance Core.AWSRequest CreateWorldExportJob where+ type+ AWSResponse CreateWorldExportJob =+ CreateWorldExportJobResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateWorldExportJobResponse'+ Prelude.<$> (x Data..?> "arn")+ Prelude.<*> (x Data..?> "clientRequestToken")+ Prelude.<*> (x Data..?> "createdAt")+ Prelude.<*> (x Data..?> "failureCode")+ Prelude.<*> (x Data..?> "iamRole")+ Prelude.<*> (x Data..?> "outputLocation")+ Prelude.<*> (x Data..?> "status")+ Prelude.<*> (x Data..?> "tags" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateWorldExportJob where+ hashWithSalt _salt CreateWorldExportJob' {..} =+ _salt+ `Prelude.hashWithSalt` clientRequestToken+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` worlds+ `Prelude.hashWithSalt` outputLocation+ `Prelude.hashWithSalt` iamRole++instance Prelude.NFData CreateWorldExportJob where+ rnf CreateWorldExportJob' {..} =+ Prelude.rnf clientRequestToken+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf worlds+ `Prelude.seq` Prelude.rnf outputLocation+ `Prelude.seq` Prelude.rnf iamRole++instance Data.ToHeaders CreateWorldExportJob where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateWorldExportJob where+ toJSON CreateWorldExportJob' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("clientRequestToken" Data..=)+ Prelude.<$> clientRequestToken,+ ("tags" Data..=) Prelude.<$> tags,+ Prelude.Just ("worlds" Data..= worlds),+ Prelude.Just+ ("outputLocation" Data..= outputLocation),+ Prelude.Just ("iamRole" Data..= iamRole)+ ]+ )++instance Data.ToPath CreateWorldExportJob where+ toPath = Prelude.const "/createWorldExportJob"++instance Data.ToQuery CreateWorldExportJob where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateWorldExportJobResponse' smart constructor.+data CreateWorldExportJobResponse = CreateWorldExportJobResponse'+ { -- | The Amazon Resource Name (ARN) of the world export job.+ arn :: Prelude.Maybe Prelude.Text,+ -- | Unique, case-sensitive identifier that you provide to ensure the+ -- idempotency of the request.+ clientRequestToken :: Prelude.Maybe Prelude.Text,+ -- | The time, in milliseconds since the epoch, when the world export job was+ -- created.+ createdAt :: Prelude.Maybe Data.POSIX,+ -- | The failure code of the world export job if it failed:+ --+ -- [InternalServiceError]+ -- Internal service error.+ --+ -- [LimitExceeded]+ -- The requested resource exceeds the maximum number allowed, or the+ -- number of concurrent stream requests exceeds the maximum number+ -- allowed.+ --+ -- [ResourceNotFound]+ -- The specified resource could not be found.+ --+ -- [RequestThrottled]+ -- The request was throttled.+ --+ -- [InvalidInput]+ -- An input parameter in the request is not valid.+ --+ -- [AllWorldGenerationFailed]+ -- All of the worlds in the world generation job failed. This can+ -- happen if your @worldCount@ is greater than 50 or less than 1.+ --+ -- For more information about troubleshooting WorldForge, see+ -- <https://docs.aws.amazon.com/robomaker/latest/dg/troubleshooting-worldforge.html Troubleshooting Simulation WorldForge>.+ failureCode :: Prelude.Maybe WorldExportJobErrorCode,+ -- | The IAM role that the world export process uses to access the Amazon S3+ -- bucket and put the export.+ iamRole :: Prelude.Maybe Prelude.Text,+ outputLocation :: Prelude.Maybe OutputLocation,+ -- | The status of the world export job.+ --+ -- [Pending]+ -- The world export job request is pending.+ --+ -- [Running]+ -- The world export job is running.+ --+ -- [Completed]+ -- The world export job completed.+ --+ -- [Failed]+ -- The world export job failed. See @failureCode@ for more information.+ --+ -- [Canceled]+ -- The world export job was cancelled.+ --+ -- [Canceling]+ -- The world export job is being cancelled.+ status :: Prelude.Maybe WorldExportJobStatus,+ -- | A map that contains tag keys and tag values that are attached to the+ -- world export job.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateWorldExportJobResponse' 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', 'createWorldExportJobResponse_arn' - The Amazon Resource Name (ARN) of the world export job.+--+-- 'clientRequestToken', 'createWorldExportJobResponse_clientRequestToken' - Unique, case-sensitive identifier that you provide to ensure the+-- idempotency of the request.+--+-- 'createdAt', 'createWorldExportJobResponse_createdAt' - The time, in milliseconds since the epoch, when the world export job was+-- created.+--+-- 'failureCode', 'createWorldExportJobResponse_failureCode' - The failure code of the world export job if it failed:+--+-- [InternalServiceError]+-- Internal service error.+--+-- [LimitExceeded]+-- The requested resource exceeds the maximum number allowed, or the+-- number of concurrent stream requests exceeds the maximum number+-- allowed.+--+-- [ResourceNotFound]+-- The specified resource could not be found.+--+-- [RequestThrottled]+-- The request was throttled.+--+-- [InvalidInput]+-- An input parameter in the request is not valid.+--+-- [AllWorldGenerationFailed]+-- All of the worlds in the world generation job failed. This can+-- happen if your @worldCount@ is greater than 50 or less than 1.+--+-- For more information about troubleshooting WorldForge, see+-- <https://docs.aws.amazon.com/robomaker/latest/dg/troubleshooting-worldforge.html Troubleshooting Simulation WorldForge>.+--+-- 'iamRole', 'createWorldExportJobResponse_iamRole' - The IAM role that the world export process uses to access the Amazon S3+-- bucket and put the export.+--+-- 'outputLocation', 'createWorldExportJobResponse_outputLocation' - Undocumented member.+--+-- 'status', 'createWorldExportJobResponse_status' - The status of the world export job.+--+-- [Pending]+-- The world export job request is pending.+--+-- [Running]+-- The world export job is running.+--+-- [Completed]+-- The world export job completed.+--+-- [Failed]+-- The world export job failed. See @failureCode@ for more information.+--+-- [Canceled]+-- The world export job was cancelled.+--+-- [Canceling]+-- The world export job is being cancelled.+--+-- 'tags', 'createWorldExportJobResponse_tags' - A map that contains tag keys and tag values that are attached to the+-- world export job.+--+-- 'httpStatus', 'createWorldExportJobResponse_httpStatus' - The response's http status code.+newCreateWorldExportJobResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateWorldExportJobResponse+newCreateWorldExportJobResponse pHttpStatus_ =+ CreateWorldExportJobResponse'+ { arn =+ Prelude.Nothing,+ clientRequestToken = Prelude.Nothing,+ createdAt = Prelude.Nothing,+ failureCode = Prelude.Nothing,+ iamRole = Prelude.Nothing,+ outputLocation = Prelude.Nothing,+ status = Prelude.Nothing,+ tags = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The Amazon Resource Name (ARN) of the world export job.+createWorldExportJobResponse_arn :: Lens.Lens' CreateWorldExportJobResponse (Prelude.Maybe Prelude.Text)+createWorldExportJobResponse_arn = Lens.lens (\CreateWorldExportJobResponse' {arn} -> arn) (\s@CreateWorldExportJobResponse' {} a -> s {arn = a} :: CreateWorldExportJobResponse)++-- | Unique, case-sensitive identifier that you provide to ensure the+-- idempotency of the request.+createWorldExportJobResponse_clientRequestToken :: Lens.Lens' CreateWorldExportJobResponse (Prelude.Maybe Prelude.Text)+createWorldExportJobResponse_clientRequestToken = Lens.lens (\CreateWorldExportJobResponse' {clientRequestToken} -> clientRequestToken) (\s@CreateWorldExportJobResponse' {} a -> s {clientRequestToken = a} :: CreateWorldExportJobResponse)++-- | The time, in milliseconds since the epoch, when the world export job was+-- created.+createWorldExportJobResponse_createdAt :: Lens.Lens' CreateWorldExportJobResponse (Prelude.Maybe Prelude.UTCTime)+createWorldExportJobResponse_createdAt = Lens.lens (\CreateWorldExportJobResponse' {createdAt} -> createdAt) (\s@CreateWorldExportJobResponse' {} a -> s {createdAt = a} :: CreateWorldExportJobResponse) Prelude.. Lens.mapping Data._Time++-- | The failure code of the world export job if it failed:+--+-- [InternalServiceError]+-- Internal service error.+--+-- [LimitExceeded]+-- The requested resource exceeds the maximum number allowed, or the+-- number of concurrent stream requests exceeds the maximum number+-- allowed.+--+-- [ResourceNotFound]+-- The specified resource could not be found.+--+-- [RequestThrottled]+-- The request was throttled.+--+-- [InvalidInput]+-- An input parameter in the request is not valid.+--+-- [AllWorldGenerationFailed]+-- All of the worlds in the world generation job failed. This can+-- happen if your @worldCount@ is greater than 50 or less than 1.+--+-- For more information about troubleshooting WorldForge, see+-- <https://docs.aws.amazon.com/robomaker/latest/dg/troubleshooting-worldforge.html Troubleshooting Simulation WorldForge>.+createWorldExportJobResponse_failureCode :: Lens.Lens' CreateWorldExportJobResponse (Prelude.Maybe WorldExportJobErrorCode)+createWorldExportJobResponse_failureCode = Lens.lens (\CreateWorldExportJobResponse' {failureCode} -> failureCode) (\s@CreateWorldExportJobResponse' {} a -> s {failureCode = a} :: CreateWorldExportJobResponse)++-- | The IAM role that the world export process uses to access the Amazon S3+-- bucket and put the export.+createWorldExportJobResponse_iamRole :: Lens.Lens' CreateWorldExportJobResponse (Prelude.Maybe Prelude.Text)+createWorldExportJobResponse_iamRole = Lens.lens (\CreateWorldExportJobResponse' {iamRole} -> iamRole) (\s@CreateWorldExportJobResponse' {} a -> s {iamRole = a} :: CreateWorldExportJobResponse)++-- | Undocumented member.+createWorldExportJobResponse_outputLocation :: Lens.Lens' CreateWorldExportJobResponse (Prelude.Maybe OutputLocation)+createWorldExportJobResponse_outputLocation = Lens.lens (\CreateWorldExportJobResponse' {outputLocation} -> outputLocation) (\s@CreateWorldExportJobResponse' {} a -> s {outputLocation = a} :: CreateWorldExportJobResponse)++-- | The status of the world export job.+--+-- [Pending]+-- The world export job request is pending.+--+-- [Running]+-- The world export job is running.+--+-- [Completed]+-- The world export job completed.+--+-- [Failed]+-- The world export job failed. See @failureCode@ for more information.+--+-- [Canceled]+-- The world export job was cancelled.+--+-- [Canceling]+-- The world export job is being cancelled.+createWorldExportJobResponse_status :: Lens.Lens' CreateWorldExportJobResponse (Prelude.Maybe WorldExportJobStatus)+createWorldExportJobResponse_status = Lens.lens (\CreateWorldExportJobResponse' {status} -> status) (\s@CreateWorldExportJobResponse' {} a -> s {status = a} :: CreateWorldExportJobResponse)++-- | A map that contains tag keys and tag values that are attached to the+-- world export job.+createWorldExportJobResponse_tags :: Lens.Lens' CreateWorldExportJobResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createWorldExportJobResponse_tags = Lens.lens (\CreateWorldExportJobResponse' {tags} -> tags) (\s@CreateWorldExportJobResponse' {} a -> s {tags = a} :: CreateWorldExportJobResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+createWorldExportJobResponse_httpStatus :: Lens.Lens' CreateWorldExportJobResponse Prelude.Int+createWorldExportJobResponse_httpStatus = Lens.lens (\CreateWorldExportJobResponse' {httpStatus} -> httpStatus) (\s@CreateWorldExportJobResponse' {} a -> s {httpStatus = a} :: CreateWorldExportJobResponse)++instance Prelude.NFData CreateWorldExportJobResponse where+ rnf CreateWorldExportJobResponse' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf clientRequestToken+ `Prelude.seq` Prelude.rnf createdAt+ `Prelude.seq` Prelude.rnf failureCode+ `Prelude.seq` Prelude.rnf iamRole+ `Prelude.seq` Prelude.rnf outputLocation+ `Prelude.seq` Prelude.rnf status+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/RobOMaker/CreateWorldGenerationJob.hs view
@@ -0,0 +1,465 @@+{-# 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.RobOMaker.CreateWorldGenerationJob+-- 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 worlds using the specified template.+module Amazonka.RobOMaker.CreateWorldGenerationJob+ ( -- * Creating a Request+ CreateWorldGenerationJob (..),+ newCreateWorldGenerationJob,++ -- * Request Lenses+ createWorldGenerationJob_clientRequestToken,+ createWorldGenerationJob_tags,+ createWorldGenerationJob_worldTags,+ createWorldGenerationJob_template,+ createWorldGenerationJob_worldCount,++ -- * Destructuring the Response+ CreateWorldGenerationJobResponse (..),+ newCreateWorldGenerationJobResponse,++ -- * Response Lenses+ createWorldGenerationJobResponse_arn,+ createWorldGenerationJobResponse_clientRequestToken,+ createWorldGenerationJobResponse_createdAt,+ createWorldGenerationJobResponse_failureCode,+ createWorldGenerationJobResponse_status,+ createWorldGenerationJobResponse_tags,+ createWorldGenerationJobResponse_template,+ createWorldGenerationJobResponse_worldCount,+ createWorldGenerationJobResponse_worldTags,+ createWorldGenerationJobResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.RobOMaker.Types++-- | /See:/ 'newCreateWorldGenerationJob' smart constructor.+data CreateWorldGenerationJob = CreateWorldGenerationJob'+ { -- | Unique, case-sensitive identifier that you provide to ensure the+ -- idempotency of the request.+ clientRequestToken :: Prelude.Maybe Prelude.Text,+ -- | A map that contains tag keys and tag values that are attached to the+ -- world generator job.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | A map that contains tag keys and tag values that are attached to the+ -- generated worlds.+ worldTags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The Amazon Resource Name (arn) of the world template describing the+ -- worlds you want to create.+ template :: Prelude.Text,+ -- | Information about the world count.+ worldCount :: WorldCount+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateWorldGenerationJob' 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:+--+-- 'clientRequestToken', 'createWorldGenerationJob_clientRequestToken' - Unique, case-sensitive identifier that you provide to ensure the+-- idempotency of the request.+--+-- 'tags', 'createWorldGenerationJob_tags' - A map that contains tag keys and tag values that are attached to the+-- world generator job.+--+-- 'worldTags', 'createWorldGenerationJob_worldTags' - A map that contains tag keys and tag values that are attached to the+-- generated worlds.+--+-- 'template', 'createWorldGenerationJob_template' - The Amazon Resource Name (arn) of the world template describing the+-- worlds you want to create.+--+-- 'worldCount', 'createWorldGenerationJob_worldCount' - Information about the world count.+newCreateWorldGenerationJob ::+ -- | 'template'+ Prelude.Text ->+ -- | 'worldCount'+ WorldCount ->+ CreateWorldGenerationJob+newCreateWorldGenerationJob pTemplate_ pWorldCount_ =+ CreateWorldGenerationJob'+ { clientRequestToken =+ Prelude.Nothing,+ tags = Prelude.Nothing,+ worldTags = Prelude.Nothing,+ template = pTemplate_,+ worldCount = pWorldCount_+ }++-- | Unique, case-sensitive identifier that you provide to ensure the+-- idempotency of the request.+createWorldGenerationJob_clientRequestToken :: Lens.Lens' CreateWorldGenerationJob (Prelude.Maybe Prelude.Text)+createWorldGenerationJob_clientRequestToken = Lens.lens (\CreateWorldGenerationJob' {clientRequestToken} -> clientRequestToken) (\s@CreateWorldGenerationJob' {} a -> s {clientRequestToken = a} :: CreateWorldGenerationJob)++-- | A map that contains tag keys and tag values that are attached to the+-- world generator job.+createWorldGenerationJob_tags :: Lens.Lens' CreateWorldGenerationJob (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createWorldGenerationJob_tags = Lens.lens (\CreateWorldGenerationJob' {tags} -> tags) (\s@CreateWorldGenerationJob' {} a -> s {tags = a} :: CreateWorldGenerationJob) Prelude.. Lens.mapping Lens.coerced++-- | A map that contains tag keys and tag values that are attached to the+-- generated worlds.+createWorldGenerationJob_worldTags :: Lens.Lens' CreateWorldGenerationJob (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createWorldGenerationJob_worldTags = Lens.lens (\CreateWorldGenerationJob' {worldTags} -> worldTags) (\s@CreateWorldGenerationJob' {} a -> s {worldTags = a} :: CreateWorldGenerationJob) Prelude.. Lens.mapping Lens.coerced++-- | The Amazon Resource Name (arn) of the world template describing the+-- worlds you want to create.+createWorldGenerationJob_template :: Lens.Lens' CreateWorldGenerationJob Prelude.Text+createWorldGenerationJob_template = Lens.lens (\CreateWorldGenerationJob' {template} -> template) (\s@CreateWorldGenerationJob' {} a -> s {template = a} :: CreateWorldGenerationJob)++-- | Information about the world count.+createWorldGenerationJob_worldCount :: Lens.Lens' CreateWorldGenerationJob WorldCount+createWorldGenerationJob_worldCount = Lens.lens (\CreateWorldGenerationJob' {worldCount} -> worldCount) (\s@CreateWorldGenerationJob' {} a -> s {worldCount = a} :: CreateWorldGenerationJob)++instance Core.AWSRequest CreateWorldGenerationJob where+ type+ AWSResponse CreateWorldGenerationJob =+ CreateWorldGenerationJobResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateWorldGenerationJobResponse'+ Prelude.<$> (x Data..?> "arn")+ Prelude.<*> (x Data..?> "clientRequestToken")+ Prelude.<*> (x Data..?> "createdAt")+ Prelude.<*> (x Data..?> "failureCode")+ Prelude.<*> (x Data..?> "status")+ Prelude.<*> (x Data..?> "tags" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "template")+ Prelude.<*> (x Data..?> "worldCount")+ Prelude.<*> (x Data..?> "worldTags" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateWorldGenerationJob where+ hashWithSalt _salt CreateWorldGenerationJob' {..} =+ _salt+ `Prelude.hashWithSalt` clientRequestToken+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` worldTags+ `Prelude.hashWithSalt` template+ `Prelude.hashWithSalt` worldCount++instance Prelude.NFData CreateWorldGenerationJob where+ rnf CreateWorldGenerationJob' {..} =+ Prelude.rnf clientRequestToken+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf worldTags+ `Prelude.seq` Prelude.rnf template+ `Prelude.seq` Prelude.rnf worldCount++instance Data.ToHeaders CreateWorldGenerationJob where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateWorldGenerationJob where+ toJSON CreateWorldGenerationJob' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("clientRequestToken" Data..=)+ Prelude.<$> clientRequestToken,+ ("tags" Data..=) Prelude.<$> tags,+ ("worldTags" Data..=) Prelude.<$> worldTags,+ Prelude.Just ("template" Data..= template),+ Prelude.Just ("worldCount" Data..= worldCount)+ ]+ )++instance Data.ToPath CreateWorldGenerationJob where+ toPath = Prelude.const "/createWorldGenerationJob"++instance Data.ToQuery CreateWorldGenerationJob where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateWorldGenerationJobResponse' smart constructor.+data CreateWorldGenerationJobResponse = CreateWorldGenerationJobResponse'+ { -- | The Amazon Resource Name (ARN) of the world generator job.+ arn :: Prelude.Maybe Prelude.Text,+ -- | Unique, case-sensitive identifier that you provide to ensure the+ -- idempotency of the request.+ clientRequestToken :: Prelude.Maybe Prelude.Text,+ -- | The time, in milliseconds since the epoch, when the world generator job+ -- was created.+ createdAt :: Prelude.Maybe Data.POSIX,+ -- | The failure code of the world generator job if it failed:+ --+ -- [InternalServiceError]+ -- Internal service error.+ --+ -- [LimitExceeded]+ -- The requested resource exceeds the maximum number allowed, or the+ -- number of concurrent stream requests exceeds the maximum number+ -- allowed.+ --+ -- [ResourceNotFound]+ -- The specified resource could not be found.+ --+ -- [RequestThrottled]+ -- The request was throttled.+ --+ -- [InvalidInput]+ -- An input parameter in the request is not valid.+ failureCode :: Prelude.Maybe WorldGenerationJobErrorCode,+ -- | The status of the world generator job.+ --+ -- [Pending]+ -- The world generator job request is pending.+ --+ -- [Running]+ -- The world generator job is running.+ --+ -- [Completed]+ -- The world generator job completed.+ --+ -- [Failed]+ -- The world generator job failed. See @failureCode@ for more+ -- information.+ --+ -- [PartialFailed]+ -- Some worlds did not generate.+ --+ -- [Canceled]+ -- The world generator job was cancelled.+ --+ -- [Canceling]+ -- The world generator job is being cancelled.+ status :: Prelude.Maybe WorldGenerationJobStatus,+ -- | A map that contains tag keys and tag values that are attached to the+ -- world generator job.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The Amazon Resource Name (arn) of the world template.+ template :: Prelude.Maybe Prelude.Text,+ -- | Information about the world count.+ worldCount :: Prelude.Maybe WorldCount,+ -- | A map that contains tag keys and tag values that are attached to the+ -- generated worlds.+ worldTags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateWorldGenerationJobResponse' 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', 'createWorldGenerationJobResponse_arn' - The Amazon Resource Name (ARN) of the world generator job.+--+-- 'clientRequestToken', 'createWorldGenerationJobResponse_clientRequestToken' - Unique, case-sensitive identifier that you provide to ensure the+-- idempotency of the request.+--+-- 'createdAt', 'createWorldGenerationJobResponse_createdAt' - The time, in milliseconds since the epoch, when the world generator job+-- was created.+--+-- 'failureCode', 'createWorldGenerationJobResponse_failureCode' - The failure code of the world generator job if it failed:+--+-- [InternalServiceError]+-- Internal service error.+--+-- [LimitExceeded]+-- The requested resource exceeds the maximum number allowed, or the+-- number of concurrent stream requests exceeds the maximum number+-- allowed.+--+-- [ResourceNotFound]+-- The specified resource could not be found.+--+-- [RequestThrottled]+-- The request was throttled.+--+-- [InvalidInput]+-- An input parameter in the request is not valid.+--+-- 'status', 'createWorldGenerationJobResponse_status' - The status of the world generator job.+--+-- [Pending]+-- The world generator job request is pending.+--+-- [Running]+-- The world generator job is running.+--+-- [Completed]+-- The world generator job completed.+--+-- [Failed]+-- The world generator job failed. See @failureCode@ for more+-- information.+--+-- [PartialFailed]+-- Some worlds did not generate.+--+-- [Canceled]+-- The world generator job was cancelled.+--+-- [Canceling]+-- The world generator job is being cancelled.+--+-- 'tags', 'createWorldGenerationJobResponse_tags' - A map that contains tag keys and tag values that are attached to the+-- world generator job.+--+-- 'template', 'createWorldGenerationJobResponse_template' - The Amazon Resource Name (arn) of the world template.+--+-- 'worldCount', 'createWorldGenerationJobResponse_worldCount' - Information about the world count.+--+-- 'worldTags', 'createWorldGenerationJobResponse_worldTags' - A map that contains tag keys and tag values that are attached to the+-- generated worlds.+--+-- 'httpStatus', 'createWorldGenerationJobResponse_httpStatus' - The response's http status code.+newCreateWorldGenerationJobResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateWorldGenerationJobResponse+newCreateWorldGenerationJobResponse pHttpStatus_ =+ CreateWorldGenerationJobResponse'+ { arn =+ Prelude.Nothing,+ clientRequestToken = Prelude.Nothing,+ createdAt = Prelude.Nothing,+ failureCode = Prelude.Nothing,+ status = Prelude.Nothing,+ tags = Prelude.Nothing,+ template = Prelude.Nothing,+ worldCount = Prelude.Nothing,+ worldTags = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The Amazon Resource Name (ARN) of the world generator job.+createWorldGenerationJobResponse_arn :: Lens.Lens' CreateWorldGenerationJobResponse (Prelude.Maybe Prelude.Text)+createWorldGenerationJobResponse_arn = Lens.lens (\CreateWorldGenerationJobResponse' {arn} -> arn) (\s@CreateWorldGenerationJobResponse' {} a -> s {arn = a} :: CreateWorldGenerationJobResponse)++-- | Unique, case-sensitive identifier that you provide to ensure the+-- idempotency of the request.+createWorldGenerationJobResponse_clientRequestToken :: Lens.Lens' CreateWorldGenerationJobResponse (Prelude.Maybe Prelude.Text)+createWorldGenerationJobResponse_clientRequestToken = Lens.lens (\CreateWorldGenerationJobResponse' {clientRequestToken} -> clientRequestToken) (\s@CreateWorldGenerationJobResponse' {} a -> s {clientRequestToken = a} :: CreateWorldGenerationJobResponse)++-- | The time, in milliseconds since the epoch, when the world generator job+-- was created.+createWorldGenerationJobResponse_createdAt :: Lens.Lens' CreateWorldGenerationJobResponse (Prelude.Maybe Prelude.UTCTime)+createWorldGenerationJobResponse_createdAt = Lens.lens (\CreateWorldGenerationJobResponse' {createdAt} -> createdAt) (\s@CreateWorldGenerationJobResponse' {} a -> s {createdAt = a} :: CreateWorldGenerationJobResponse) Prelude.. Lens.mapping Data._Time++-- | The failure code of the world generator job if it failed:+--+-- [InternalServiceError]+-- Internal service error.+--+-- [LimitExceeded]+-- The requested resource exceeds the maximum number allowed, or the+-- number of concurrent stream requests exceeds the maximum number+-- allowed.+--+-- [ResourceNotFound]+-- The specified resource could not be found.+--+-- [RequestThrottled]+-- The request was throttled.+--+-- [InvalidInput]+-- An input parameter in the request is not valid.+createWorldGenerationJobResponse_failureCode :: Lens.Lens' CreateWorldGenerationJobResponse (Prelude.Maybe WorldGenerationJobErrorCode)+createWorldGenerationJobResponse_failureCode = Lens.lens (\CreateWorldGenerationJobResponse' {failureCode} -> failureCode) (\s@CreateWorldGenerationJobResponse' {} a -> s {failureCode = a} :: CreateWorldGenerationJobResponse)++-- | The status of the world generator job.+--+-- [Pending]+-- The world generator job request is pending.+--+-- [Running]+-- The world generator job is running.+--+-- [Completed]+-- The world generator job completed.+--+-- [Failed]+-- The world generator job failed. See @failureCode@ for more+-- information.+--+-- [PartialFailed]+-- Some worlds did not generate.+--+-- [Canceled]+-- The world generator job was cancelled.+--+-- [Canceling]+-- The world generator job is being cancelled.+createWorldGenerationJobResponse_status :: Lens.Lens' CreateWorldGenerationJobResponse (Prelude.Maybe WorldGenerationJobStatus)+createWorldGenerationJobResponse_status = Lens.lens (\CreateWorldGenerationJobResponse' {status} -> status) (\s@CreateWorldGenerationJobResponse' {} a -> s {status = a} :: CreateWorldGenerationJobResponse)++-- | A map that contains tag keys and tag values that are attached to the+-- world generator job.+createWorldGenerationJobResponse_tags :: Lens.Lens' CreateWorldGenerationJobResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createWorldGenerationJobResponse_tags = Lens.lens (\CreateWorldGenerationJobResponse' {tags} -> tags) (\s@CreateWorldGenerationJobResponse' {} a -> s {tags = a} :: CreateWorldGenerationJobResponse) Prelude.. Lens.mapping Lens.coerced++-- | The Amazon Resource Name (arn) of the world template.+createWorldGenerationJobResponse_template :: Lens.Lens' CreateWorldGenerationJobResponse (Prelude.Maybe Prelude.Text)+createWorldGenerationJobResponse_template = Lens.lens (\CreateWorldGenerationJobResponse' {template} -> template) (\s@CreateWorldGenerationJobResponse' {} a -> s {template = a} :: CreateWorldGenerationJobResponse)++-- | Information about the world count.+createWorldGenerationJobResponse_worldCount :: Lens.Lens' CreateWorldGenerationJobResponse (Prelude.Maybe WorldCount)+createWorldGenerationJobResponse_worldCount = Lens.lens (\CreateWorldGenerationJobResponse' {worldCount} -> worldCount) (\s@CreateWorldGenerationJobResponse' {} a -> s {worldCount = a} :: CreateWorldGenerationJobResponse)++-- | A map that contains tag keys and tag values that are attached to the+-- generated worlds.+createWorldGenerationJobResponse_worldTags :: Lens.Lens' CreateWorldGenerationJobResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createWorldGenerationJobResponse_worldTags = Lens.lens (\CreateWorldGenerationJobResponse' {worldTags} -> worldTags) (\s@CreateWorldGenerationJobResponse' {} a -> s {worldTags = a} :: CreateWorldGenerationJobResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+createWorldGenerationJobResponse_httpStatus :: Lens.Lens' CreateWorldGenerationJobResponse Prelude.Int+createWorldGenerationJobResponse_httpStatus = Lens.lens (\CreateWorldGenerationJobResponse' {httpStatus} -> httpStatus) (\s@CreateWorldGenerationJobResponse' {} a -> s {httpStatus = a} :: CreateWorldGenerationJobResponse)++instance+ Prelude.NFData+ CreateWorldGenerationJobResponse+ where+ rnf CreateWorldGenerationJobResponse' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf clientRequestToken+ `Prelude.seq` Prelude.rnf createdAt+ `Prelude.seq` Prelude.rnf failureCode+ `Prelude.seq` Prelude.rnf status+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf template+ `Prelude.seq` Prelude.rnf worldCount+ `Prelude.seq` Prelude.rnf worldTags+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/RobOMaker/CreateWorldTemplate.hs view
@@ -0,0 +1,284 @@+{-# 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.RobOMaker.CreateWorldTemplate+-- 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 a world template.+module Amazonka.RobOMaker.CreateWorldTemplate+ ( -- * Creating a Request+ CreateWorldTemplate (..),+ newCreateWorldTemplate,++ -- * Request Lenses+ createWorldTemplate_clientRequestToken,+ createWorldTemplate_name,+ createWorldTemplate_tags,+ createWorldTemplate_templateBody,+ createWorldTemplate_templateLocation,++ -- * Destructuring the Response+ CreateWorldTemplateResponse (..),+ newCreateWorldTemplateResponse,++ -- * Response Lenses+ createWorldTemplateResponse_arn,+ createWorldTemplateResponse_clientRequestToken,+ createWorldTemplateResponse_createdAt,+ createWorldTemplateResponse_name,+ createWorldTemplateResponse_tags,+ createWorldTemplateResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.RobOMaker.Types++-- | /See:/ 'newCreateWorldTemplate' smart constructor.+data CreateWorldTemplate = CreateWorldTemplate'+ { -- | Unique, case-sensitive identifier that you provide to ensure the+ -- idempotency of the request.+ clientRequestToken :: Prelude.Maybe Prelude.Text,+ -- | The name of the world template.+ name :: Prelude.Maybe Prelude.Text,+ -- | A map that contains tag keys and tag values that are attached to the+ -- world template.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The world template body.+ templateBody :: Prelude.Maybe Prelude.Text,+ -- | The location of the world template.+ templateLocation :: Prelude.Maybe TemplateLocation+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateWorldTemplate' 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:+--+-- 'clientRequestToken', 'createWorldTemplate_clientRequestToken' - Unique, case-sensitive identifier that you provide to ensure the+-- idempotency of the request.+--+-- 'name', 'createWorldTemplate_name' - The name of the world template.+--+-- 'tags', 'createWorldTemplate_tags' - A map that contains tag keys and tag values that are attached to the+-- world template.+--+-- 'templateBody', 'createWorldTemplate_templateBody' - The world template body.+--+-- 'templateLocation', 'createWorldTemplate_templateLocation' - The location of the world template.+newCreateWorldTemplate ::+ CreateWorldTemplate+newCreateWorldTemplate =+ CreateWorldTemplate'+ { clientRequestToken =+ Prelude.Nothing,+ name = Prelude.Nothing,+ tags = Prelude.Nothing,+ templateBody = Prelude.Nothing,+ templateLocation = Prelude.Nothing+ }++-- | Unique, case-sensitive identifier that you provide to ensure the+-- idempotency of the request.+createWorldTemplate_clientRequestToken :: Lens.Lens' CreateWorldTemplate (Prelude.Maybe Prelude.Text)+createWorldTemplate_clientRequestToken = Lens.lens (\CreateWorldTemplate' {clientRequestToken} -> clientRequestToken) (\s@CreateWorldTemplate' {} a -> s {clientRequestToken = a} :: CreateWorldTemplate)++-- | The name of the world template.+createWorldTemplate_name :: Lens.Lens' CreateWorldTemplate (Prelude.Maybe Prelude.Text)+createWorldTemplate_name = Lens.lens (\CreateWorldTemplate' {name} -> name) (\s@CreateWorldTemplate' {} a -> s {name = a} :: CreateWorldTemplate)++-- | A map that contains tag keys and tag values that are attached to the+-- world template.+createWorldTemplate_tags :: Lens.Lens' CreateWorldTemplate (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createWorldTemplate_tags = Lens.lens (\CreateWorldTemplate' {tags} -> tags) (\s@CreateWorldTemplate' {} a -> s {tags = a} :: CreateWorldTemplate) Prelude.. Lens.mapping Lens.coerced++-- | The world template body.+createWorldTemplate_templateBody :: Lens.Lens' CreateWorldTemplate (Prelude.Maybe Prelude.Text)+createWorldTemplate_templateBody = Lens.lens (\CreateWorldTemplate' {templateBody} -> templateBody) (\s@CreateWorldTemplate' {} a -> s {templateBody = a} :: CreateWorldTemplate)++-- | The location of the world template.+createWorldTemplate_templateLocation :: Lens.Lens' CreateWorldTemplate (Prelude.Maybe TemplateLocation)+createWorldTemplate_templateLocation = Lens.lens (\CreateWorldTemplate' {templateLocation} -> templateLocation) (\s@CreateWorldTemplate' {} a -> s {templateLocation = a} :: CreateWorldTemplate)++instance Core.AWSRequest CreateWorldTemplate where+ type+ AWSResponse CreateWorldTemplate =+ CreateWorldTemplateResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateWorldTemplateResponse'+ Prelude.<$> (x Data..?> "arn")+ Prelude.<*> (x Data..?> "clientRequestToken")+ Prelude.<*> (x Data..?> "createdAt")+ Prelude.<*> (x Data..?> "name")+ Prelude.<*> (x Data..?> "tags" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateWorldTemplate where+ hashWithSalt _salt CreateWorldTemplate' {..} =+ _salt+ `Prelude.hashWithSalt` clientRequestToken+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` templateBody+ `Prelude.hashWithSalt` templateLocation++instance Prelude.NFData CreateWorldTemplate where+ rnf CreateWorldTemplate' {..} =+ Prelude.rnf clientRequestToken+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf templateBody+ `Prelude.seq` Prelude.rnf templateLocation++instance Data.ToHeaders CreateWorldTemplate where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateWorldTemplate where+ toJSON CreateWorldTemplate' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("clientRequestToken" Data..=)+ Prelude.<$> clientRequestToken,+ ("name" Data..=) Prelude.<$> name,+ ("tags" Data..=) Prelude.<$> tags,+ ("templateBody" Data..=) Prelude.<$> templateBody,+ ("templateLocation" Data..=)+ Prelude.<$> templateLocation+ ]+ )++instance Data.ToPath CreateWorldTemplate where+ toPath = Prelude.const "/createWorldTemplate"++instance Data.ToQuery CreateWorldTemplate where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateWorldTemplateResponse' smart constructor.+data CreateWorldTemplateResponse = CreateWorldTemplateResponse'+ { -- | The Amazon Resource Name (ARN) of the world template.+ arn :: Prelude.Maybe Prelude.Text,+ -- | Unique, case-sensitive identifier that you provide to ensure the+ -- idempotency of the request.+ clientRequestToken :: Prelude.Maybe Prelude.Text,+ -- | The time, in milliseconds since the epoch, when the world template was+ -- created.+ createdAt :: Prelude.Maybe Data.POSIX,+ -- | The name of the world template.+ name :: Prelude.Maybe Prelude.Text,+ -- | A map that contains tag keys and tag values that are attached to the+ -- world template.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateWorldTemplateResponse' 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', 'createWorldTemplateResponse_arn' - The Amazon Resource Name (ARN) of the world template.+--+-- 'clientRequestToken', 'createWorldTemplateResponse_clientRequestToken' - Unique, case-sensitive identifier that you provide to ensure the+-- idempotency of the request.+--+-- 'createdAt', 'createWorldTemplateResponse_createdAt' - The time, in milliseconds since the epoch, when the world template was+-- created.+--+-- 'name', 'createWorldTemplateResponse_name' - The name of the world template.+--+-- 'tags', 'createWorldTemplateResponse_tags' - A map that contains tag keys and tag values that are attached to the+-- world template.+--+-- 'httpStatus', 'createWorldTemplateResponse_httpStatus' - The response's http status code.+newCreateWorldTemplateResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateWorldTemplateResponse+newCreateWorldTemplateResponse pHttpStatus_ =+ CreateWorldTemplateResponse'+ { arn = Prelude.Nothing,+ clientRequestToken = Prelude.Nothing,+ createdAt = Prelude.Nothing,+ name = Prelude.Nothing,+ tags = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The Amazon Resource Name (ARN) of the world template.+createWorldTemplateResponse_arn :: Lens.Lens' CreateWorldTemplateResponse (Prelude.Maybe Prelude.Text)+createWorldTemplateResponse_arn = Lens.lens (\CreateWorldTemplateResponse' {arn} -> arn) (\s@CreateWorldTemplateResponse' {} a -> s {arn = a} :: CreateWorldTemplateResponse)++-- | Unique, case-sensitive identifier that you provide to ensure the+-- idempotency of the request.+createWorldTemplateResponse_clientRequestToken :: Lens.Lens' CreateWorldTemplateResponse (Prelude.Maybe Prelude.Text)+createWorldTemplateResponse_clientRequestToken = Lens.lens (\CreateWorldTemplateResponse' {clientRequestToken} -> clientRequestToken) (\s@CreateWorldTemplateResponse' {} a -> s {clientRequestToken = a} :: CreateWorldTemplateResponse)++-- | The time, in milliseconds since the epoch, when the world template was+-- created.+createWorldTemplateResponse_createdAt :: Lens.Lens' CreateWorldTemplateResponse (Prelude.Maybe Prelude.UTCTime)+createWorldTemplateResponse_createdAt = Lens.lens (\CreateWorldTemplateResponse' {createdAt} -> createdAt) (\s@CreateWorldTemplateResponse' {} a -> s {createdAt = a} :: CreateWorldTemplateResponse) Prelude.. Lens.mapping Data._Time++-- | The name of the world template.+createWorldTemplateResponse_name :: Lens.Lens' CreateWorldTemplateResponse (Prelude.Maybe Prelude.Text)+createWorldTemplateResponse_name = Lens.lens (\CreateWorldTemplateResponse' {name} -> name) (\s@CreateWorldTemplateResponse' {} a -> s {name = a} :: CreateWorldTemplateResponse)++-- | A map that contains tag keys and tag values that are attached to the+-- world template.+createWorldTemplateResponse_tags :: Lens.Lens' CreateWorldTemplateResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createWorldTemplateResponse_tags = Lens.lens (\CreateWorldTemplateResponse' {tags} -> tags) (\s@CreateWorldTemplateResponse' {} a -> s {tags = a} :: CreateWorldTemplateResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+createWorldTemplateResponse_httpStatus :: Lens.Lens' CreateWorldTemplateResponse Prelude.Int+createWorldTemplateResponse_httpStatus = Lens.lens (\CreateWorldTemplateResponse' {httpStatus} -> httpStatus) (\s@CreateWorldTemplateResponse' {} a -> s {httpStatus = a} :: CreateWorldTemplateResponse)++instance Prelude.NFData CreateWorldTemplateResponse where+ rnf CreateWorldTemplateResponse' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf clientRequestToken+ `Prelude.seq` Prelude.rnf createdAt+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/RobOMaker/DeleteRobotApplication.hs view
@@ -0,0 +1,175 @@+{-# 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.RobOMaker.DeleteRobotApplication+-- 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 a robot application.+module Amazonka.RobOMaker.DeleteRobotApplication+ ( -- * Creating a Request+ DeleteRobotApplication (..),+ newDeleteRobotApplication,++ -- * Request Lenses+ deleteRobotApplication_applicationVersion,+ deleteRobotApplication_application,++ -- * Destructuring the Response+ DeleteRobotApplicationResponse (..),+ newDeleteRobotApplicationResponse,++ -- * Response Lenses+ deleteRobotApplicationResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.RobOMaker.Types++-- | /See:/ 'newDeleteRobotApplication' smart constructor.+data DeleteRobotApplication = DeleteRobotApplication'+ { -- | The version of the robot application to delete.+ applicationVersion :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Resource Name (ARN) of the the robot application.+ application :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteRobotApplication' 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:+--+-- 'applicationVersion', 'deleteRobotApplication_applicationVersion' - The version of the robot application to delete.+--+-- 'application', 'deleteRobotApplication_application' - The Amazon Resource Name (ARN) of the the robot application.+newDeleteRobotApplication ::+ -- | 'application'+ Prelude.Text ->+ DeleteRobotApplication+newDeleteRobotApplication pApplication_ =+ DeleteRobotApplication'+ { applicationVersion =+ Prelude.Nothing,+ application = pApplication_+ }++-- | The version of the robot application to delete.+deleteRobotApplication_applicationVersion :: Lens.Lens' DeleteRobotApplication (Prelude.Maybe Prelude.Text)+deleteRobotApplication_applicationVersion = Lens.lens (\DeleteRobotApplication' {applicationVersion} -> applicationVersion) (\s@DeleteRobotApplication' {} a -> s {applicationVersion = a} :: DeleteRobotApplication)++-- | The Amazon Resource Name (ARN) of the the robot application.+deleteRobotApplication_application :: Lens.Lens' DeleteRobotApplication Prelude.Text+deleteRobotApplication_application = Lens.lens (\DeleteRobotApplication' {application} -> application) (\s@DeleteRobotApplication' {} a -> s {application = a} :: DeleteRobotApplication)++instance Core.AWSRequest DeleteRobotApplication where+ type+ AWSResponse DeleteRobotApplication =+ DeleteRobotApplicationResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ DeleteRobotApplicationResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DeleteRobotApplication where+ hashWithSalt _salt DeleteRobotApplication' {..} =+ _salt+ `Prelude.hashWithSalt` applicationVersion+ `Prelude.hashWithSalt` application++instance Prelude.NFData DeleteRobotApplication where+ rnf DeleteRobotApplication' {..} =+ Prelude.rnf applicationVersion+ `Prelude.seq` Prelude.rnf application++instance Data.ToHeaders DeleteRobotApplication where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON DeleteRobotApplication where+ toJSON DeleteRobotApplication' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("applicationVersion" Data..=)+ Prelude.<$> applicationVersion,+ Prelude.Just ("application" Data..= application)+ ]+ )++instance Data.ToPath DeleteRobotApplication where+ toPath = Prelude.const "/deleteRobotApplication"++instance Data.ToQuery DeleteRobotApplication where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteRobotApplicationResponse' smart constructor.+data DeleteRobotApplicationResponse = DeleteRobotApplicationResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteRobotApplicationResponse' 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', 'deleteRobotApplicationResponse_httpStatus' - The response's http status code.+newDeleteRobotApplicationResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeleteRobotApplicationResponse+newDeleteRobotApplicationResponse pHttpStatus_ =+ DeleteRobotApplicationResponse'+ { httpStatus =+ pHttpStatus_+ }++-- | The response's http status code.+deleteRobotApplicationResponse_httpStatus :: Lens.Lens' DeleteRobotApplicationResponse Prelude.Int+deleteRobotApplicationResponse_httpStatus = Lens.lens (\DeleteRobotApplicationResponse' {httpStatus} -> httpStatus) (\s@DeleteRobotApplicationResponse' {} a -> s {httpStatus = a} :: DeleteRobotApplicationResponse)++instance+ Prelude.NFData+ DeleteRobotApplicationResponse+ where+ rnf DeleteRobotApplicationResponse' {..} =+ Prelude.rnf httpStatus
+ gen/Amazonka/RobOMaker/DeleteSimulationApplication.hs view
@@ -0,0 +1,175 @@+{-# 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.RobOMaker.DeleteSimulationApplication+-- 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 a simulation application.+module Amazonka.RobOMaker.DeleteSimulationApplication+ ( -- * Creating a Request+ DeleteSimulationApplication (..),+ newDeleteSimulationApplication,++ -- * Request Lenses+ deleteSimulationApplication_applicationVersion,+ deleteSimulationApplication_application,++ -- * Destructuring the Response+ DeleteSimulationApplicationResponse (..),+ newDeleteSimulationApplicationResponse,++ -- * Response Lenses+ deleteSimulationApplicationResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.RobOMaker.Types++-- | /See:/ 'newDeleteSimulationApplication' smart constructor.+data DeleteSimulationApplication = DeleteSimulationApplication'+ { -- | The version of the simulation application to delete.+ applicationVersion :: Prelude.Maybe Prelude.Text,+ -- | The application information for the simulation application to delete.+ application :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteSimulationApplication' 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:+--+-- 'applicationVersion', 'deleteSimulationApplication_applicationVersion' - The version of the simulation application to delete.+--+-- 'application', 'deleteSimulationApplication_application' - The application information for the simulation application to delete.+newDeleteSimulationApplication ::+ -- | 'application'+ Prelude.Text ->+ DeleteSimulationApplication+newDeleteSimulationApplication pApplication_ =+ DeleteSimulationApplication'+ { applicationVersion =+ Prelude.Nothing,+ application = pApplication_+ }++-- | The version of the simulation application to delete.+deleteSimulationApplication_applicationVersion :: Lens.Lens' DeleteSimulationApplication (Prelude.Maybe Prelude.Text)+deleteSimulationApplication_applicationVersion = Lens.lens (\DeleteSimulationApplication' {applicationVersion} -> applicationVersion) (\s@DeleteSimulationApplication' {} a -> s {applicationVersion = a} :: DeleteSimulationApplication)++-- | The application information for the simulation application to delete.+deleteSimulationApplication_application :: Lens.Lens' DeleteSimulationApplication Prelude.Text+deleteSimulationApplication_application = Lens.lens (\DeleteSimulationApplication' {application} -> application) (\s@DeleteSimulationApplication' {} a -> s {application = a} :: DeleteSimulationApplication)++instance Core.AWSRequest DeleteSimulationApplication where+ type+ AWSResponse DeleteSimulationApplication =+ DeleteSimulationApplicationResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ DeleteSimulationApplicationResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DeleteSimulationApplication where+ hashWithSalt _salt DeleteSimulationApplication' {..} =+ _salt+ `Prelude.hashWithSalt` applicationVersion+ `Prelude.hashWithSalt` application++instance Prelude.NFData DeleteSimulationApplication where+ rnf DeleteSimulationApplication' {..} =+ Prelude.rnf applicationVersion+ `Prelude.seq` Prelude.rnf application++instance Data.ToHeaders DeleteSimulationApplication where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON DeleteSimulationApplication where+ toJSON DeleteSimulationApplication' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("applicationVersion" Data..=)+ Prelude.<$> applicationVersion,+ Prelude.Just ("application" Data..= application)+ ]+ )++instance Data.ToPath DeleteSimulationApplication where+ toPath = Prelude.const "/deleteSimulationApplication"++instance Data.ToQuery DeleteSimulationApplication where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteSimulationApplicationResponse' smart constructor.+data DeleteSimulationApplicationResponse = DeleteSimulationApplicationResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteSimulationApplicationResponse' 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', 'deleteSimulationApplicationResponse_httpStatus' - The response's http status code.+newDeleteSimulationApplicationResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeleteSimulationApplicationResponse+newDeleteSimulationApplicationResponse pHttpStatus_ =+ DeleteSimulationApplicationResponse'+ { httpStatus =+ pHttpStatus_+ }++-- | The response's http status code.+deleteSimulationApplicationResponse_httpStatus :: Lens.Lens' DeleteSimulationApplicationResponse Prelude.Int+deleteSimulationApplicationResponse_httpStatus = Lens.lens (\DeleteSimulationApplicationResponse' {httpStatus} -> httpStatus) (\s@DeleteSimulationApplicationResponse' {} a -> s {httpStatus = a} :: DeleteSimulationApplicationResponse)++instance+ Prelude.NFData+ DeleteSimulationApplicationResponse+ where+ rnf DeleteSimulationApplicationResponse' {..} =+ Prelude.rnf httpStatus
+ gen/Amazonka/RobOMaker/DeleteWorldTemplate.hs view
@@ -0,0 +1,152 @@+{-# 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.RobOMaker.DeleteWorldTemplate+-- 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 a world template.+module Amazonka.RobOMaker.DeleteWorldTemplate+ ( -- * Creating a Request+ DeleteWorldTemplate (..),+ newDeleteWorldTemplate,++ -- * Request Lenses+ deleteWorldTemplate_template,++ -- * Destructuring the Response+ DeleteWorldTemplateResponse (..),+ newDeleteWorldTemplateResponse,++ -- * Response Lenses+ deleteWorldTemplateResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.RobOMaker.Types++-- | /See:/ 'newDeleteWorldTemplate' smart constructor.+data DeleteWorldTemplate = DeleteWorldTemplate'+ { -- | The Amazon Resource Name (arn) of the world template you want to delete.+ template :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteWorldTemplate' 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:+--+-- 'template', 'deleteWorldTemplate_template' - The Amazon Resource Name (arn) of the world template you want to delete.+newDeleteWorldTemplate ::+ -- | 'template'+ Prelude.Text ->+ DeleteWorldTemplate+newDeleteWorldTemplate pTemplate_ =+ DeleteWorldTemplate' {template = pTemplate_}++-- | The Amazon Resource Name (arn) of the world template you want to delete.+deleteWorldTemplate_template :: Lens.Lens' DeleteWorldTemplate Prelude.Text+deleteWorldTemplate_template = Lens.lens (\DeleteWorldTemplate' {template} -> template) (\s@DeleteWorldTemplate' {} a -> s {template = a} :: DeleteWorldTemplate)++instance Core.AWSRequest DeleteWorldTemplate where+ type+ AWSResponse DeleteWorldTemplate =+ DeleteWorldTemplateResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ DeleteWorldTemplateResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DeleteWorldTemplate where+ hashWithSalt _salt DeleteWorldTemplate' {..} =+ _salt `Prelude.hashWithSalt` template++instance Prelude.NFData DeleteWorldTemplate where+ rnf DeleteWorldTemplate' {..} = Prelude.rnf template++instance Data.ToHeaders DeleteWorldTemplate where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON DeleteWorldTemplate where+ toJSON DeleteWorldTemplate' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("template" Data..= template)]+ )++instance Data.ToPath DeleteWorldTemplate where+ toPath = Prelude.const "/deleteWorldTemplate"++instance Data.ToQuery DeleteWorldTemplate where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteWorldTemplateResponse' smart constructor.+data DeleteWorldTemplateResponse = DeleteWorldTemplateResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteWorldTemplateResponse' 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', 'deleteWorldTemplateResponse_httpStatus' - The response's http status code.+newDeleteWorldTemplateResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeleteWorldTemplateResponse+newDeleteWorldTemplateResponse pHttpStatus_ =+ DeleteWorldTemplateResponse'+ { httpStatus =+ pHttpStatus_+ }++-- | The response's http status code.+deleteWorldTemplateResponse_httpStatus :: Lens.Lens' DeleteWorldTemplateResponse Prelude.Int+deleteWorldTemplateResponse_httpStatus = Lens.lens (\DeleteWorldTemplateResponse' {httpStatus} -> httpStatus) (\s@DeleteWorldTemplateResponse' {} a -> s {httpStatus = a} :: DeleteWorldTemplateResponse)++instance Prelude.NFData DeleteWorldTemplateResponse where+ rnf DeleteWorldTemplateResponse' {..} =+ Prelude.rnf httpStatus
+ gen/Amazonka/RobOMaker/DescribeRobotApplication.hs view
@@ -0,0 +1,307 @@+{-# 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.RobOMaker.DescribeRobotApplication+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Describes a robot application.+module Amazonka.RobOMaker.DescribeRobotApplication+ ( -- * Creating a Request+ DescribeRobotApplication (..),+ newDescribeRobotApplication,++ -- * Request Lenses+ describeRobotApplication_applicationVersion,+ describeRobotApplication_application,++ -- * Destructuring the Response+ DescribeRobotApplicationResponse (..),+ newDescribeRobotApplicationResponse,++ -- * Response Lenses+ describeRobotApplicationResponse_arn,+ describeRobotApplicationResponse_environment,+ describeRobotApplicationResponse_imageDigest,+ describeRobotApplicationResponse_lastUpdatedAt,+ describeRobotApplicationResponse_name,+ describeRobotApplicationResponse_revisionId,+ describeRobotApplicationResponse_robotSoftwareSuite,+ describeRobotApplicationResponse_sources,+ describeRobotApplicationResponse_tags,+ describeRobotApplicationResponse_version,+ describeRobotApplicationResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.RobOMaker.Types++-- | /See:/ 'newDescribeRobotApplication' smart constructor.+data DescribeRobotApplication = DescribeRobotApplication'+ { -- | The version of the robot application to describe.+ applicationVersion :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Resource Name (ARN) of the robot application.+ application :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeRobotApplication' 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:+--+-- 'applicationVersion', 'describeRobotApplication_applicationVersion' - The version of the robot application to describe.+--+-- 'application', 'describeRobotApplication_application' - The Amazon Resource Name (ARN) of the robot application.+newDescribeRobotApplication ::+ -- | 'application'+ Prelude.Text ->+ DescribeRobotApplication+newDescribeRobotApplication pApplication_ =+ DescribeRobotApplication'+ { applicationVersion =+ Prelude.Nothing,+ application = pApplication_+ }++-- | The version of the robot application to describe.+describeRobotApplication_applicationVersion :: Lens.Lens' DescribeRobotApplication (Prelude.Maybe Prelude.Text)+describeRobotApplication_applicationVersion = Lens.lens (\DescribeRobotApplication' {applicationVersion} -> applicationVersion) (\s@DescribeRobotApplication' {} a -> s {applicationVersion = a} :: DescribeRobotApplication)++-- | The Amazon Resource Name (ARN) of the robot application.+describeRobotApplication_application :: Lens.Lens' DescribeRobotApplication Prelude.Text+describeRobotApplication_application = Lens.lens (\DescribeRobotApplication' {application} -> application) (\s@DescribeRobotApplication' {} a -> s {application = a} :: DescribeRobotApplication)++instance Core.AWSRequest DescribeRobotApplication where+ type+ AWSResponse DescribeRobotApplication =+ DescribeRobotApplicationResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribeRobotApplicationResponse'+ Prelude.<$> (x Data..?> "arn")+ Prelude.<*> (x Data..?> "environment")+ Prelude.<*> (x Data..?> "imageDigest")+ Prelude.<*> (x Data..?> "lastUpdatedAt")+ Prelude.<*> (x Data..?> "name")+ Prelude.<*> (x Data..?> "revisionId")+ Prelude.<*> (x Data..?> "robotSoftwareSuite")+ Prelude.<*> (x Data..?> "sources" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "tags" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "version")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DescribeRobotApplication where+ hashWithSalt _salt DescribeRobotApplication' {..} =+ _salt+ `Prelude.hashWithSalt` applicationVersion+ `Prelude.hashWithSalt` application++instance Prelude.NFData DescribeRobotApplication where+ rnf DescribeRobotApplication' {..} =+ Prelude.rnf applicationVersion+ `Prelude.seq` Prelude.rnf application++instance Data.ToHeaders DescribeRobotApplication where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON DescribeRobotApplication where+ toJSON DescribeRobotApplication' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("applicationVersion" Data..=)+ Prelude.<$> applicationVersion,+ Prelude.Just ("application" Data..= application)+ ]+ )++instance Data.ToPath DescribeRobotApplication where+ toPath = Prelude.const "/describeRobotApplication"++instance Data.ToQuery DescribeRobotApplication where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDescribeRobotApplicationResponse' smart constructor.+data DescribeRobotApplicationResponse = DescribeRobotApplicationResponse'+ { -- | The Amazon Resource Name (ARN) of the robot application.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The object that contains the Docker image URI used to create the robot+ -- application.+ environment :: Prelude.Maybe Environment,+ -- | A SHA256 identifier for the Docker image that you use for your robot+ -- application.+ imageDigest :: Prelude.Maybe Prelude.Text,+ -- | The time, in milliseconds since the epoch, when the robot application+ -- was last updated.+ lastUpdatedAt :: Prelude.Maybe Data.POSIX,+ -- | The name of the robot application.+ name :: Prelude.Maybe Prelude.Text,+ -- | The revision id of the robot application.+ revisionId :: Prelude.Maybe Prelude.Text,+ -- | The robot software suite (ROS distribution) used by the robot+ -- application.+ robotSoftwareSuite :: Prelude.Maybe RobotSoftwareSuite,+ -- | The sources of the robot application.+ sources :: Prelude.Maybe [Source],+ -- | The list of all tags added to the specified robot application.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The version of the robot application.+ version :: 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 'DescribeRobotApplicationResponse' 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', 'describeRobotApplicationResponse_arn' - The Amazon Resource Name (ARN) of the robot application.+--+-- 'environment', 'describeRobotApplicationResponse_environment' - The object that contains the Docker image URI used to create the robot+-- application.+--+-- 'imageDigest', 'describeRobotApplicationResponse_imageDigest' - A SHA256 identifier for the Docker image that you use for your robot+-- application.+--+-- 'lastUpdatedAt', 'describeRobotApplicationResponse_lastUpdatedAt' - The time, in milliseconds since the epoch, when the robot application+-- was last updated.+--+-- 'name', 'describeRobotApplicationResponse_name' - The name of the robot application.+--+-- 'revisionId', 'describeRobotApplicationResponse_revisionId' - The revision id of the robot application.+--+-- 'robotSoftwareSuite', 'describeRobotApplicationResponse_robotSoftwareSuite' - The robot software suite (ROS distribution) used by the robot+-- application.+--+-- 'sources', 'describeRobotApplicationResponse_sources' - The sources of the robot application.+--+-- 'tags', 'describeRobotApplicationResponse_tags' - The list of all tags added to the specified robot application.+--+-- 'version', 'describeRobotApplicationResponse_version' - The version of the robot application.+--+-- 'httpStatus', 'describeRobotApplicationResponse_httpStatus' - The response's http status code.+newDescribeRobotApplicationResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeRobotApplicationResponse+newDescribeRobotApplicationResponse pHttpStatus_ =+ DescribeRobotApplicationResponse'+ { arn =+ Prelude.Nothing,+ environment = Prelude.Nothing,+ imageDigest = Prelude.Nothing,+ lastUpdatedAt = Prelude.Nothing,+ name = Prelude.Nothing,+ revisionId = Prelude.Nothing,+ robotSoftwareSuite = Prelude.Nothing,+ sources = Prelude.Nothing,+ tags = Prelude.Nothing,+ version = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The Amazon Resource Name (ARN) of the robot application.+describeRobotApplicationResponse_arn :: Lens.Lens' DescribeRobotApplicationResponse (Prelude.Maybe Prelude.Text)+describeRobotApplicationResponse_arn = Lens.lens (\DescribeRobotApplicationResponse' {arn} -> arn) (\s@DescribeRobotApplicationResponse' {} a -> s {arn = a} :: DescribeRobotApplicationResponse)++-- | The object that contains the Docker image URI used to create the robot+-- application.+describeRobotApplicationResponse_environment :: Lens.Lens' DescribeRobotApplicationResponse (Prelude.Maybe Environment)+describeRobotApplicationResponse_environment = Lens.lens (\DescribeRobotApplicationResponse' {environment} -> environment) (\s@DescribeRobotApplicationResponse' {} a -> s {environment = a} :: DescribeRobotApplicationResponse)++-- | A SHA256 identifier for the Docker image that you use for your robot+-- application.+describeRobotApplicationResponse_imageDigest :: Lens.Lens' DescribeRobotApplicationResponse (Prelude.Maybe Prelude.Text)+describeRobotApplicationResponse_imageDigest = Lens.lens (\DescribeRobotApplicationResponse' {imageDigest} -> imageDigest) (\s@DescribeRobotApplicationResponse' {} a -> s {imageDigest = a} :: DescribeRobotApplicationResponse)++-- | The time, in milliseconds since the epoch, when the robot application+-- was last updated.+describeRobotApplicationResponse_lastUpdatedAt :: Lens.Lens' DescribeRobotApplicationResponse (Prelude.Maybe Prelude.UTCTime)+describeRobotApplicationResponse_lastUpdatedAt = Lens.lens (\DescribeRobotApplicationResponse' {lastUpdatedAt} -> lastUpdatedAt) (\s@DescribeRobotApplicationResponse' {} a -> s {lastUpdatedAt = a} :: DescribeRobotApplicationResponse) Prelude.. Lens.mapping Data._Time++-- | The name of the robot application.+describeRobotApplicationResponse_name :: Lens.Lens' DescribeRobotApplicationResponse (Prelude.Maybe Prelude.Text)+describeRobotApplicationResponse_name = Lens.lens (\DescribeRobotApplicationResponse' {name} -> name) (\s@DescribeRobotApplicationResponse' {} a -> s {name = a} :: DescribeRobotApplicationResponse)++-- | The revision id of the robot application.+describeRobotApplicationResponse_revisionId :: Lens.Lens' DescribeRobotApplicationResponse (Prelude.Maybe Prelude.Text)+describeRobotApplicationResponse_revisionId = Lens.lens (\DescribeRobotApplicationResponse' {revisionId} -> revisionId) (\s@DescribeRobotApplicationResponse' {} a -> s {revisionId = a} :: DescribeRobotApplicationResponse)++-- | The robot software suite (ROS distribution) used by the robot+-- application.+describeRobotApplicationResponse_robotSoftwareSuite :: Lens.Lens' DescribeRobotApplicationResponse (Prelude.Maybe RobotSoftwareSuite)+describeRobotApplicationResponse_robotSoftwareSuite = Lens.lens (\DescribeRobotApplicationResponse' {robotSoftwareSuite} -> robotSoftwareSuite) (\s@DescribeRobotApplicationResponse' {} a -> s {robotSoftwareSuite = a} :: DescribeRobotApplicationResponse)++-- | The sources of the robot application.+describeRobotApplicationResponse_sources :: Lens.Lens' DescribeRobotApplicationResponse (Prelude.Maybe [Source])+describeRobotApplicationResponse_sources = Lens.lens (\DescribeRobotApplicationResponse' {sources} -> sources) (\s@DescribeRobotApplicationResponse' {} a -> s {sources = a} :: DescribeRobotApplicationResponse) Prelude.. Lens.mapping Lens.coerced++-- | The list of all tags added to the specified robot application.+describeRobotApplicationResponse_tags :: Lens.Lens' DescribeRobotApplicationResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+describeRobotApplicationResponse_tags = Lens.lens (\DescribeRobotApplicationResponse' {tags} -> tags) (\s@DescribeRobotApplicationResponse' {} a -> s {tags = a} :: DescribeRobotApplicationResponse) Prelude.. Lens.mapping Lens.coerced++-- | The version of the robot application.+describeRobotApplicationResponse_version :: Lens.Lens' DescribeRobotApplicationResponse (Prelude.Maybe Prelude.Text)+describeRobotApplicationResponse_version = Lens.lens (\DescribeRobotApplicationResponse' {version} -> version) (\s@DescribeRobotApplicationResponse' {} a -> s {version = a} :: DescribeRobotApplicationResponse)++-- | The response's http status code.+describeRobotApplicationResponse_httpStatus :: Lens.Lens' DescribeRobotApplicationResponse Prelude.Int+describeRobotApplicationResponse_httpStatus = Lens.lens (\DescribeRobotApplicationResponse' {httpStatus} -> httpStatus) (\s@DescribeRobotApplicationResponse' {} a -> s {httpStatus = a} :: DescribeRobotApplicationResponse)++instance+ Prelude.NFData+ DescribeRobotApplicationResponse+ where+ rnf DescribeRobotApplicationResponse' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf environment+ `Prelude.seq` Prelude.rnf imageDigest+ `Prelude.seq` Prelude.rnf lastUpdatedAt+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf revisionId+ `Prelude.seq` Prelude.rnf robotSoftwareSuite+ `Prelude.seq` Prelude.rnf sources+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf version+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/RobOMaker/DescribeSimulationApplication.hs view
@@ -0,0 +1,336 @@+{-# 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.RobOMaker.DescribeSimulationApplication+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Describes a simulation application.+module Amazonka.RobOMaker.DescribeSimulationApplication+ ( -- * Creating a Request+ DescribeSimulationApplication (..),+ newDescribeSimulationApplication,++ -- * Request Lenses+ describeSimulationApplication_applicationVersion,+ describeSimulationApplication_application,++ -- * Destructuring the Response+ DescribeSimulationApplicationResponse (..),+ newDescribeSimulationApplicationResponse,++ -- * Response Lenses+ describeSimulationApplicationResponse_arn,+ describeSimulationApplicationResponse_environment,+ describeSimulationApplicationResponse_imageDigest,+ describeSimulationApplicationResponse_lastUpdatedAt,+ describeSimulationApplicationResponse_name,+ describeSimulationApplicationResponse_renderingEngine,+ describeSimulationApplicationResponse_revisionId,+ describeSimulationApplicationResponse_robotSoftwareSuite,+ describeSimulationApplicationResponse_simulationSoftwareSuite,+ describeSimulationApplicationResponse_sources,+ describeSimulationApplicationResponse_tags,+ describeSimulationApplicationResponse_version,+ describeSimulationApplicationResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.RobOMaker.Types++-- | /See:/ 'newDescribeSimulationApplication' smart constructor.+data DescribeSimulationApplication = DescribeSimulationApplication'+ { -- | The version of the simulation application to describe.+ applicationVersion :: Prelude.Maybe Prelude.Text,+ -- | The application information for the simulation application.+ application :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeSimulationApplication' 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:+--+-- 'applicationVersion', 'describeSimulationApplication_applicationVersion' - The version of the simulation application to describe.+--+-- 'application', 'describeSimulationApplication_application' - The application information for the simulation application.+newDescribeSimulationApplication ::+ -- | 'application'+ Prelude.Text ->+ DescribeSimulationApplication+newDescribeSimulationApplication pApplication_ =+ DescribeSimulationApplication'+ { applicationVersion =+ Prelude.Nothing,+ application = pApplication_+ }++-- | The version of the simulation application to describe.+describeSimulationApplication_applicationVersion :: Lens.Lens' DescribeSimulationApplication (Prelude.Maybe Prelude.Text)+describeSimulationApplication_applicationVersion = Lens.lens (\DescribeSimulationApplication' {applicationVersion} -> applicationVersion) (\s@DescribeSimulationApplication' {} a -> s {applicationVersion = a} :: DescribeSimulationApplication)++-- | The application information for the simulation application.+describeSimulationApplication_application :: Lens.Lens' DescribeSimulationApplication Prelude.Text+describeSimulationApplication_application = Lens.lens (\DescribeSimulationApplication' {application} -> application) (\s@DescribeSimulationApplication' {} a -> s {application = a} :: DescribeSimulationApplication)++instance+ Core.AWSRequest+ DescribeSimulationApplication+ where+ type+ AWSResponse DescribeSimulationApplication =+ DescribeSimulationApplicationResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribeSimulationApplicationResponse'+ Prelude.<$> (x Data..?> "arn")+ Prelude.<*> (x Data..?> "environment")+ Prelude.<*> (x Data..?> "imageDigest")+ Prelude.<*> (x Data..?> "lastUpdatedAt")+ Prelude.<*> (x Data..?> "name")+ Prelude.<*> (x Data..?> "renderingEngine")+ Prelude.<*> (x Data..?> "revisionId")+ Prelude.<*> (x Data..?> "robotSoftwareSuite")+ Prelude.<*> (x Data..?> "simulationSoftwareSuite")+ Prelude.<*> (x Data..?> "sources" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "tags" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "version")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ DescribeSimulationApplication+ where+ hashWithSalt _salt DescribeSimulationApplication' {..} =+ _salt+ `Prelude.hashWithSalt` applicationVersion+ `Prelude.hashWithSalt` application++instance Prelude.NFData DescribeSimulationApplication where+ rnf DescribeSimulationApplication' {..} =+ Prelude.rnf applicationVersion+ `Prelude.seq` Prelude.rnf application++instance Data.ToHeaders DescribeSimulationApplication where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON DescribeSimulationApplication where+ toJSON DescribeSimulationApplication' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("applicationVersion" Data..=)+ Prelude.<$> applicationVersion,+ Prelude.Just ("application" Data..= application)+ ]+ )++instance Data.ToPath DescribeSimulationApplication where+ toPath =+ Prelude.const "/describeSimulationApplication"++instance Data.ToQuery DescribeSimulationApplication where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDescribeSimulationApplicationResponse' smart constructor.+data DescribeSimulationApplicationResponse = DescribeSimulationApplicationResponse'+ { -- | The Amazon Resource Name (ARN) of the robot simulation application.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The object that contains the Docker image URI used to create the+ -- simulation application.+ environment :: Prelude.Maybe Environment,+ -- | A SHA256 identifier for the Docker image that you use for your+ -- simulation application.+ imageDigest :: Prelude.Maybe Prelude.Text,+ -- | The time, in milliseconds since the epoch, when the simulation+ -- application was last updated.+ lastUpdatedAt :: Prelude.Maybe Data.POSIX,+ -- | The name of the simulation application.+ name :: Prelude.Maybe Prelude.Text,+ -- | The rendering engine for the simulation application.+ renderingEngine :: Prelude.Maybe RenderingEngine,+ -- | The revision id of the simulation application.+ revisionId :: Prelude.Maybe Prelude.Text,+ -- | Information about the robot software suite (ROS distribution).+ robotSoftwareSuite :: Prelude.Maybe RobotSoftwareSuite,+ -- | The simulation software suite used by the simulation application.+ simulationSoftwareSuite :: Prelude.Maybe SimulationSoftwareSuite,+ -- | The sources of the simulation application.+ sources :: Prelude.Maybe [Source],+ -- | The list of all tags added to the specified simulation application.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The version of the simulation application.+ version :: 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 'DescribeSimulationApplicationResponse' 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', 'describeSimulationApplicationResponse_arn' - The Amazon Resource Name (ARN) of the robot simulation application.+--+-- 'environment', 'describeSimulationApplicationResponse_environment' - The object that contains the Docker image URI used to create the+-- simulation application.+--+-- 'imageDigest', 'describeSimulationApplicationResponse_imageDigest' - A SHA256 identifier for the Docker image that you use for your+-- simulation application.+--+-- 'lastUpdatedAt', 'describeSimulationApplicationResponse_lastUpdatedAt' - The time, in milliseconds since the epoch, when the simulation+-- application was last updated.+--+-- 'name', 'describeSimulationApplicationResponse_name' - The name of the simulation application.+--+-- 'renderingEngine', 'describeSimulationApplicationResponse_renderingEngine' - The rendering engine for the simulation application.+--+-- 'revisionId', 'describeSimulationApplicationResponse_revisionId' - The revision id of the simulation application.+--+-- 'robotSoftwareSuite', 'describeSimulationApplicationResponse_robotSoftwareSuite' - Information about the robot software suite (ROS distribution).+--+-- 'simulationSoftwareSuite', 'describeSimulationApplicationResponse_simulationSoftwareSuite' - The simulation software suite used by the simulation application.+--+-- 'sources', 'describeSimulationApplicationResponse_sources' - The sources of the simulation application.+--+-- 'tags', 'describeSimulationApplicationResponse_tags' - The list of all tags added to the specified simulation application.+--+-- 'version', 'describeSimulationApplicationResponse_version' - The version of the simulation application.+--+-- 'httpStatus', 'describeSimulationApplicationResponse_httpStatus' - The response's http status code.+newDescribeSimulationApplicationResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeSimulationApplicationResponse+newDescribeSimulationApplicationResponse pHttpStatus_ =+ DescribeSimulationApplicationResponse'+ { arn =+ Prelude.Nothing,+ environment = Prelude.Nothing,+ imageDigest = Prelude.Nothing,+ lastUpdatedAt = Prelude.Nothing,+ name = Prelude.Nothing,+ renderingEngine = Prelude.Nothing,+ revisionId = Prelude.Nothing,+ robotSoftwareSuite = Prelude.Nothing,+ simulationSoftwareSuite =+ Prelude.Nothing,+ sources = Prelude.Nothing,+ tags = Prelude.Nothing,+ version = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The Amazon Resource Name (ARN) of the robot simulation application.+describeSimulationApplicationResponse_arn :: Lens.Lens' DescribeSimulationApplicationResponse (Prelude.Maybe Prelude.Text)+describeSimulationApplicationResponse_arn = Lens.lens (\DescribeSimulationApplicationResponse' {arn} -> arn) (\s@DescribeSimulationApplicationResponse' {} a -> s {arn = a} :: DescribeSimulationApplicationResponse)++-- | The object that contains the Docker image URI used to create the+-- simulation application.+describeSimulationApplicationResponse_environment :: Lens.Lens' DescribeSimulationApplicationResponse (Prelude.Maybe Environment)+describeSimulationApplicationResponse_environment = Lens.lens (\DescribeSimulationApplicationResponse' {environment} -> environment) (\s@DescribeSimulationApplicationResponse' {} a -> s {environment = a} :: DescribeSimulationApplicationResponse)++-- | A SHA256 identifier for the Docker image that you use for your+-- simulation application.+describeSimulationApplicationResponse_imageDigest :: Lens.Lens' DescribeSimulationApplicationResponse (Prelude.Maybe Prelude.Text)+describeSimulationApplicationResponse_imageDigest = Lens.lens (\DescribeSimulationApplicationResponse' {imageDigest} -> imageDigest) (\s@DescribeSimulationApplicationResponse' {} a -> s {imageDigest = a} :: DescribeSimulationApplicationResponse)++-- | The time, in milliseconds since the epoch, when the simulation+-- application was last updated.+describeSimulationApplicationResponse_lastUpdatedAt :: Lens.Lens' DescribeSimulationApplicationResponse (Prelude.Maybe Prelude.UTCTime)+describeSimulationApplicationResponse_lastUpdatedAt = Lens.lens (\DescribeSimulationApplicationResponse' {lastUpdatedAt} -> lastUpdatedAt) (\s@DescribeSimulationApplicationResponse' {} a -> s {lastUpdatedAt = a} :: DescribeSimulationApplicationResponse) Prelude.. Lens.mapping Data._Time++-- | The name of the simulation application.+describeSimulationApplicationResponse_name :: Lens.Lens' DescribeSimulationApplicationResponse (Prelude.Maybe Prelude.Text)+describeSimulationApplicationResponse_name = Lens.lens (\DescribeSimulationApplicationResponse' {name} -> name) (\s@DescribeSimulationApplicationResponse' {} a -> s {name = a} :: DescribeSimulationApplicationResponse)++-- | The rendering engine for the simulation application.+describeSimulationApplicationResponse_renderingEngine :: Lens.Lens' DescribeSimulationApplicationResponse (Prelude.Maybe RenderingEngine)+describeSimulationApplicationResponse_renderingEngine = Lens.lens (\DescribeSimulationApplicationResponse' {renderingEngine} -> renderingEngine) (\s@DescribeSimulationApplicationResponse' {} a -> s {renderingEngine = a} :: DescribeSimulationApplicationResponse)++-- | The revision id of the simulation application.+describeSimulationApplicationResponse_revisionId :: Lens.Lens' DescribeSimulationApplicationResponse (Prelude.Maybe Prelude.Text)+describeSimulationApplicationResponse_revisionId = Lens.lens (\DescribeSimulationApplicationResponse' {revisionId} -> revisionId) (\s@DescribeSimulationApplicationResponse' {} a -> s {revisionId = a} :: DescribeSimulationApplicationResponse)++-- | Information about the robot software suite (ROS distribution).+describeSimulationApplicationResponse_robotSoftwareSuite :: Lens.Lens' DescribeSimulationApplicationResponse (Prelude.Maybe RobotSoftwareSuite)+describeSimulationApplicationResponse_robotSoftwareSuite = Lens.lens (\DescribeSimulationApplicationResponse' {robotSoftwareSuite} -> robotSoftwareSuite) (\s@DescribeSimulationApplicationResponse' {} a -> s {robotSoftwareSuite = a} :: DescribeSimulationApplicationResponse)++-- | The simulation software suite used by the simulation application.+describeSimulationApplicationResponse_simulationSoftwareSuite :: Lens.Lens' DescribeSimulationApplicationResponse (Prelude.Maybe SimulationSoftwareSuite)+describeSimulationApplicationResponse_simulationSoftwareSuite = Lens.lens (\DescribeSimulationApplicationResponse' {simulationSoftwareSuite} -> simulationSoftwareSuite) (\s@DescribeSimulationApplicationResponse' {} a -> s {simulationSoftwareSuite = a} :: DescribeSimulationApplicationResponse)++-- | The sources of the simulation application.+describeSimulationApplicationResponse_sources :: Lens.Lens' DescribeSimulationApplicationResponse (Prelude.Maybe [Source])+describeSimulationApplicationResponse_sources = Lens.lens (\DescribeSimulationApplicationResponse' {sources} -> sources) (\s@DescribeSimulationApplicationResponse' {} a -> s {sources = a} :: DescribeSimulationApplicationResponse) Prelude.. Lens.mapping Lens.coerced++-- | The list of all tags added to the specified simulation application.+describeSimulationApplicationResponse_tags :: Lens.Lens' DescribeSimulationApplicationResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+describeSimulationApplicationResponse_tags = Lens.lens (\DescribeSimulationApplicationResponse' {tags} -> tags) (\s@DescribeSimulationApplicationResponse' {} a -> s {tags = a} :: DescribeSimulationApplicationResponse) Prelude.. Lens.mapping Lens.coerced++-- | The version of the simulation application.+describeSimulationApplicationResponse_version :: Lens.Lens' DescribeSimulationApplicationResponse (Prelude.Maybe Prelude.Text)+describeSimulationApplicationResponse_version = Lens.lens (\DescribeSimulationApplicationResponse' {version} -> version) (\s@DescribeSimulationApplicationResponse' {} a -> s {version = a} :: DescribeSimulationApplicationResponse)++-- | The response's http status code.+describeSimulationApplicationResponse_httpStatus :: Lens.Lens' DescribeSimulationApplicationResponse Prelude.Int+describeSimulationApplicationResponse_httpStatus = Lens.lens (\DescribeSimulationApplicationResponse' {httpStatus} -> httpStatus) (\s@DescribeSimulationApplicationResponse' {} a -> s {httpStatus = a} :: DescribeSimulationApplicationResponse)++instance+ Prelude.NFData+ DescribeSimulationApplicationResponse+ where+ rnf DescribeSimulationApplicationResponse' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf environment+ `Prelude.seq` Prelude.rnf imageDigest+ `Prelude.seq` Prelude.rnf lastUpdatedAt+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf renderingEngine+ `Prelude.seq` Prelude.rnf revisionId+ `Prelude.seq` Prelude.rnf robotSoftwareSuite+ `Prelude.seq` Prelude.rnf simulationSoftwareSuite+ `Prelude.seq` Prelude.rnf sources+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf version+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/RobOMaker/DescribeSimulationJob.hs view
@@ -0,0 +1,566 @@+{-# 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.RobOMaker.DescribeSimulationJob+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Describes a simulation job.+module Amazonka.RobOMaker.DescribeSimulationJob+ ( -- * Creating a Request+ DescribeSimulationJob (..),+ newDescribeSimulationJob,++ -- * Request Lenses+ describeSimulationJob_job,++ -- * Destructuring the Response+ DescribeSimulationJobResponse (..),+ newDescribeSimulationJobResponse,++ -- * Response Lenses+ describeSimulationJobResponse_arn,+ describeSimulationJobResponse_clientRequestToken,+ describeSimulationJobResponse_compute,+ describeSimulationJobResponse_dataSources,+ describeSimulationJobResponse_failureBehavior,+ describeSimulationJobResponse_failureCode,+ describeSimulationJobResponse_failureReason,+ describeSimulationJobResponse_iamRole,+ describeSimulationJobResponse_lastStartedAt,+ describeSimulationJobResponse_lastUpdatedAt,+ describeSimulationJobResponse_loggingConfig,+ describeSimulationJobResponse_maxJobDurationInSeconds,+ describeSimulationJobResponse_name,+ describeSimulationJobResponse_networkInterface,+ describeSimulationJobResponse_outputLocation,+ describeSimulationJobResponse_robotApplications,+ describeSimulationJobResponse_simulationApplications,+ describeSimulationJobResponse_simulationTimeMillis,+ describeSimulationJobResponse_status,+ describeSimulationJobResponse_tags,+ describeSimulationJobResponse_vpcConfig,+ describeSimulationJobResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.RobOMaker.Types++-- | /See:/ 'newDescribeSimulationJob' smart constructor.+data DescribeSimulationJob = DescribeSimulationJob'+ { -- | The Amazon Resource Name (ARN) of the simulation job to be described.+ job :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeSimulationJob' 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:+--+-- 'job', 'describeSimulationJob_job' - The Amazon Resource Name (ARN) of the simulation job to be described.+newDescribeSimulationJob ::+ -- | 'job'+ Prelude.Text ->+ DescribeSimulationJob+newDescribeSimulationJob pJob_ =+ DescribeSimulationJob' {job = pJob_}++-- | The Amazon Resource Name (ARN) of the simulation job to be described.+describeSimulationJob_job :: Lens.Lens' DescribeSimulationJob Prelude.Text+describeSimulationJob_job = Lens.lens (\DescribeSimulationJob' {job} -> job) (\s@DescribeSimulationJob' {} a -> s {job = a} :: DescribeSimulationJob)++instance Core.AWSRequest DescribeSimulationJob where+ type+ AWSResponse DescribeSimulationJob =+ DescribeSimulationJobResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribeSimulationJobResponse'+ Prelude.<$> (x Data..?> "arn")+ Prelude.<*> (x Data..?> "clientRequestToken")+ Prelude.<*> (x Data..?> "compute")+ Prelude.<*> (x Data..?> "dataSources" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "failureBehavior")+ Prelude.<*> (x Data..?> "failureCode")+ Prelude.<*> (x Data..?> "failureReason")+ Prelude.<*> (x Data..?> "iamRole")+ Prelude.<*> (x Data..?> "lastStartedAt")+ Prelude.<*> (x Data..?> "lastUpdatedAt")+ Prelude.<*> (x Data..?> "loggingConfig")+ Prelude.<*> (x Data..?> "maxJobDurationInSeconds")+ Prelude.<*> (x Data..?> "name")+ Prelude.<*> (x Data..?> "networkInterface")+ Prelude.<*> (x Data..?> "outputLocation")+ Prelude.<*> (x Data..?> "robotApplications")+ Prelude.<*> (x Data..?> "simulationApplications")+ Prelude.<*> (x Data..?> "simulationTimeMillis")+ Prelude.<*> (x Data..?> "status")+ Prelude.<*> (x Data..?> "tags" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "vpcConfig")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DescribeSimulationJob where+ hashWithSalt _salt DescribeSimulationJob' {..} =+ _salt `Prelude.hashWithSalt` job++instance Prelude.NFData DescribeSimulationJob where+ rnf DescribeSimulationJob' {..} = Prelude.rnf job++instance Data.ToHeaders DescribeSimulationJob where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON DescribeSimulationJob where+ toJSON DescribeSimulationJob' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("job" Data..= job)]+ )++instance Data.ToPath DescribeSimulationJob where+ toPath = Prelude.const "/describeSimulationJob"++instance Data.ToQuery DescribeSimulationJob where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDescribeSimulationJobResponse' smart constructor.+data DescribeSimulationJobResponse = DescribeSimulationJobResponse'+ { -- | The Amazon Resource Name (ARN) of the simulation job.+ arn :: Prelude.Maybe Prelude.Text,+ -- | Unique, case-sensitive identifier that you provide to ensure the+ -- idempotency of the request.+ clientRequestToken :: Prelude.Maybe Prelude.Text,+ -- | Compute information for the simulation job.+ compute :: Prelude.Maybe ComputeResponse,+ -- | The data sources for the simulation job.+ dataSources :: Prelude.Maybe [DataSource],+ -- | The failure behavior for the simulation job.+ failureBehavior :: Prelude.Maybe FailureBehavior,+ -- | The failure code of the simulation job if it failed:+ --+ -- [InternalServiceError]+ -- Internal service error.+ --+ -- [RobotApplicationCrash]+ -- Robot application exited abnormally.+ --+ -- [SimulationApplicationCrash]+ -- Simulation application exited abnormally.+ --+ -- [BadPermissionsRobotApplication]+ -- Robot application bundle could not be downloaded.+ --+ -- [BadPermissionsSimulationApplication]+ -- Simulation application bundle could not be downloaded.+ --+ -- [BadPermissionsS3Output]+ -- Unable to publish outputs to customer-provided S3 bucket.+ --+ -- [BadPermissionsCloudwatchLogs]+ -- Unable to publish logs to customer-provided CloudWatch Logs+ -- resource.+ --+ -- [SubnetIpLimitExceeded]+ -- Subnet IP limit exceeded.+ --+ -- [ENILimitExceeded]+ -- ENI limit exceeded.+ --+ -- [BadPermissionsUserCredentials]+ -- Unable to use the Role provided.+ --+ -- [InvalidBundleRobotApplication]+ -- Robot bundle cannot be extracted (invalid format, bundling error, or+ -- other issue).+ --+ -- [InvalidBundleSimulationApplication]+ -- Simulation bundle cannot be extracted (invalid format, bundling+ -- error, or other issue).+ --+ -- [RobotApplicationVersionMismatchedEtag]+ -- Etag for RobotApplication does not match value during version+ -- creation.+ --+ -- [SimulationApplicationVersionMismatchedEtag]+ -- Etag for SimulationApplication does not match value during version+ -- creation.+ failureCode :: Prelude.Maybe SimulationJobErrorCode,+ -- | Details about why the simulation job failed. For more information about+ -- troubleshooting, see+ -- <https://docs.aws.amazon.com/robomaker/latest/dg/troubleshooting.html Troubleshooting>.+ failureReason :: Prelude.Maybe Prelude.Text,+ -- | The IAM role that allows the simulation instance to call the AWS APIs+ -- that are specified in its associated policies on your behalf.+ iamRole :: Prelude.Maybe Prelude.Text,+ -- | The time, in milliseconds since the epoch, when the simulation job was+ -- last started.+ lastStartedAt :: Prelude.Maybe Data.POSIX,+ -- | The time, in milliseconds since the epoch, when the simulation job was+ -- last updated.+ lastUpdatedAt :: Prelude.Maybe Data.POSIX,+ -- | The logging configuration.+ loggingConfig :: Prelude.Maybe LoggingConfig,+ -- | The maximum job duration in seconds. The value must be 8 days (691,200+ -- seconds) or less.+ maxJobDurationInSeconds :: Prelude.Maybe Prelude.Integer,+ -- | The name of the simulation job.+ name :: Prelude.Maybe Prelude.Text,+ -- | The network interface information for the simulation job.+ networkInterface :: Prelude.Maybe NetworkInterface,+ -- | Location for output files generated by the simulation job.+ outputLocation :: Prelude.Maybe OutputLocation,+ -- | A list of robot applications.+ robotApplications :: Prelude.Maybe (Prelude.NonEmpty RobotApplicationConfig),+ -- | A list of simulation applications.+ simulationApplications :: Prelude.Maybe (Prelude.NonEmpty SimulationApplicationConfig),+ -- | The simulation job execution duration in milliseconds.+ simulationTimeMillis :: Prelude.Maybe Prelude.Integer,+ -- | The status of the simulation job.+ status :: Prelude.Maybe SimulationJobStatus,+ -- | The list of all tags added to the specified simulation job.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The VPC configuration.+ vpcConfig :: Prelude.Maybe VPCConfigResponse,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeSimulationJobResponse' 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', 'describeSimulationJobResponse_arn' - The Amazon Resource Name (ARN) of the simulation job.+--+-- 'clientRequestToken', 'describeSimulationJobResponse_clientRequestToken' - Unique, case-sensitive identifier that you provide to ensure the+-- idempotency of the request.+--+-- 'compute', 'describeSimulationJobResponse_compute' - Compute information for the simulation job.+--+-- 'dataSources', 'describeSimulationJobResponse_dataSources' - The data sources for the simulation job.+--+-- 'failureBehavior', 'describeSimulationJobResponse_failureBehavior' - The failure behavior for the simulation job.+--+-- 'failureCode', 'describeSimulationJobResponse_failureCode' - The failure code of the simulation job if it failed:+--+-- [InternalServiceError]+-- Internal service error.+--+-- [RobotApplicationCrash]+-- Robot application exited abnormally.+--+-- [SimulationApplicationCrash]+-- Simulation application exited abnormally.+--+-- [BadPermissionsRobotApplication]+-- Robot application bundle could not be downloaded.+--+-- [BadPermissionsSimulationApplication]+-- Simulation application bundle could not be downloaded.+--+-- [BadPermissionsS3Output]+-- Unable to publish outputs to customer-provided S3 bucket.+--+-- [BadPermissionsCloudwatchLogs]+-- Unable to publish logs to customer-provided CloudWatch Logs+-- resource.+--+-- [SubnetIpLimitExceeded]+-- Subnet IP limit exceeded.+--+-- [ENILimitExceeded]+-- ENI limit exceeded.+--+-- [BadPermissionsUserCredentials]+-- Unable to use the Role provided.+--+-- [InvalidBundleRobotApplication]+-- Robot bundle cannot be extracted (invalid format, bundling error, or+-- other issue).+--+-- [InvalidBundleSimulationApplication]+-- Simulation bundle cannot be extracted (invalid format, bundling+-- error, or other issue).+--+-- [RobotApplicationVersionMismatchedEtag]+-- Etag for RobotApplication does not match value during version+-- creation.+--+-- [SimulationApplicationVersionMismatchedEtag]+-- Etag for SimulationApplication does not match value during version+-- creation.+--+-- 'failureReason', 'describeSimulationJobResponse_failureReason' - Details about why the simulation job failed. For more information about+-- troubleshooting, see+-- <https://docs.aws.amazon.com/robomaker/latest/dg/troubleshooting.html Troubleshooting>.+--+-- 'iamRole', 'describeSimulationJobResponse_iamRole' - The IAM role that allows the simulation instance to call the AWS APIs+-- that are specified in its associated policies on your behalf.+--+-- 'lastStartedAt', 'describeSimulationJobResponse_lastStartedAt' - The time, in milliseconds since the epoch, when the simulation job was+-- last started.+--+-- 'lastUpdatedAt', 'describeSimulationJobResponse_lastUpdatedAt' - The time, in milliseconds since the epoch, when the simulation job was+-- last updated.+--+-- 'loggingConfig', 'describeSimulationJobResponse_loggingConfig' - The logging configuration.+--+-- 'maxJobDurationInSeconds', 'describeSimulationJobResponse_maxJobDurationInSeconds' - The maximum job duration in seconds. The value must be 8 days (691,200+-- seconds) or less.+--+-- 'name', 'describeSimulationJobResponse_name' - The name of the simulation job.+--+-- 'networkInterface', 'describeSimulationJobResponse_networkInterface' - The network interface information for the simulation job.+--+-- 'outputLocation', 'describeSimulationJobResponse_outputLocation' - Location for output files generated by the simulation job.+--+-- 'robotApplications', 'describeSimulationJobResponse_robotApplications' - A list of robot applications.+--+-- 'simulationApplications', 'describeSimulationJobResponse_simulationApplications' - A list of simulation applications.+--+-- 'simulationTimeMillis', 'describeSimulationJobResponse_simulationTimeMillis' - The simulation job execution duration in milliseconds.+--+-- 'status', 'describeSimulationJobResponse_status' - The status of the simulation job.+--+-- 'tags', 'describeSimulationJobResponse_tags' - The list of all tags added to the specified simulation job.+--+-- 'vpcConfig', 'describeSimulationJobResponse_vpcConfig' - The VPC configuration.+--+-- 'httpStatus', 'describeSimulationJobResponse_httpStatus' - The response's http status code.+newDescribeSimulationJobResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeSimulationJobResponse+newDescribeSimulationJobResponse pHttpStatus_ =+ DescribeSimulationJobResponse'+ { arn =+ Prelude.Nothing,+ clientRequestToken = Prelude.Nothing,+ compute = Prelude.Nothing,+ dataSources = Prelude.Nothing,+ failureBehavior = Prelude.Nothing,+ failureCode = Prelude.Nothing,+ failureReason = Prelude.Nothing,+ iamRole = Prelude.Nothing,+ lastStartedAt = Prelude.Nothing,+ lastUpdatedAt = Prelude.Nothing,+ loggingConfig = Prelude.Nothing,+ maxJobDurationInSeconds = Prelude.Nothing,+ name = Prelude.Nothing,+ networkInterface = Prelude.Nothing,+ outputLocation = Prelude.Nothing,+ robotApplications = Prelude.Nothing,+ simulationApplications = Prelude.Nothing,+ simulationTimeMillis = Prelude.Nothing,+ status = Prelude.Nothing,+ tags = Prelude.Nothing,+ vpcConfig = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The Amazon Resource Name (ARN) of the simulation job.+describeSimulationJobResponse_arn :: Lens.Lens' DescribeSimulationJobResponse (Prelude.Maybe Prelude.Text)+describeSimulationJobResponse_arn = Lens.lens (\DescribeSimulationJobResponse' {arn} -> arn) (\s@DescribeSimulationJobResponse' {} a -> s {arn = a} :: DescribeSimulationJobResponse)++-- | Unique, case-sensitive identifier that you provide to ensure the+-- idempotency of the request.+describeSimulationJobResponse_clientRequestToken :: Lens.Lens' DescribeSimulationJobResponse (Prelude.Maybe Prelude.Text)+describeSimulationJobResponse_clientRequestToken = Lens.lens (\DescribeSimulationJobResponse' {clientRequestToken} -> clientRequestToken) (\s@DescribeSimulationJobResponse' {} a -> s {clientRequestToken = a} :: DescribeSimulationJobResponse)++-- | Compute information for the simulation job.+describeSimulationJobResponse_compute :: Lens.Lens' DescribeSimulationJobResponse (Prelude.Maybe ComputeResponse)+describeSimulationJobResponse_compute = Lens.lens (\DescribeSimulationJobResponse' {compute} -> compute) (\s@DescribeSimulationJobResponse' {} a -> s {compute = a} :: DescribeSimulationJobResponse)++-- | The data sources for the simulation job.+describeSimulationJobResponse_dataSources :: Lens.Lens' DescribeSimulationJobResponse (Prelude.Maybe [DataSource])+describeSimulationJobResponse_dataSources = Lens.lens (\DescribeSimulationJobResponse' {dataSources} -> dataSources) (\s@DescribeSimulationJobResponse' {} a -> s {dataSources = a} :: DescribeSimulationJobResponse) Prelude.. Lens.mapping Lens.coerced++-- | The failure behavior for the simulation job.+describeSimulationJobResponse_failureBehavior :: Lens.Lens' DescribeSimulationJobResponse (Prelude.Maybe FailureBehavior)+describeSimulationJobResponse_failureBehavior = Lens.lens (\DescribeSimulationJobResponse' {failureBehavior} -> failureBehavior) (\s@DescribeSimulationJobResponse' {} a -> s {failureBehavior = a} :: DescribeSimulationJobResponse)++-- | The failure code of the simulation job if it failed:+--+-- [InternalServiceError]+-- Internal service error.+--+-- [RobotApplicationCrash]+-- Robot application exited abnormally.+--+-- [SimulationApplicationCrash]+-- Simulation application exited abnormally.+--+-- [BadPermissionsRobotApplication]+-- Robot application bundle could not be downloaded.+--+-- [BadPermissionsSimulationApplication]+-- Simulation application bundle could not be downloaded.+--+-- [BadPermissionsS3Output]+-- Unable to publish outputs to customer-provided S3 bucket.+--+-- [BadPermissionsCloudwatchLogs]+-- Unable to publish logs to customer-provided CloudWatch Logs+-- resource.+--+-- [SubnetIpLimitExceeded]+-- Subnet IP limit exceeded.+--+-- [ENILimitExceeded]+-- ENI limit exceeded.+--+-- [BadPermissionsUserCredentials]+-- Unable to use the Role provided.+--+-- [InvalidBundleRobotApplication]+-- Robot bundle cannot be extracted (invalid format, bundling error, or+-- other issue).+--+-- [InvalidBundleSimulationApplication]+-- Simulation bundle cannot be extracted (invalid format, bundling+-- error, or other issue).+--+-- [RobotApplicationVersionMismatchedEtag]+-- Etag for RobotApplication does not match value during version+-- creation.+--+-- [SimulationApplicationVersionMismatchedEtag]+-- Etag for SimulationApplication does not match value during version+-- creation.+describeSimulationJobResponse_failureCode :: Lens.Lens' DescribeSimulationJobResponse (Prelude.Maybe SimulationJobErrorCode)+describeSimulationJobResponse_failureCode = Lens.lens (\DescribeSimulationJobResponse' {failureCode} -> failureCode) (\s@DescribeSimulationJobResponse' {} a -> s {failureCode = a} :: DescribeSimulationJobResponse)++-- | Details about why the simulation job failed. For more information about+-- troubleshooting, see+-- <https://docs.aws.amazon.com/robomaker/latest/dg/troubleshooting.html Troubleshooting>.+describeSimulationJobResponse_failureReason :: Lens.Lens' DescribeSimulationJobResponse (Prelude.Maybe Prelude.Text)+describeSimulationJobResponse_failureReason = Lens.lens (\DescribeSimulationJobResponse' {failureReason} -> failureReason) (\s@DescribeSimulationJobResponse' {} a -> s {failureReason = a} :: DescribeSimulationJobResponse)++-- | The IAM role that allows the simulation instance to call the AWS APIs+-- that are specified in its associated policies on your behalf.+describeSimulationJobResponse_iamRole :: Lens.Lens' DescribeSimulationJobResponse (Prelude.Maybe Prelude.Text)+describeSimulationJobResponse_iamRole = Lens.lens (\DescribeSimulationJobResponse' {iamRole} -> iamRole) (\s@DescribeSimulationJobResponse' {} a -> s {iamRole = a} :: DescribeSimulationJobResponse)++-- | The time, in milliseconds since the epoch, when the simulation job was+-- last started.+describeSimulationJobResponse_lastStartedAt :: Lens.Lens' DescribeSimulationJobResponse (Prelude.Maybe Prelude.UTCTime)+describeSimulationJobResponse_lastStartedAt = Lens.lens (\DescribeSimulationJobResponse' {lastStartedAt} -> lastStartedAt) (\s@DescribeSimulationJobResponse' {} a -> s {lastStartedAt = a} :: DescribeSimulationJobResponse) Prelude.. Lens.mapping Data._Time++-- | The time, in milliseconds since the epoch, when the simulation job was+-- last updated.+describeSimulationJobResponse_lastUpdatedAt :: Lens.Lens' DescribeSimulationJobResponse (Prelude.Maybe Prelude.UTCTime)+describeSimulationJobResponse_lastUpdatedAt = Lens.lens (\DescribeSimulationJobResponse' {lastUpdatedAt} -> lastUpdatedAt) (\s@DescribeSimulationJobResponse' {} a -> s {lastUpdatedAt = a} :: DescribeSimulationJobResponse) Prelude.. Lens.mapping Data._Time++-- | The logging configuration.+describeSimulationJobResponse_loggingConfig :: Lens.Lens' DescribeSimulationJobResponse (Prelude.Maybe LoggingConfig)+describeSimulationJobResponse_loggingConfig = Lens.lens (\DescribeSimulationJobResponse' {loggingConfig} -> loggingConfig) (\s@DescribeSimulationJobResponse' {} a -> s {loggingConfig = a} :: DescribeSimulationJobResponse)++-- | The maximum job duration in seconds. The value must be 8 days (691,200+-- seconds) or less.+describeSimulationJobResponse_maxJobDurationInSeconds :: Lens.Lens' DescribeSimulationJobResponse (Prelude.Maybe Prelude.Integer)+describeSimulationJobResponse_maxJobDurationInSeconds = Lens.lens (\DescribeSimulationJobResponse' {maxJobDurationInSeconds} -> maxJobDurationInSeconds) (\s@DescribeSimulationJobResponse' {} a -> s {maxJobDurationInSeconds = a} :: DescribeSimulationJobResponse)++-- | The name of the simulation job.+describeSimulationJobResponse_name :: Lens.Lens' DescribeSimulationJobResponse (Prelude.Maybe Prelude.Text)+describeSimulationJobResponse_name = Lens.lens (\DescribeSimulationJobResponse' {name} -> name) (\s@DescribeSimulationJobResponse' {} a -> s {name = a} :: DescribeSimulationJobResponse)++-- | The network interface information for the simulation job.+describeSimulationJobResponse_networkInterface :: Lens.Lens' DescribeSimulationJobResponse (Prelude.Maybe NetworkInterface)+describeSimulationJobResponse_networkInterface = Lens.lens (\DescribeSimulationJobResponse' {networkInterface} -> networkInterface) (\s@DescribeSimulationJobResponse' {} a -> s {networkInterface = a} :: DescribeSimulationJobResponse)++-- | Location for output files generated by the simulation job.+describeSimulationJobResponse_outputLocation :: Lens.Lens' DescribeSimulationJobResponse (Prelude.Maybe OutputLocation)+describeSimulationJobResponse_outputLocation = Lens.lens (\DescribeSimulationJobResponse' {outputLocation} -> outputLocation) (\s@DescribeSimulationJobResponse' {} a -> s {outputLocation = a} :: DescribeSimulationJobResponse)++-- | A list of robot applications.+describeSimulationJobResponse_robotApplications :: Lens.Lens' DescribeSimulationJobResponse (Prelude.Maybe (Prelude.NonEmpty RobotApplicationConfig))+describeSimulationJobResponse_robotApplications = Lens.lens (\DescribeSimulationJobResponse' {robotApplications} -> robotApplications) (\s@DescribeSimulationJobResponse' {} a -> s {robotApplications = a} :: DescribeSimulationJobResponse) Prelude.. Lens.mapping Lens.coerced++-- | A list of simulation applications.+describeSimulationJobResponse_simulationApplications :: Lens.Lens' DescribeSimulationJobResponse (Prelude.Maybe (Prelude.NonEmpty SimulationApplicationConfig))+describeSimulationJobResponse_simulationApplications = Lens.lens (\DescribeSimulationJobResponse' {simulationApplications} -> simulationApplications) (\s@DescribeSimulationJobResponse' {} a -> s {simulationApplications = a} :: DescribeSimulationJobResponse) Prelude.. Lens.mapping Lens.coerced++-- | The simulation job execution duration in milliseconds.+describeSimulationJobResponse_simulationTimeMillis :: Lens.Lens' DescribeSimulationJobResponse (Prelude.Maybe Prelude.Integer)+describeSimulationJobResponse_simulationTimeMillis = Lens.lens (\DescribeSimulationJobResponse' {simulationTimeMillis} -> simulationTimeMillis) (\s@DescribeSimulationJobResponse' {} a -> s {simulationTimeMillis = a} :: DescribeSimulationJobResponse)++-- | The status of the simulation job.+describeSimulationJobResponse_status :: Lens.Lens' DescribeSimulationJobResponse (Prelude.Maybe SimulationJobStatus)+describeSimulationJobResponse_status = Lens.lens (\DescribeSimulationJobResponse' {status} -> status) (\s@DescribeSimulationJobResponse' {} a -> s {status = a} :: DescribeSimulationJobResponse)++-- | The list of all tags added to the specified simulation job.+describeSimulationJobResponse_tags :: Lens.Lens' DescribeSimulationJobResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+describeSimulationJobResponse_tags = Lens.lens (\DescribeSimulationJobResponse' {tags} -> tags) (\s@DescribeSimulationJobResponse' {} a -> s {tags = a} :: DescribeSimulationJobResponse) Prelude.. Lens.mapping Lens.coerced++-- | The VPC configuration.+describeSimulationJobResponse_vpcConfig :: Lens.Lens' DescribeSimulationJobResponse (Prelude.Maybe VPCConfigResponse)+describeSimulationJobResponse_vpcConfig = Lens.lens (\DescribeSimulationJobResponse' {vpcConfig} -> vpcConfig) (\s@DescribeSimulationJobResponse' {} a -> s {vpcConfig = a} :: DescribeSimulationJobResponse)++-- | The response's http status code.+describeSimulationJobResponse_httpStatus :: Lens.Lens' DescribeSimulationJobResponse Prelude.Int+describeSimulationJobResponse_httpStatus = Lens.lens (\DescribeSimulationJobResponse' {httpStatus} -> httpStatus) (\s@DescribeSimulationJobResponse' {} a -> s {httpStatus = a} :: DescribeSimulationJobResponse)++instance Prelude.NFData DescribeSimulationJobResponse where+ rnf DescribeSimulationJobResponse' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf clientRequestToken+ `Prelude.seq` Prelude.rnf compute+ `Prelude.seq` Prelude.rnf dataSources+ `Prelude.seq` Prelude.rnf failureBehavior+ `Prelude.seq` Prelude.rnf failureCode+ `Prelude.seq` Prelude.rnf failureReason+ `Prelude.seq` Prelude.rnf iamRole+ `Prelude.seq` Prelude.rnf lastStartedAt+ `Prelude.seq` Prelude.rnf lastUpdatedAt+ `Prelude.seq` Prelude.rnf loggingConfig+ `Prelude.seq` Prelude.rnf maxJobDurationInSeconds+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf networkInterface+ `Prelude.seq` Prelude.rnf outputLocation+ `Prelude.seq` Prelude.rnf robotApplications+ `Prelude.seq` Prelude.rnf simulationApplications+ `Prelude.seq` Prelude.rnf simulationTimeMillis+ `Prelude.seq` Prelude.rnf status+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf vpcConfig+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/RobOMaker/DescribeSimulationJobBatch.hs view
@@ -0,0 +1,441 @@+{-# 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.RobOMaker.DescribeSimulationJobBatch+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Describes a simulation job batch.+module Amazonka.RobOMaker.DescribeSimulationJobBatch+ ( -- * Creating a Request+ DescribeSimulationJobBatch (..),+ newDescribeSimulationJobBatch,++ -- * Request Lenses+ describeSimulationJobBatch_batch,++ -- * Destructuring the Response+ DescribeSimulationJobBatchResponse (..),+ newDescribeSimulationJobBatchResponse,++ -- * Response Lenses+ describeSimulationJobBatchResponse_arn,+ describeSimulationJobBatchResponse_batchPolicy,+ describeSimulationJobBatchResponse_clientRequestToken,+ describeSimulationJobBatchResponse_createdAt,+ describeSimulationJobBatchResponse_createdRequests,+ describeSimulationJobBatchResponse_failedRequests,+ describeSimulationJobBatchResponse_failureCode,+ describeSimulationJobBatchResponse_failureReason,+ describeSimulationJobBatchResponse_lastUpdatedAt,+ describeSimulationJobBatchResponse_pendingRequests,+ describeSimulationJobBatchResponse_status,+ describeSimulationJobBatchResponse_tags,+ describeSimulationJobBatchResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.RobOMaker.Types++-- | /See:/ 'newDescribeSimulationJobBatch' smart constructor.+data DescribeSimulationJobBatch = DescribeSimulationJobBatch'+ { -- | The id of the batch to describe.+ batch :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeSimulationJobBatch' 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:+--+-- 'batch', 'describeSimulationJobBatch_batch' - The id of the batch to describe.+newDescribeSimulationJobBatch ::+ -- | 'batch'+ Prelude.Text ->+ DescribeSimulationJobBatch+newDescribeSimulationJobBatch pBatch_ =+ DescribeSimulationJobBatch' {batch = pBatch_}++-- | The id of the batch to describe.+describeSimulationJobBatch_batch :: Lens.Lens' DescribeSimulationJobBatch Prelude.Text+describeSimulationJobBatch_batch = Lens.lens (\DescribeSimulationJobBatch' {batch} -> batch) (\s@DescribeSimulationJobBatch' {} a -> s {batch = a} :: DescribeSimulationJobBatch)++instance Core.AWSRequest DescribeSimulationJobBatch where+ type+ AWSResponse DescribeSimulationJobBatch =+ DescribeSimulationJobBatchResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribeSimulationJobBatchResponse'+ Prelude.<$> (x Data..?> "arn")+ Prelude.<*> (x Data..?> "batchPolicy")+ Prelude.<*> (x Data..?> "clientRequestToken")+ Prelude.<*> (x Data..?> "createdAt")+ Prelude.<*> ( x+ Data..?> "createdRequests"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "failedRequests" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "failureCode")+ Prelude.<*> (x Data..?> "failureReason")+ Prelude.<*> (x Data..?> "lastUpdatedAt")+ Prelude.<*> (x Data..?> "pendingRequests")+ Prelude.<*> (x Data..?> "status")+ Prelude.<*> (x Data..?> "tags" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DescribeSimulationJobBatch where+ hashWithSalt _salt DescribeSimulationJobBatch' {..} =+ _salt `Prelude.hashWithSalt` batch++instance Prelude.NFData DescribeSimulationJobBatch where+ rnf DescribeSimulationJobBatch' {..} =+ Prelude.rnf batch++instance Data.ToHeaders DescribeSimulationJobBatch where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON DescribeSimulationJobBatch where+ toJSON DescribeSimulationJobBatch' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("batch" Data..= batch)]+ )++instance Data.ToPath DescribeSimulationJobBatch where+ toPath = Prelude.const "/describeSimulationJobBatch"++instance Data.ToQuery DescribeSimulationJobBatch where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDescribeSimulationJobBatchResponse' smart constructor.+data DescribeSimulationJobBatchResponse = DescribeSimulationJobBatchResponse'+ { -- | The Amazon Resource Name (ARN) of the batch.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The batch policy.+ batchPolicy :: Prelude.Maybe BatchPolicy,+ -- | Unique, case-sensitive identifier that you provide to ensure the+ -- idempotency of the request.+ clientRequestToken :: Prelude.Maybe Prelude.Text,+ -- | The time, in milliseconds since the epoch, when the simulation job batch+ -- was created.+ createdAt :: Prelude.Maybe Data.POSIX,+ -- | A list of created simulation job summaries.+ createdRequests :: Prelude.Maybe [SimulationJobSummary],+ -- | A list of failed create simulation job requests. The request failed to+ -- be created into a simulation job. Failed requests do not have a+ -- simulation job ID.+ failedRequests :: Prelude.Maybe [FailedCreateSimulationJobRequest],+ -- | The failure code of the simulation job batch.+ failureCode :: Prelude.Maybe SimulationJobBatchErrorCode,+ -- | The reason the simulation job batch failed.+ failureReason :: Prelude.Maybe Prelude.Text,+ -- | The time, in milliseconds since the epoch, when the simulation job batch+ -- was last updated.+ lastUpdatedAt :: Prelude.Maybe Data.POSIX,+ -- | A list of pending simulation job requests. These requests have not yet+ -- been created into simulation jobs.+ pendingRequests :: Prelude.Maybe (Prelude.NonEmpty SimulationJobRequest),+ -- | The status of the batch.+ --+ -- [Pending]+ -- The simulation job batch request is pending.+ --+ -- [InProgress]+ -- The simulation job batch is in progress.+ --+ -- [Failed]+ -- The simulation job batch failed. One or more simulation job requests+ -- could not be completed due to an internal failure (like+ -- @InternalServiceError@). See @failureCode@ and @failureReason@ for+ -- more information.+ --+ -- [Completed]+ -- The simulation batch job completed. A batch is complete when (1)+ -- there are no pending simulation job requests in the batch and none+ -- of the failed simulation job requests are due to+ -- @InternalServiceError@ and (2) when all created simulation jobs have+ -- reached a terminal state (for example, @Completed@ or @Failed@).+ --+ -- [Canceled]+ -- The simulation batch job was cancelled.+ --+ -- [Canceling]+ -- The simulation batch job is being cancelled.+ --+ -- [Completing]+ -- The simulation batch job is completing.+ --+ -- [TimingOut]+ -- The simulation job batch is timing out.+ --+ -- If a batch timing out, and there are pending requests that were+ -- failing due to an internal failure (like @InternalServiceError@),+ -- the batch status will be @Failed@. If there are no such failing+ -- request, the batch status will be @TimedOut@.+ --+ -- [TimedOut]+ -- The simulation batch job timed out.+ status :: Prelude.Maybe SimulationJobBatchStatus,+ -- | A map that contains tag keys and tag values that are attached to the+ -- simulation job batch.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeSimulationJobBatchResponse' 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', 'describeSimulationJobBatchResponse_arn' - The Amazon Resource Name (ARN) of the batch.+--+-- 'batchPolicy', 'describeSimulationJobBatchResponse_batchPolicy' - The batch policy.+--+-- 'clientRequestToken', 'describeSimulationJobBatchResponse_clientRequestToken' - Unique, case-sensitive identifier that you provide to ensure the+-- idempotency of the request.+--+-- 'createdAt', 'describeSimulationJobBatchResponse_createdAt' - The time, in milliseconds since the epoch, when the simulation job batch+-- was created.+--+-- 'createdRequests', 'describeSimulationJobBatchResponse_createdRequests' - A list of created simulation job summaries.+--+-- 'failedRequests', 'describeSimulationJobBatchResponse_failedRequests' - A list of failed create simulation job requests. The request failed to+-- be created into a simulation job. Failed requests do not have a+-- simulation job ID.+--+-- 'failureCode', 'describeSimulationJobBatchResponse_failureCode' - The failure code of the simulation job batch.+--+-- 'failureReason', 'describeSimulationJobBatchResponse_failureReason' - The reason the simulation job batch failed.+--+-- 'lastUpdatedAt', 'describeSimulationJobBatchResponse_lastUpdatedAt' - The time, in milliseconds since the epoch, when the simulation job batch+-- was last updated.+--+-- 'pendingRequests', 'describeSimulationJobBatchResponse_pendingRequests' - A list of pending simulation job requests. These requests have not yet+-- been created into simulation jobs.+--+-- 'status', 'describeSimulationJobBatchResponse_status' - The status of the batch.+--+-- [Pending]+-- The simulation job batch request is pending.+--+-- [InProgress]+-- The simulation job batch is in progress.+--+-- [Failed]+-- The simulation job batch failed. One or more simulation job requests+-- could not be completed due to an internal failure (like+-- @InternalServiceError@). See @failureCode@ and @failureReason@ for+-- more information.+--+-- [Completed]+-- The simulation batch job completed. A batch is complete when (1)+-- there are no pending simulation job requests in the batch and none+-- of the failed simulation job requests are due to+-- @InternalServiceError@ and (2) when all created simulation jobs have+-- reached a terminal state (for example, @Completed@ or @Failed@).+--+-- [Canceled]+-- The simulation batch job was cancelled.+--+-- [Canceling]+-- The simulation batch job is being cancelled.+--+-- [Completing]+-- The simulation batch job is completing.+--+-- [TimingOut]+-- The simulation job batch is timing out.+--+-- If a batch timing out, and there are pending requests that were+-- failing due to an internal failure (like @InternalServiceError@),+-- the batch status will be @Failed@. If there are no such failing+-- request, the batch status will be @TimedOut@.+--+-- [TimedOut]+-- The simulation batch job timed out.+--+-- 'tags', 'describeSimulationJobBatchResponse_tags' - A map that contains tag keys and tag values that are attached to the+-- simulation job batch.+--+-- 'httpStatus', 'describeSimulationJobBatchResponse_httpStatus' - The response's http status code.+newDescribeSimulationJobBatchResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeSimulationJobBatchResponse+newDescribeSimulationJobBatchResponse pHttpStatus_ =+ DescribeSimulationJobBatchResponse'+ { arn =+ Prelude.Nothing,+ batchPolicy = Prelude.Nothing,+ clientRequestToken = Prelude.Nothing,+ createdAt = Prelude.Nothing,+ createdRequests = Prelude.Nothing,+ failedRequests = Prelude.Nothing,+ failureCode = Prelude.Nothing,+ failureReason = Prelude.Nothing,+ lastUpdatedAt = Prelude.Nothing,+ pendingRequests = Prelude.Nothing,+ status = Prelude.Nothing,+ tags = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The Amazon Resource Name (ARN) of the batch.+describeSimulationJobBatchResponse_arn :: Lens.Lens' DescribeSimulationJobBatchResponse (Prelude.Maybe Prelude.Text)+describeSimulationJobBatchResponse_arn = Lens.lens (\DescribeSimulationJobBatchResponse' {arn} -> arn) (\s@DescribeSimulationJobBatchResponse' {} a -> s {arn = a} :: DescribeSimulationJobBatchResponse)++-- | The batch policy.+describeSimulationJobBatchResponse_batchPolicy :: Lens.Lens' DescribeSimulationJobBatchResponse (Prelude.Maybe BatchPolicy)+describeSimulationJobBatchResponse_batchPolicy = Lens.lens (\DescribeSimulationJobBatchResponse' {batchPolicy} -> batchPolicy) (\s@DescribeSimulationJobBatchResponse' {} a -> s {batchPolicy = a} :: DescribeSimulationJobBatchResponse)++-- | Unique, case-sensitive identifier that you provide to ensure the+-- idempotency of the request.+describeSimulationJobBatchResponse_clientRequestToken :: Lens.Lens' DescribeSimulationJobBatchResponse (Prelude.Maybe Prelude.Text)+describeSimulationJobBatchResponse_clientRequestToken = Lens.lens (\DescribeSimulationJobBatchResponse' {clientRequestToken} -> clientRequestToken) (\s@DescribeSimulationJobBatchResponse' {} a -> s {clientRequestToken = a} :: DescribeSimulationJobBatchResponse)++-- | The time, in milliseconds since the epoch, when the simulation job batch+-- was created.+describeSimulationJobBatchResponse_createdAt :: Lens.Lens' DescribeSimulationJobBatchResponse (Prelude.Maybe Prelude.UTCTime)+describeSimulationJobBatchResponse_createdAt = Lens.lens (\DescribeSimulationJobBatchResponse' {createdAt} -> createdAt) (\s@DescribeSimulationJobBatchResponse' {} a -> s {createdAt = a} :: DescribeSimulationJobBatchResponse) Prelude.. Lens.mapping Data._Time++-- | A list of created simulation job summaries.+describeSimulationJobBatchResponse_createdRequests :: Lens.Lens' DescribeSimulationJobBatchResponse (Prelude.Maybe [SimulationJobSummary])+describeSimulationJobBatchResponse_createdRequests = Lens.lens (\DescribeSimulationJobBatchResponse' {createdRequests} -> createdRequests) (\s@DescribeSimulationJobBatchResponse' {} a -> s {createdRequests = a} :: DescribeSimulationJobBatchResponse) Prelude.. Lens.mapping Lens.coerced++-- | A list of failed create simulation job requests. The request failed to+-- be created into a simulation job. Failed requests do not have a+-- simulation job ID.+describeSimulationJobBatchResponse_failedRequests :: Lens.Lens' DescribeSimulationJobBatchResponse (Prelude.Maybe [FailedCreateSimulationJobRequest])+describeSimulationJobBatchResponse_failedRequests = Lens.lens (\DescribeSimulationJobBatchResponse' {failedRequests} -> failedRequests) (\s@DescribeSimulationJobBatchResponse' {} a -> s {failedRequests = a} :: DescribeSimulationJobBatchResponse) Prelude.. Lens.mapping Lens.coerced++-- | The failure code of the simulation job batch.+describeSimulationJobBatchResponse_failureCode :: Lens.Lens' DescribeSimulationJobBatchResponse (Prelude.Maybe SimulationJobBatchErrorCode)+describeSimulationJobBatchResponse_failureCode = Lens.lens (\DescribeSimulationJobBatchResponse' {failureCode} -> failureCode) (\s@DescribeSimulationJobBatchResponse' {} a -> s {failureCode = a} :: DescribeSimulationJobBatchResponse)++-- | The reason the simulation job batch failed.+describeSimulationJobBatchResponse_failureReason :: Lens.Lens' DescribeSimulationJobBatchResponse (Prelude.Maybe Prelude.Text)+describeSimulationJobBatchResponse_failureReason = Lens.lens (\DescribeSimulationJobBatchResponse' {failureReason} -> failureReason) (\s@DescribeSimulationJobBatchResponse' {} a -> s {failureReason = a} :: DescribeSimulationJobBatchResponse)++-- | The time, in milliseconds since the epoch, when the simulation job batch+-- was last updated.+describeSimulationJobBatchResponse_lastUpdatedAt :: Lens.Lens' DescribeSimulationJobBatchResponse (Prelude.Maybe Prelude.UTCTime)+describeSimulationJobBatchResponse_lastUpdatedAt = Lens.lens (\DescribeSimulationJobBatchResponse' {lastUpdatedAt} -> lastUpdatedAt) (\s@DescribeSimulationJobBatchResponse' {} a -> s {lastUpdatedAt = a} :: DescribeSimulationJobBatchResponse) Prelude.. Lens.mapping Data._Time++-- | A list of pending simulation job requests. These requests have not yet+-- been created into simulation jobs.+describeSimulationJobBatchResponse_pendingRequests :: Lens.Lens' DescribeSimulationJobBatchResponse (Prelude.Maybe (Prelude.NonEmpty SimulationJobRequest))+describeSimulationJobBatchResponse_pendingRequests = Lens.lens (\DescribeSimulationJobBatchResponse' {pendingRequests} -> pendingRequests) (\s@DescribeSimulationJobBatchResponse' {} a -> s {pendingRequests = a} :: DescribeSimulationJobBatchResponse) Prelude.. Lens.mapping Lens.coerced++-- | The status of the batch.+--+-- [Pending]+-- The simulation job batch request is pending.+--+-- [InProgress]+-- The simulation job batch is in progress.+--+-- [Failed]+-- The simulation job batch failed. One or more simulation job requests+-- could not be completed due to an internal failure (like+-- @InternalServiceError@). See @failureCode@ and @failureReason@ for+-- more information.+--+-- [Completed]+-- The simulation batch job completed. A batch is complete when (1)+-- there are no pending simulation job requests in the batch and none+-- of the failed simulation job requests are due to+-- @InternalServiceError@ and (2) when all created simulation jobs have+-- reached a terminal state (for example, @Completed@ or @Failed@).+--+-- [Canceled]+-- The simulation batch job was cancelled.+--+-- [Canceling]+-- The simulation batch job is being cancelled.+--+-- [Completing]+-- The simulation batch job is completing.+--+-- [TimingOut]+-- The simulation job batch is timing out.+--+-- If a batch timing out, and there are pending requests that were+-- failing due to an internal failure (like @InternalServiceError@),+-- the batch status will be @Failed@. If there are no such failing+-- request, the batch status will be @TimedOut@.+--+-- [TimedOut]+-- The simulation batch job timed out.+describeSimulationJobBatchResponse_status :: Lens.Lens' DescribeSimulationJobBatchResponse (Prelude.Maybe SimulationJobBatchStatus)+describeSimulationJobBatchResponse_status = Lens.lens (\DescribeSimulationJobBatchResponse' {status} -> status) (\s@DescribeSimulationJobBatchResponse' {} a -> s {status = a} :: DescribeSimulationJobBatchResponse)++-- | A map that contains tag keys and tag values that are attached to the+-- simulation job batch.+describeSimulationJobBatchResponse_tags :: Lens.Lens' DescribeSimulationJobBatchResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+describeSimulationJobBatchResponse_tags = Lens.lens (\DescribeSimulationJobBatchResponse' {tags} -> tags) (\s@DescribeSimulationJobBatchResponse' {} a -> s {tags = a} :: DescribeSimulationJobBatchResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+describeSimulationJobBatchResponse_httpStatus :: Lens.Lens' DescribeSimulationJobBatchResponse Prelude.Int+describeSimulationJobBatchResponse_httpStatus = Lens.lens (\DescribeSimulationJobBatchResponse' {httpStatus} -> httpStatus) (\s@DescribeSimulationJobBatchResponse' {} a -> s {httpStatus = a} :: DescribeSimulationJobBatchResponse)++instance+ Prelude.NFData+ DescribeSimulationJobBatchResponse+ where+ rnf DescribeSimulationJobBatchResponse' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf batchPolicy+ `Prelude.seq` Prelude.rnf clientRequestToken+ `Prelude.seq` Prelude.rnf createdAt+ `Prelude.seq` Prelude.rnf createdRequests+ `Prelude.seq` Prelude.rnf failedRequests+ `Prelude.seq` Prelude.rnf failureCode+ `Prelude.seq` Prelude.rnf failureReason+ `Prelude.seq` Prelude.rnf lastUpdatedAt+ `Prelude.seq` Prelude.rnf pendingRequests+ `Prelude.seq` Prelude.rnf status+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/RobOMaker/DescribeWorld.hs view
@@ -0,0 +1,232 @@+{-# 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.RobOMaker.DescribeWorld+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Describes a world.+module Amazonka.RobOMaker.DescribeWorld+ ( -- * Creating a Request+ DescribeWorld (..),+ newDescribeWorld,++ -- * Request Lenses+ describeWorld_world,++ -- * Destructuring the Response+ DescribeWorldResponse (..),+ newDescribeWorldResponse,++ -- * Response Lenses+ describeWorldResponse_arn,+ describeWorldResponse_createdAt,+ describeWorldResponse_generationJob,+ describeWorldResponse_tags,+ describeWorldResponse_template,+ describeWorldResponse_worldDescriptionBody,+ describeWorldResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.RobOMaker.Types++-- | /See:/ 'newDescribeWorld' smart constructor.+data DescribeWorld = DescribeWorld'+ { -- | The Amazon Resource Name (arn) of the world you want to describe.+ world :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeWorld' 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:+--+-- 'world', 'describeWorld_world' - The Amazon Resource Name (arn) of the world you want to describe.+newDescribeWorld ::+ -- | 'world'+ Prelude.Text ->+ DescribeWorld+newDescribeWorld pWorld_ =+ DescribeWorld' {world = pWorld_}++-- | The Amazon Resource Name (arn) of the world you want to describe.+describeWorld_world :: Lens.Lens' DescribeWorld Prelude.Text+describeWorld_world = Lens.lens (\DescribeWorld' {world} -> world) (\s@DescribeWorld' {} a -> s {world = a} :: DescribeWorld)++instance Core.AWSRequest DescribeWorld where+ type+ AWSResponse DescribeWorld =+ DescribeWorldResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribeWorldResponse'+ Prelude.<$> (x Data..?> "arn")+ Prelude.<*> (x Data..?> "createdAt")+ Prelude.<*> (x Data..?> "generationJob")+ Prelude.<*> (x Data..?> "tags" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "template")+ Prelude.<*> (x Data..?> "worldDescriptionBody")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DescribeWorld where+ hashWithSalt _salt DescribeWorld' {..} =+ _salt `Prelude.hashWithSalt` world++instance Prelude.NFData DescribeWorld where+ rnf DescribeWorld' {..} = Prelude.rnf world++instance Data.ToHeaders DescribeWorld where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON DescribeWorld where+ toJSON DescribeWorld' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("world" Data..= world)]+ )++instance Data.ToPath DescribeWorld where+ toPath = Prelude.const "/describeWorld"++instance Data.ToQuery DescribeWorld where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDescribeWorldResponse' smart constructor.+data DescribeWorldResponse = DescribeWorldResponse'+ { -- | The Amazon Resource Name (arn) of the world.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The time, in milliseconds since the epoch, when the world was created.+ createdAt :: Prelude.Maybe Data.POSIX,+ -- | The Amazon Resource Name (arn) of the world generation job that+ -- generated the world.+ generationJob :: Prelude.Maybe Prelude.Text,+ -- | A map that contains tag keys and tag values that are attached to the+ -- world.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The world template.+ template :: Prelude.Maybe Prelude.Text,+ -- | Returns the JSON formatted string that describes the contents of your+ -- world.+ worldDescriptionBody :: 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 'DescribeWorldResponse' 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', 'describeWorldResponse_arn' - The Amazon Resource Name (arn) of the world.+--+-- 'createdAt', 'describeWorldResponse_createdAt' - The time, in milliseconds since the epoch, when the world was created.+--+-- 'generationJob', 'describeWorldResponse_generationJob' - The Amazon Resource Name (arn) of the world generation job that+-- generated the world.+--+-- 'tags', 'describeWorldResponse_tags' - A map that contains tag keys and tag values that are attached to the+-- world.+--+-- 'template', 'describeWorldResponse_template' - The world template.+--+-- 'worldDescriptionBody', 'describeWorldResponse_worldDescriptionBody' - Returns the JSON formatted string that describes the contents of your+-- world.+--+-- 'httpStatus', 'describeWorldResponse_httpStatus' - The response's http status code.+newDescribeWorldResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeWorldResponse+newDescribeWorldResponse pHttpStatus_ =+ DescribeWorldResponse'+ { arn = Prelude.Nothing,+ createdAt = Prelude.Nothing,+ generationJob = Prelude.Nothing,+ tags = Prelude.Nothing,+ template = Prelude.Nothing,+ worldDescriptionBody = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The Amazon Resource Name (arn) of the world.+describeWorldResponse_arn :: Lens.Lens' DescribeWorldResponse (Prelude.Maybe Prelude.Text)+describeWorldResponse_arn = Lens.lens (\DescribeWorldResponse' {arn} -> arn) (\s@DescribeWorldResponse' {} a -> s {arn = a} :: DescribeWorldResponse)++-- | The time, in milliseconds since the epoch, when the world was created.+describeWorldResponse_createdAt :: Lens.Lens' DescribeWorldResponse (Prelude.Maybe Prelude.UTCTime)+describeWorldResponse_createdAt = Lens.lens (\DescribeWorldResponse' {createdAt} -> createdAt) (\s@DescribeWorldResponse' {} a -> s {createdAt = a} :: DescribeWorldResponse) Prelude.. Lens.mapping Data._Time++-- | The Amazon Resource Name (arn) of the world generation job that+-- generated the world.+describeWorldResponse_generationJob :: Lens.Lens' DescribeWorldResponse (Prelude.Maybe Prelude.Text)+describeWorldResponse_generationJob = Lens.lens (\DescribeWorldResponse' {generationJob} -> generationJob) (\s@DescribeWorldResponse' {} a -> s {generationJob = a} :: DescribeWorldResponse)++-- | A map that contains tag keys and tag values that are attached to the+-- world.+describeWorldResponse_tags :: Lens.Lens' DescribeWorldResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+describeWorldResponse_tags = Lens.lens (\DescribeWorldResponse' {tags} -> tags) (\s@DescribeWorldResponse' {} a -> s {tags = a} :: DescribeWorldResponse) Prelude.. Lens.mapping Lens.coerced++-- | The world template.+describeWorldResponse_template :: Lens.Lens' DescribeWorldResponse (Prelude.Maybe Prelude.Text)+describeWorldResponse_template = Lens.lens (\DescribeWorldResponse' {template} -> template) (\s@DescribeWorldResponse' {} a -> s {template = a} :: DescribeWorldResponse)++-- | Returns the JSON formatted string that describes the contents of your+-- world.+describeWorldResponse_worldDescriptionBody :: Lens.Lens' DescribeWorldResponse (Prelude.Maybe Prelude.Text)+describeWorldResponse_worldDescriptionBody = Lens.lens (\DescribeWorldResponse' {worldDescriptionBody} -> worldDescriptionBody) (\s@DescribeWorldResponse' {} a -> s {worldDescriptionBody = a} :: DescribeWorldResponse)++-- | The response's http status code.+describeWorldResponse_httpStatus :: Lens.Lens' DescribeWorldResponse Prelude.Int+describeWorldResponse_httpStatus = Lens.lens (\DescribeWorldResponse' {httpStatus} -> httpStatus) (\s@DescribeWorldResponse' {} a -> s {httpStatus = a} :: DescribeWorldResponse)++instance Prelude.NFData DescribeWorldResponse where+ rnf DescribeWorldResponse' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf createdAt+ `Prelude.seq` Prelude.rnf generationJob+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf template+ `Prelude.seq` Prelude.rnf worldDescriptionBody+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/RobOMaker/DescribeWorldExportJob.hs view
@@ -0,0 +1,397 @@+{-# 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.RobOMaker.DescribeWorldExportJob+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Describes a world export job.+module Amazonka.RobOMaker.DescribeWorldExportJob+ ( -- * Creating a Request+ DescribeWorldExportJob (..),+ newDescribeWorldExportJob,++ -- * Request Lenses+ describeWorldExportJob_job,++ -- * Destructuring the Response+ DescribeWorldExportJobResponse (..),+ newDescribeWorldExportJobResponse,++ -- * Response Lenses+ describeWorldExportJobResponse_arn,+ describeWorldExportJobResponse_clientRequestToken,+ describeWorldExportJobResponse_createdAt,+ describeWorldExportJobResponse_failureCode,+ describeWorldExportJobResponse_failureReason,+ describeWorldExportJobResponse_iamRole,+ describeWorldExportJobResponse_outputLocation,+ describeWorldExportJobResponse_status,+ describeWorldExportJobResponse_tags,+ describeWorldExportJobResponse_worlds,+ describeWorldExportJobResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.RobOMaker.Types++-- | /See:/ 'newDescribeWorldExportJob' smart constructor.+data DescribeWorldExportJob = DescribeWorldExportJob'+ { -- | The Amazon Resource Name (arn) of the world export job to describe.+ job :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeWorldExportJob' 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:+--+-- 'job', 'describeWorldExportJob_job' - The Amazon Resource Name (arn) of the world export job to describe.+newDescribeWorldExportJob ::+ -- | 'job'+ Prelude.Text ->+ DescribeWorldExportJob+newDescribeWorldExportJob pJob_ =+ DescribeWorldExportJob' {job = pJob_}++-- | The Amazon Resource Name (arn) of the world export job to describe.+describeWorldExportJob_job :: Lens.Lens' DescribeWorldExportJob Prelude.Text+describeWorldExportJob_job = Lens.lens (\DescribeWorldExportJob' {job} -> job) (\s@DescribeWorldExportJob' {} a -> s {job = a} :: DescribeWorldExportJob)++instance Core.AWSRequest DescribeWorldExportJob where+ type+ AWSResponse DescribeWorldExportJob =+ DescribeWorldExportJobResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribeWorldExportJobResponse'+ Prelude.<$> (x Data..?> "arn")+ Prelude.<*> (x Data..?> "clientRequestToken")+ Prelude.<*> (x Data..?> "createdAt")+ Prelude.<*> (x Data..?> "failureCode")+ Prelude.<*> (x Data..?> "failureReason")+ Prelude.<*> (x Data..?> "iamRole")+ Prelude.<*> (x Data..?> "outputLocation")+ Prelude.<*> (x Data..?> "status")+ Prelude.<*> (x Data..?> "tags" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "worlds")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DescribeWorldExportJob where+ hashWithSalt _salt DescribeWorldExportJob' {..} =+ _salt `Prelude.hashWithSalt` job++instance Prelude.NFData DescribeWorldExportJob where+ rnf DescribeWorldExportJob' {..} = Prelude.rnf job++instance Data.ToHeaders DescribeWorldExportJob where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON DescribeWorldExportJob where+ toJSON DescribeWorldExportJob' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("job" Data..= job)]+ )++instance Data.ToPath DescribeWorldExportJob where+ toPath = Prelude.const "/describeWorldExportJob"++instance Data.ToQuery DescribeWorldExportJob where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDescribeWorldExportJobResponse' smart constructor.+data DescribeWorldExportJobResponse = DescribeWorldExportJobResponse'+ { -- | The Amazon Resource Name (ARN) of the world export job.+ arn :: Prelude.Maybe Prelude.Text,+ -- | Unique, case-sensitive identifier that you provide to ensure the+ -- idempotency of the request.+ clientRequestToken :: Prelude.Maybe Prelude.Text,+ -- | The time, in milliseconds since the epoch, when the world export job was+ -- created.+ createdAt :: Prelude.Maybe Data.POSIX,+ -- | The failure code of the world export job if it failed:+ --+ -- [InternalServiceError]+ -- Internal service error.+ --+ -- [LimitExceeded]+ -- The requested resource exceeds the maximum number allowed, or the+ -- number of concurrent stream requests exceeds the maximum number+ -- allowed.+ --+ -- [ResourceNotFound]+ -- The specified resource could not be found.+ --+ -- [RequestThrottled]+ -- The request was throttled.+ --+ -- [InvalidInput]+ -- An input parameter in the request is not valid.+ failureCode :: Prelude.Maybe WorldExportJobErrorCode,+ -- | The reason why the world export job failed.+ failureReason :: Prelude.Maybe Prelude.Text,+ -- | The IAM role that the world export process uses to access the Amazon S3+ -- bucket and put the export.+ iamRole :: Prelude.Maybe Prelude.Text,+ outputLocation :: Prelude.Maybe OutputLocation,+ -- | The status of the world export job.+ --+ -- [Pending]+ -- The world export job request is pending.+ --+ -- [Running]+ -- The world export job is running.+ --+ -- [Completed]+ -- The world export job completed.+ --+ -- [Failed]+ -- The world export job failed. See @failureCode@ and @failureReason@+ -- for more information.+ --+ -- [Canceled]+ -- The world export job was cancelled.+ --+ -- [Canceling]+ -- The world export job is being cancelled.+ status :: Prelude.Maybe WorldExportJobStatus,+ -- | A map that contains tag keys and tag values that are attached to the+ -- world export job.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | A list of Amazon Resource Names (arns) that correspond to worlds to be+ -- exported.+ worlds :: Prelude.Maybe (Prelude.NonEmpty Prelude.Text),+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeWorldExportJobResponse' 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', 'describeWorldExportJobResponse_arn' - The Amazon Resource Name (ARN) of the world export job.+--+-- 'clientRequestToken', 'describeWorldExportJobResponse_clientRequestToken' - Unique, case-sensitive identifier that you provide to ensure the+-- idempotency of the request.+--+-- 'createdAt', 'describeWorldExportJobResponse_createdAt' - The time, in milliseconds since the epoch, when the world export job was+-- created.+--+-- 'failureCode', 'describeWorldExportJobResponse_failureCode' - The failure code of the world export job if it failed:+--+-- [InternalServiceError]+-- Internal service error.+--+-- [LimitExceeded]+-- The requested resource exceeds the maximum number allowed, or the+-- number of concurrent stream requests exceeds the maximum number+-- allowed.+--+-- [ResourceNotFound]+-- The specified resource could not be found.+--+-- [RequestThrottled]+-- The request was throttled.+--+-- [InvalidInput]+-- An input parameter in the request is not valid.+--+-- 'failureReason', 'describeWorldExportJobResponse_failureReason' - The reason why the world export job failed.+--+-- 'iamRole', 'describeWorldExportJobResponse_iamRole' - The IAM role that the world export process uses to access the Amazon S3+-- bucket and put the export.+--+-- 'outputLocation', 'describeWorldExportJobResponse_outputLocation' - Undocumented member.+--+-- 'status', 'describeWorldExportJobResponse_status' - The status of the world export job.+--+-- [Pending]+-- The world export job request is pending.+--+-- [Running]+-- The world export job is running.+--+-- [Completed]+-- The world export job completed.+--+-- [Failed]+-- The world export job failed. See @failureCode@ and @failureReason@+-- for more information.+--+-- [Canceled]+-- The world export job was cancelled.+--+-- [Canceling]+-- The world export job is being cancelled.+--+-- 'tags', 'describeWorldExportJobResponse_tags' - A map that contains tag keys and tag values that are attached to the+-- world export job.+--+-- 'worlds', 'describeWorldExportJobResponse_worlds' - A list of Amazon Resource Names (arns) that correspond to worlds to be+-- exported.+--+-- 'httpStatus', 'describeWorldExportJobResponse_httpStatus' - The response's http status code.+newDescribeWorldExportJobResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeWorldExportJobResponse+newDescribeWorldExportJobResponse pHttpStatus_ =+ DescribeWorldExportJobResponse'+ { arn =+ Prelude.Nothing,+ clientRequestToken = Prelude.Nothing,+ createdAt = Prelude.Nothing,+ failureCode = Prelude.Nothing,+ failureReason = Prelude.Nothing,+ iamRole = Prelude.Nothing,+ outputLocation = Prelude.Nothing,+ status = Prelude.Nothing,+ tags = Prelude.Nothing,+ worlds = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The Amazon Resource Name (ARN) of the world export job.+describeWorldExportJobResponse_arn :: Lens.Lens' DescribeWorldExportJobResponse (Prelude.Maybe Prelude.Text)+describeWorldExportJobResponse_arn = Lens.lens (\DescribeWorldExportJobResponse' {arn} -> arn) (\s@DescribeWorldExportJobResponse' {} a -> s {arn = a} :: DescribeWorldExportJobResponse)++-- | Unique, case-sensitive identifier that you provide to ensure the+-- idempotency of the request.+describeWorldExportJobResponse_clientRequestToken :: Lens.Lens' DescribeWorldExportJobResponse (Prelude.Maybe Prelude.Text)+describeWorldExportJobResponse_clientRequestToken = Lens.lens (\DescribeWorldExportJobResponse' {clientRequestToken} -> clientRequestToken) (\s@DescribeWorldExportJobResponse' {} a -> s {clientRequestToken = a} :: DescribeWorldExportJobResponse)++-- | The time, in milliseconds since the epoch, when the world export job was+-- created.+describeWorldExportJobResponse_createdAt :: Lens.Lens' DescribeWorldExportJobResponse (Prelude.Maybe Prelude.UTCTime)+describeWorldExportJobResponse_createdAt = Lens.lens (\DescribeWorldExportJobResponse' {createdAt} -> createdAt) (\s@DescribeWorldExportJobResponse' {} a -> s {createdAt = a} :: DescribeWorldExportJobResponse) Prelude.. Lens.mapping Data._Time++-- | The failure code of the world export job if it failed:+--+-- [InternalServiceError]+-- Internal service error.+--+-- [LimitExceeded]+-- The requested resource exceeds the maximum number allowed, or the+-- number of concurrent stream requests exceeds the maximum number+-- allowed.+--+-- [ResourceNotFound]+-- The specified resource could not be found.+--+-- [RequestThrottled]+-- The request was throttled.+--+-- [InvalidInput]+-- An input parameter in the request is not valid.+describeWorldExportJobResponse_failureCode :: Lens.Lens' DescribeWorldExportJobResponse (Prelude.Maybe WorldExportJobErrorCode)+describeWorldExportJobResponse_failureCode = Lens.lens (\DescribeWorldExportJobResponse' {failureCode} -> failureCode) (\s@DescribeWorldExportJobResponse' {} a -> s {failureCode = a} :: DescribeWorldExportJobResponse)++-- | The reason why the world export job failed.+describeWorldExportJobResponse_failureReason :: Lens.Lens' DescribeWorldExportJobResponse (Prelude.Maybe Prelude.Text)+describeWorldExportJobResponse_failureReason = Lens.lens (\DescribeWorldExportJobResponse' {failureReason} -> failureReason) (\s@DescribeWorldExportJobResponse' {} a -> s {failureReason = a} :: DescribeWorldExportJobResponse)++-- | The IAM role that the world export process uses to access the Amazon S3+-- bucket and put the export.+describeWorldExportJobResponse_iamRole :: Lens.Lens' DescribeWorldExportJobResponse (Prelude.Maybe Prelude.Text)+describeWorldExportJobResponse_iamRole = Lens.lens (\DescribeWorldExportJobResponse' {iamRole} -> iamRole) (\s@DescribeWorldExportJobResponse' {} a -> s {iamRole = a} :: DescribeWorldExportJobResponse)++-- | Undocumented member.+describeWorldExportJobResponse_outputLocation :: Lens.Lens' DescribeWorldExportJobResponse (Prelude.Maybe OutputLocation)+describeWorldExportJobResponse_outputLocation = Lens.lens (\DescribeWorldExportJobResponse' {outputLocation} -> outputLocation) (\s@DescribeWorldExportJobResponse' {} a -> s {outputLocation = a} :: DescribeWorldExportJobResponse)++-- | The status of the world export job.+--+-- [Pending]+-- The world export job request is pending.+--+-- [Running]+-- The world export job is running.+--+-- [Completed]+-- The world export job completed.+--+-- [Failed]+-- The world export job failed. See @failureCode@ and @failureReason@+-- for more information.+--+-- [Canceled]+-- The world export job was cancelled.+--+-- [Canceling]+-- The world export job is being cancelled.+describeWorldExportJobResponse_status :: Lens.Lens' DescribeWorldExportJobResponse (Prelude.Maybe WorldExportJobStatus)+describeWorldExportJobResponse_status = Lens.lens (\DescribeWorldExportJobResponse' {status} -> status) (\s@DescribeWorldExportJobResponse' {} a -> s {status = a} :: DescribeWorldExportJobResponse)++-- | A map that contains tag keys and tag values that are attached to the+-- world export job.+describeWorldExportJobResponse_tags :: Lens.Lens' DescribeWorldExportJobResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+describeWorldExportJobResponse_tags = Lens.lens (\DescribeWorldExportJobResponse' {tags} -> tags) (\s@DescribeWorldExportJobResponse' {} a -> s {tags = a} :: DescribeWorldExportJobResponse) Prelude.. Lens.mapping Lens.coerced++-- | A list of Amazon Resource Names (arns) that correspond to worlds to be+-- exported.+describeWorldExportJobResponse_worlds :: Lens.Lens' DescribeWorldExportJobResponse (Prelude.Maybe (Prelude.NonEmpty Prelude.Text))+describeWorldExportJobResponse_worlds = Lens.lens (\DescribeWorldExportJobResponse' {worlds} -> worlds) (\s@DescribeWorldExportJobResponse' {} a -> s {worlds = a} :: DescribeWorldExportJobResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+describeWorldExportJobResponse_httpStatus :: Lens.Lens' DescribeWorldExportJobResponse Prelude.Int+describeWorldExportJobResponse_httpStatus = Lens.lens (\DescribeWorldExportJobResponse' {httpStatus} -> httpStatus) (\s@DescribeWorldExportJobResponse' {} a -> s {httpStatus = a} :: DescribeWorldExportJobResponse)++instance+ Prelude.NFData+ DescribeWorldExportJobResponse+ where+ rnf DescribeWorldExportJobResponse' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf clientRequestToken+ `Prelude.seq` Prelude.rnf createdAt+ `Prelude.seq` Prelude.rnf failureCode+ `Prelude.seq` Prelude.rnf failureReason+ `Prelude.seq` Prelude.rnf iamRole+ `Prelude.seq` Prelude.rnf outputLocation+ `Prelude.seq` Prelude.rnf status+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf worlds+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/RobOMaker/DescribeWorldGenerationJob.hs view
@@ -0,0 +1,416 @@+{-# 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.RobOMaker.DescribeWorldGenerationJob+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Describes a world generation job.+module Amazonka.RobOMaker.DescribeWorldGenerationJob+ ( -- * Creating a Request+ DescribeWorldGenerationJob (..),+ newDescribeWorldGenerationJob,++ -- * Request Lenses+ describeWorldGenerationJob_job,++ -- * Destructuring the Response+ DescribeWorldGenerationJobResponse (..),+ newDescribeWorldGenerationJobResponse,++ -- * Response Lenses+ describeWorldGenerationJobResponse_arn,+ describeWorldGenerationJobResponse_clientRequestToken,+ describeWorldGenerationJobResponse_createdAt,+ describeWorldGenerationJobResponse_failureCode,+ describeWorldGenerationJobResponse_failureReason,+ describeWorldGenerationJobResponse_finishedWorldsSummary,+ describeWorldGenerationJobResponse_status,+ describeWorldGenerationJobResponse_tags,+ describeWorldGenerationJobResponse_template,+ describeWorldGenerationJobResponse_worldCount,+ describeWorldGenerationJobResponse_worldTags,+ describeWorldGenerationJobResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.RobOMaker.Types++-- | /See:/ 'newDescribeWorldGenerationJob' smart constructor.+data DescribeWorldGenerationJob = DescribeWorldGenerationJob'+ { -- | The Amazon Resource Name (arn) of the world generation job to describe.+ job :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeWorldGenerationJob' 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:+--+-- 'job', 'describeWorldGenerationJob_job' - The Amazon Resource Name (arn) of the world generation job to describe.+newDescribeWorldGenerationJob ::+ -- | 'job'+ Prelude.Text ->+ DescribeWorldGenerationJob+newDescribeWorldGenerationJob pJob_ =+ DescribeWorldGenerationJob' {job = pJob_}++-- | The Amazon Resource Name (arn) of the world generation job to describe.+describeWorldGenerationJob_job :: Lens.Lens' DescribeWorldGenerationJob Prelude.Text+describeWorldGenerationJob_job = Lens.lens (\DescribeWorldGenerationJob' {job} -> job) (\s@DescribeWorldGenerationJob' {} a -> s {job = a} :: DescribeWorldGenerationJob)++instance Core.AWSRequest DescribeWorldGenerationJob where+ type+ AWSResponse DescribeWorldGenerationJob =+ DescribeWorldGenerationJobResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribeWorldGenerationJobResponse'+ Prelude.<$> (x Data..?> "arn")+ Prelude.<*> (x Data..?> "clientRequestToken")+ Prelude.<*> (x Data..?> "createdAt")+ Prelude.<*> (x Data..?> "failureCode")+ Prelude.<*> (x Data..?> "failureReason")+ Prelude.<*> (x Data..?> "finishedWorldsSummary")+ Prelude.<*> (x Data..?> "status")+ Prelude.<*> (x Data..?> "tags" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "template")+ Prelude.<*> (x Data..?> "worldCount")+ Prelude.<*> (x Data..?> "worldTags" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DescribeWorldGenerationJob where+ hashWithSalt _salt DescribeWorldGenerationJob' {..} =+ _salt `Prelude.hashWithSalt` job++instance Prelude.NFData DescribeWorldGenerationJob where+ rnf DescribeWorldGenerationJob' {..} = Prelude.rnf job++instance Data.ToHeaders DescribeWorldGenerationJob where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON DescribeWorldGenerationJob where+ toJSON DescribeWorldGenerationJob' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("job" Data..= job)]+ )++instance Data.ToPath DescribeWorldGenerationJob where+ toPath = Prelude.const "/describeWorldGenerationJob"++instance Data.ToQuery DescribeWorldGenerationJob where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDescribeWorldGenerationJobResponse' smart constructor.+data DescribeWorldGenerationJobResponse = DescribeWorldGenerationJobResponse'+ { -- | The Amazon Resource Name (ARN) of the world generation job.+ arn :: Prelude.Maybe Prelude.Text,+ -- | Unique, case-sensitive identifier that you provide to ensure the+ -- idempotency of the request.+ clientRequestToken :: Prelude.Maybe Prelude.Text,+ -- | The time, in milliseconds since the epoch, when the world generation job+ -- was created.+ createdAt :: Prelude.Maybe Data.POSIX,+ -- | The failure code of the world generation job if it failed:+ --+ -- [InternalServiceError]+ -- Internal service error.+ --+ -- [LimitExceeded]+ -- The requested resource exceeds the maximum number allowed, or the+ -- number of concurrent stream requests exceeds the maximum number+ -- allowed.+ --+ -- [ResourceNotFound]+ -- The specified resource could not be found.+ --+ -- [RequestThrottled]+ -- The request was throttled.+ --+ -- [InvalidInput]+ -- An input parameter in the request is not valid.+ failureCode :: Prelude.Maybe WorldGenerationJobErrorCode,+ -- | The reason why the world generation job failed.+ failureReason :: Prelude.Maybe Prelude.Text,+ -- | Summary information about finished worlds.+ finishedWorldsSummary :: Prelude.Maybe FinishedWorldsSummary,+ -- | The status of the world generation job:+ --+ -- [Pending]+ -- The world generation job request is pending.+ --+ -- [Running]+ -- The world generation job is running.+ --+ -- [Completed]+ -- The world generation job completed.+ --+ -- [Failed]+ -- The world generation job failed. See @failureCode@ for more+ -- information.+ --+ -- [PartialFailed]+ -- Some worlds did not generate.+ --+ -- [Canceled]+ -- The world generation job was cancelled.+ --+ -- [Canceling]+ -- The world generation job is being cancelled.+ status :: Prelude.Maybe WorldGenerationJobStatus,+ -- | A map that contains tag keys and tag values that are attached to the+ -- world generation job.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The Amazon Resource Name (arn) of the world template.+ template :: Prelude.Maybe Prelude.Text,+ -- | Information about the world count.+ worldCount :: Prelude.Maybe WorldCount,+ -- | A map that contains tag keys and tag values that are attached to the+ -- generated worlds.+ worldTags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeWorldGenerationJobResponse' 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', 'describeWorldGenerationJobResponse_arn' - The Amazon Resource Name (ARN) of the world generation job.+--+-- 'clientRequestToken', 'describeWorldGenerationJobResponse_clientRequestToken' - Unique, case-sensitive identifier that you provide to ensure the+-- idempotency of the request.+--+-- 'createdAt', 'describeWorldGenerationJobResponse_createdAt' - The time, in milliseconds since the epoch, when the world generation job+-- was created.+--+-- 'failureCode', 'describeWorldGenerationJobResponse_failureCode' - The failure code of the world generation job if it failed:+--+-- [InternalServiceError]+-- Internal service error.+--+-- [LimitExceeded]+-- The requested resource exceeds the maximum number allowed, or the+-- number of concurrent stream requests exceeds the maximum number+-- allowed.+--+-- [ResourceNotFound]+-- The specified resource could not be found.+--+-- [RequestThrottled]+-- The request was throttled.+--+-- [InvalidInput]+-- An input parameter in the request is not valid.+--+-- 'failureReason', 'describeWorldGenerationJobResponse_failureReason' - The reason why the world generation job failed.+--+-- 'finishedWorldsSummary', 'describeWorldGenerationJobResponse_finishedWorldsSummary' - Summary information about finished worlds.+--+-- 'status', 'describeWorldGenerationJobResponse_status' - The status of the world generation job:+--+-- [Pending]+-- The world generation job request is pending.+--+-- [Running]+-- The world generation job is running.+--+-- [Completed]+-- The world generation job completed.+--+-- [Failed]+-- The world generation job failed. See @failureCode@ for more+-- information.+--+-- [PartialFailed]+-- Some worlds did not generate.+--+-- [Canceled]+-- The world generation job was cancelled.+--+-- [Canceling]+-- The world generation job is being cancelled.+--+-- 'tags', 'describeWorldGenerationJobResponse_tags' - A map that contains tag keys and tag values that are attached to the+-- world generation job.+--+-- 'template', 'describeWorldGenerationJobResponse_template' - The Amazon Resource Name (arn) of the world template.+--+-- 'worldCount', 'describeWorldGenerationJobResponse_worldCount' - Information about the world count.+--+-- 'worldTags', 'describeWorldGenerationJobResponse_worldTags' - A map that contains tag keys and tag values that are attached to the+-- generated worlds.+--+-- 'httpStatus', 'describeWorldGenerationJobResponse_httpStatus' - The response's http status code.+newDescribeWorldGenerationJobResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeWorldGenerationJobResponse+newDescribeWorldGenerationJobResponse pHttpStatus_ =+ DescribeWorldGenerationJobResponse'+ { arn =+ Prelude.Nothing,+ clientRequestToken = Prelude.Nothing,+ createdAt = Prelude.Nothing,+ failureCode = Prelude.Nothing,+ failureReason = Prelude.Nothing,+ finishedWorldsSummary = Prelude.Nothing,+ status = Prelude.Nothing,+ tags = Prelude.Nothing,+ template = Prelude.Nothing,+ worldCount = Prelude.Nothing,+ worldTags = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The Amazon Resource Name (ARN) of the world generation job.+describeWorldGenerationJobResponse_arn :: Lens.Lens' DescribeWorldGenerationJobResponse (Prelude.Maybe Prelude.Text)+describeWorldGenerationJobResponse_arn = Lens.lens (\DescribeWorldGenerationJobResponse' {arn} -> arn) (\s@DescribeWorldGenerationJobResponse' {} a -> s {arn = a} :: DescribeWorldGenerationJobResponse)++-- | Unique, case-sensitive identifier that you provide to ensure the+-- idempotency of the request.+describeWorldGenerationJobResponse_clientRequestToken :: Lens.Lens' DescribeWorldGenerationJobResponse (Prelude.Maybe Prelude.Text)+describeWorldGenerationJobResponse_clientRequestToken = Lens.lens (\DescribeWorldGenerationJobResponse' {clientRequestToken} -> clientRequestToken) (\s@DescribeWorldGenerationJobResponse' {} a -> s {clientRequestToken = a} :: DescribeWorldGenerationJobResponse)++-- | The time, in milliseconds since the epoch, when the world generation job+-- was created.+describeWorldGenerationJobResponse_createdAt :: Lens.Lens' DescribeWorldGenerationJobResponse (Prelude.Maybe Prelude.UTCTime)+describeWorldGenerationJobResponse_createdAt = Lens.lens (\DescribeWorldGenerationJobResponse' {createdAt} -> createdAt) (\s@DescribeWorldGenerationJobResponse' {} a -> s {createdAt = a} :: DescribeWorldGenerationJobResponse) Prelude.. Lens.mapping Data._Time++-- | The failure code of the world generation job if it failed:+--+-- [InternalServiceError]+-- Internal service error.+--+-- [LimitExceeded]+-- The requested resource exceeds the maximum number allowed, or the+-- number of concurrent stream requests exceeds the maximum number+-- allowed.+--+-- [ResourceNotFound]+-- The specified resource could not be found.+--+-- [RequestThrottled]+-- The request was throttled.+--+-- [InvalidInput]+-- An input parameter in the request is not valid.+describeWorldGenerationJobResponse_failureCode :: Lens.Lens' DescribeWorldGenerationJobResponse (Prelude.Maybe WorldGenerationJobErrorCode)+describeWorldGenerationJobResponse_failureCode = Lens.lens (\DescribeWorldGenerationJobResponse' {failureCode} -> failureCode) (\s@DescribeWorldGenerationJobResponse' {} a -> s {failureCode = a} :: DescribeWorldGenerationJobResponse)++-- | The reason why the world generation job failed.+describeWorldGenerationJobResponse_failureReason :: Lens.Lens' DescribeWorldGenerationJobResponse (Prelude.Maybe Prelude.Text)+describeWorldGenerationJobResponse_failureReason = Lens.lens (\DescribeWorldGenerationJobResponse' {failureReason} -> failureReason) (\s@DescribeWorldGenerationJobResponse' {} a -> s {failureReason = a} :: DescribeWorldGenerationJobResponse)++-- | Summary information about finished worlds.+describeWorldGenerationJobResponse_finishedWorldsSummary :: Lens.Lens' DescribeWorldGenerationJobResponse (Prelude.Maybe FinishedWorldsSummary)+describeWorldGenerationJobResponse_finishedWorldsSummary = Lens.lens (\DescribeWorldGenerationJobResponse' {finishedWorldsSummary} -> finishedWorldsSummary) (\s@DescribeWorldGenerationJobResponse' {} a -> s {finishedWorldsSummary = a} :: DescribeWorldGenerationJobResponse)++-- | The status of the world generation job:+--+-- [Pending]+-- The world generation job request is pending.+--+-- [Running]+-- The world generation job is running.+--+-- [Completed]+-- The world generation job completed.+--+-- [Failed]+-- The world generation job failed. See @failureCode@ for more+-- information.+--+-- [PartialFailed]+-- Some worlds did not generate.+--+-- [Canceled]+-- The world generation job was cancelled.+--+-- [Canceling]+-- The world generation job is being cancelled.+describeWorldGenerationJobResponse_status :: Lens.Lens' DescribeWorldGenerationJobResponse (Prelude.Maybe WorldGenerationJobStatus)+describeWorldGenerationJobResponse_status = Lens.lens (\DescribeWorldGenerationJobResponse' {status} -> status) (\s@DescribeWorldGenerationJobResponse' {} a -> s {status = a} :: DescribeWorldGenerationJobResponse)++-- | A map that contains tag keys and tag values that are attached to the+-- world generation job.+describeWorldGenerationJobResponse_tags :: Lens.Lens' DescribeWorldGenerationJobResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+describeWorldGenerationJobResponse_tags = Lens.lens (\DescribeWorldGenerationJobResponse' {tags} -> tags) (\s@DescribeWorldGenerationJobResponse' {} a -> s {tags = a} :: DescribeWorldGenerationJobResponse) Prelude.. Lens.mapping Lens.coerced++-- | The Amazon Resource Name (arn) of the world template.+describeWorldGenerationJobResponse_template :: Lens.Lens' DescribeWorldGenerationJobResponse (Prelude.Maybe Prelude.Text)+describeWorldGenerationJobResponse_template = Lens.lens (\DescribeWorldGenerationJobResponse' {template} -> template) (\s@DescribeWorldGenerationJobResponse' {} a -> s {template = a} :: DescribeWorldGenerationJobResponse)++-- | Information about the world count.+describeWorldGenerationJobResponse_worldCount :: Lens.Lens' DescribeWorldGenerationJobResponse (Prelude.Maybe WorldCount)+describeWorldGenerationJobResponse_worldCount = Lens.lens (\DescribeWorldGenerationJobResponse' {worldCount} -> worldCount) (\s@DescribeWorldGenerationJobResponse' {} a -> s {worldCount = a} :: DescribeWorldGenerationJobResponse)++-- | A map that contains tag keys and tag values that are attached to the+-- generated worlds.+describeWorldGenerationJobResponse_worldTags :: Lens.Lens' DescribeWorldGenerationJobResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+describeWorldGenerationJobResponse_worldTags = Lens.lens (\DescribeWorldGenerationJobResponse' {worldTags} -> worldTags) (\s@DescribeWorldGenerationJobResponse' {} a -> s {worldTags = a} :: DescribeWorldGenerationJobResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+describeWorldGenerationJobResponse_httpStatus :: Lens.Lens' DescribeWorldGenerationJobResponse Prelude.Int+describeWorldGenerationJobResponse_httpStatus = Lens.lens (\DescribeWorldGenerationJobResponse' {httpStatus} -> httpStatus) (\s@DescribeWorldGenerationJobResponse' {} a -> s {httpStatus = a} :: DescribeWorldGenerationJobResponse)++instance+ Prelude.NFData+ DescribeWorldGenerationJobResponse+ where+ rnf DescribeWorldGenerationJobResponse' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf clientRequestToken+ `Prelude.seq` Prelude.rnf createdAt+ `Prelude.seq` Prelude.rnf failureCode+ `Prelude.seq` Prelude.rnf failureReason+ `Prelude.seq` Prelude.rnf finishedWorldsSummary+ `Prelude.seq` Prelude.rnf status+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf template+ `Prelude.seq` Prelude.rnf worldCount+ `Prelude.seq` Prelude.rnf worldTags+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/RobOMaker/DescribeWorldTemplate.hs view
@@ -0,0 +1,251 @@+{-# 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.RobOMaker.DescribeWorldTemplate+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Describes a world template.+module Amazonka.RobOMaker.DescribeWorldTemplate+ ( -- * Creating a Request+ DescribeWorldTemplate (..),+ newDescribeWorldTemplate,++ -- * Request Lenses+ describeWorldTemplate_template,++ -- * Destructuring the Response+ DescribeWorldTemplateResponse (..),+ newDescribeWorldTemplateResponse,++ -- * Response Lenses+ describeWorldTemplateResponse_arn,+ describeWorldTemplateResponse_clientRequestToken,+ describeWorldTemplateResponse_createdAt,+ describeWorldTemplateResponse_lastUpdatedAt,+ describeWorldTemplateResponse_name,+ describeWorldTemplateResponse_tags,+ describeWorldTemplateResponse_version,+ describeWorldTemplateResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.RobOMaker.Types++-- | /See:/ 'newDescribeWorldTemplate' smart constructor.+data DescribeWorldTemplate = DescribeWorldTemplate'+ { -- | The Amazon Resource Name (arn) of the world template you want to+ -- describe.+ template :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeWorldTemplate' 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:+--+-- 'template', 'describeWorldTemplate_template' - The Amazon Resource Name (arn) of the world template you want to+-- describe.+newDescribeWorldTemplate ::+ -- | 'template'+ Prelude.Text ->+ DescribeWorldTemplate+newDescribeWorldTemplate pTemplate_ =+ DescribeWorldTemplate' {template = pTemplate_}++-- | The Amazon Resource Name (arn) of the world template you want to+-- describe.+describeWorldTemplate_template :: Lens.Lens' DescribeWorldTemplate Prelude.Text+describeWorldTemplate_template = Lens.lens (\DescribeWorldTemplate' {template} -> template) (\s@DescribeWorldTemplate' {} a -> s {template = a} :: DescribeWorldTemplate)++instance Core.AWSRequest DescribeWorldTemplate where+ type+ AWSResponse DescribeWorldTemplate =+ DescribeWorldTemplateResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribeWorldTemplateResponse'+ Prelude.<$> (x Data..?> "arn")+ Prelude.<*> (x Data..?> "clientRequestToken")+ Prelude.<*> (x Data..?> "createdAt")+ Prelude.<*> (x Data..?> "lastUpdatedAt")+ Prelude.<*> (x Data..?> "name")+ Prelude.<*> (x Data..?> "tags" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "version")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DescribeWorldTemplate where+ hashWithSalt _salt DescribeWorldTemplate' {..} =+ _salt `Prelude.hashWithSalt` template++instance Prelude.NFData DescribeWorldTemplate where+ rnf DescribeWorldTemplate' {..} = Prelude.rnf template++instance Data.ToHeaders DescribeWorldTemplate where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON DescribeWorldTemplate where+ toJSON DescribeWorldTemplate' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("template" Data..= template)]+ )++instance Data.ToPath DescribeWorldTemplate where+ toPath = Prelude.const "/describeWorldTemplate"++instance Data.ToQuery DescribeWorldTemplate where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDescribeWorldTemplateResponse' smart constructor.+data DescribeWorldTemplateResponse = DescribeWorldTemplateResponse'+ { -- | The Amazon Resource Name (ARN) of the world template.+ arn :: Prelude.Maybe Prelude.Text,+ -- | Unique, case-sensitive identifier that you provide to ensure the+ -- idempotency of the request.+ clientRequestToken :: Prelude.Maybe Prelude.Text,+ -- | The time, in milliseconds since the epoch, when the world template was+ -- created.+ createdAt :: Prelude.Maybe Data.POSIX,+ -- | The time, in milliseconds since the epoch, when the world template was+ -- last updated.+ lastUpdatedAt :: Prelude.Maybe Data.POSIX,+ -- | The name of the world template.+ name :: Prelude.Maybe Prelude.Text,+ -- | A map that contains tag keys and tag values that are attached to the+ -- world template.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The version of the world template that you\'re using.+ version :: 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 'DescribeWorldTemplateResponse' 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', 'describeWorldTemplateResponse_arn' - The Amazon Resource Name (ARN) of the world template.+--+-- 'clientRequestToken', 'describeWorldTemplateResponse_clientRequestToken' - Unique, case-sensitive identifier that you provide to ensure the+-- idempotency of the request.+--+-- 'createdAt', 'describeWorldTemplateResponse_createdAt' - The time, in milliseconds since the epoch, when the world template was+-- created.+--+-- 'lastUpdatedAt', 'describeWorldTemplateResponse_lastUpdatedAt' - The time, in milliseconds since the epoch, when the world template was+-- last updated.+--+-- 'name', 'describeWorldTemplateResponse_name' - The name of the world template.+--+-- 'tags', 'describeWorldTemplateResponse_tags' - A map that contains tag keys and tag values that are attached to the+-- world template.+--+-- 'version', 'describeWorldTemplateResponse_version' - The version of the world template that you\'re using.+--+-- 'httpStatus', 'describeWorldTemplateResponse_httpStatus' - The response's http status code.+newDescribeWorldTemplateResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeWorldTemplateResponse+newDescribeWorldTemplateResponse pHttpStatus_ =+ DescribeWorldTemplateResponse'+ { arn =+ Prelude.Nothing,+ clientRequestToken = Prelude.Nothing,+ createdAt = Prelude.Nothing,+ lastUpdatedAt = Prelude.Nothing,+ name = Prelude.Nothing,+ tags = Prelude.Nothing,+ version = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The Amazon Resource Name (ARN) of the world template.+describeWorldTemplateResponse_arn :: Lens.Lens' DescribeWorldTemplateResponse (Prelude.Maybe Prelude.Text)+describeWorldTemplateResponse_arn = Lens.lens (\DescribeWorldTemplateResponse' {arn} -> arn) (\s@DescribeWorldTemplateResponse' {} a -> s {arn = a} :: DescribeWorldTemplateResponse)++-- | Unique, case-sensitive identifier that you provide to ensure the+-- idempotency of the request.+describeWorldTemplateResponse_clientRequestToken :: Lens.Lens' DescribeWorldTemplateResponse (Prelude.Maybe Prelude.Text)+describeWorldTemplateResponse_clientRequestToken = Lens.lens (\DescribeWorldTemplateResponse' {clientRequestToken} -> clientRequestToken) (\s@DescribeWorldTemplateResponse' {} a -> s {clientRequestToken = a} :: DescribeWorldTemplateResponse)++-- | The time, in milliseconds since the epoch, when the world template was+-- created.+describeWorldTemplateResponse_createdAt :: Lens.Lens' DescribeWorldTemplateResponse (Prelude.Maybe Prelude.UTCTime)+describeWorldTemplateResponse_createdAt = Lens.lens (\DescribeWorldTemplateResponse' {createdAt} -> createdAt) (\s@DescribeWorldTemplateResponse' {} a -> s {createdAt = a} :: DescribeWorldTemplateResponse) Prelude.. Lens.mapping Data._Time++-- | The time, in milliseconds since the epoch, when the world template was+-- last updated.+describeWorldTemplateResponse_lastUpdatedAt :: Lens.Lens' DescribeWorldTemplateResponse (Prelude.Maybe Prelude.UTCTime)+describeWorldTemplateResponse_lastUpdatedAt = Lens.lens (\DescribeWorldTemplateResponse' {lastUpdatedAt} -> lastUpdatedAt) (\s@DescribeWorldTemplateResponse' {} a -> s {lastUpdatedAt = a} :: DescribeWorldTemplateResponse) Prelude.. Lens.mapping Data._Time++-- | The name of the world template.+describeWorldTemplateResponse_name :: Lens.Lens' DescribeWorldTemplateResponse (Prelude.Maybe Prelude.Text)+describeWorldTemplateResponse_name = Lens.lens (\DescribeWorldTemplateResponse' {name} -> name) (\s@DescribeWorldTemplateResponse' {} a -> s {name = a} :: DescribeWorldTemplateResponse)++-- | A map that contains tag keys and tag values that are attached to the+-- world template.+describeWorldTemplateResponse_tags :: Lens.Lens' DescribeWorldTemplateResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+describeWorldTemplateResponse_tags = Lens.lens (\DescribeWorldTemplateResponse' {tags} -> tags) (\s@DescribeWorldTemplateResponse' {} a -> s {tags = a} :: DescribeWorldTemplateResponse) Prelude.. Lens.mapping Lens.coerced++-- | The version of the world template that you\'re using.+describeWorldTemplateResponse_version :: Lens.Lens' DescribeWorldTemplateResponse (Prelude.Maybe Prelude.Text)+describeWorldTemplateResponse_version = Lens.lens (\DescribeWorldTemplateResponse' {version} -> version) (\s@DescribeWorldTemplateResponse' {} a -> s {version = a} :: DescribeWorldTemplateResponse)++-- | The response's http status code.+describeWorldTemplateResponse_httpStatus :: Lens.Lens' DescribeWorldTemplateResponse Prelude.Int+describeWorldTemplateResponse_httpStatus = Lens.lens (\DescribeWorldTemplateResponse' {httpStatus} -> httpStatus) (\s@DescribeWorldTemplateResponse' {} a -> s {httpStatus = a} :: DescribeWorldTemplateResponse)++instance Prelude.NFData DescribeWorldTemplateResponse where+ rnf DescribeWorldTemplateResponse' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf clientRequestToken+ `Prelude.seq` Prelude.rnf createdAt+ `Prelude.seq` Prelude.rnf lastUpdatedAt+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf version+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/RobOMaker/GetWorldTemplateBody.hs view
@@ -0,0 +1,181 @@+{-# 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.RobOMaker.GetWorldTemplateBody+-- 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 world template body.+module Amazonka.RobOMaker.GetWorldTemplateBody+ ( -- * Creating a Request+ GetWorldTemplateBody (..),+ newGetWorldTemplateBody,++ -- * Request Lenses+ getWorldTemplateBody_generationJob,+ getWorldTemplateBody_template,++ -- * Destructuring the Response+ GetWorldTemplateBodyResponse (..),+ newGetWorldTemplateBodyResponse,++ -- * Response Lenses+ getWorldTemplateBodyResponse_templateBody,+ getWorldTemplateBodyResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.RobOMaker.Types++-- | /See:/ 'newGetWorldTemplateBody' smart constructor.+data GetWorldTemplateBody = GetWorldTemplateBody'+ { -- | The Amazon Resource Name (arn) of the world generator job.+ generationJob :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Resource Name (arn) of the world template.+ template :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetWorldTemplateBody' 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:+--+-- 'generationJob', 'getWorldTemplateBody_generationJob' - The Amazon Resource Name (arn) of the world generator job.+--+-- 'template', 'getWorldTemplateBody_template' - The Amazon Resource Name (arn) of the world template.+newGetWorldTemplateBody ::+ GetWorldTemplateBody+newGetWorldTemplateBody =+ GetWorldTemplateBody'+ { generationJob =+ Prelude.Nothing,+ template = Prelude.Nothing+ }++-- | The Amazon Resource Name (arn) of the world generator job.+getWorldTemplateBody_generationJob :: Lens.Lens' GetWorldTemplateBody (Prelude.Maybe Prelude.Text)+getWorldTemplateBody_generationJob = Lens.lens (\GetWorldTemplateBody' {generationJob} -> generationJob) (\s@GetWorldTemplateBody' {} a -> s {generationJob = a} :: GetWorldTemplateBody)++-- | The Amazon Resource Name (arn) of the world template.+getWorldTemplateBody_template :: Lens.Lens' GetWorldTemplateBody (Prelude.Maybe Prelude.Text)+getWorldTemplateBody_template = Lens.lens (\GetWorldTemplateBody' {template} -> template) (\s@GetWorldTemplateBody' {} a -> s {template = a} :: GetWorldTemplateBody)++instance Core.AWSRequest GetWorldTemplateBody where+ type+ AWSResponse GetWorldTemplateBody =+ GetWorldTemplateBodyResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ GetWorldTemplateBodyResponse'+ Prelude.<$> (x Data..?> "templateBody")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable GetWorldTemplateBody where+ hashWithSalt _salt GetWorldTemplateBody' {..} =+ _salt+ `Prelude.hashWithSalt` generationJob+ `Prelude.hashWithSalt` template++instance Prelude.NFData GetWorldTemplateBody where+ rnf GetWorldTemplateBody' {..} =+ Prelude.rnf generationJob+ `Prelude.seq` Prelude.rnf template++instance Data.ToHeaders GetWorldTemplateBody where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON GetWorldTemplateBody where+ toJSON GetWorldTemplateBody' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("generationJob" Data..=) Prelude.<$> generationJob,+ ("template" Data..=) Prelude.<$> template+ ]+ )++instance Data.ToPath GetWorldTemplateBody where+ toPath = Prelude.const "/getWorldTemplateBody"++instance Data.ToQuery GetWorldTemplateBody where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newGetWorldTemplateBodyResponse' smart constructor.+data GetWorldTemplateBodyResponse = GetWorldTemplateBodyResponse'+ { -- | The world template body.+ templateBody :: 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 'GetWorldTemplateBodyResponse' 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:+--+-- 'templateBody', 'getWorldTemplateBodyResponse_templateBody' - The world template body.+--+-- 'httpStatus', 'getWorldTemplateBodyResponse_httpStatus' - The response's http status code.+newGetWorldTemplateBodyResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetWorldTemplateBodyResponse+newGetWorldTemplateBodyResponse pHttpStatus_ =+ GetWorldTemplateBodyResponse'+ { templateBody =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The world template body.+getWorldTemplateBodyResponse_templateBody :: Lens.Lens' GetWorldTemplateBodyResponse (Prelude.Maybe Prelude.Text)+getWorldTemplateBodyResponse_templateBody = Lens.lens (\GetWorldTemplateBodyResponse' {templateBody} -> templateBody) (\s@GetWorldTemplateBodyResponse' {} a -> s {templateBody = a} :: GetWorldTemplateBodyResponse)++-- | The response's http status code.+getWorldTemplateBodyResponse_httpStatus :: Lens.Lens' GetWorldTemplateBodyResponse Prelude.Int+getWorldTemplateBodyResponse_httpStatus = Lens.lens (\GetWorldTemplateBodyResponse' {httpStatus} -> httpStatus) (\s@GetWorldTemplateBodyResponse' {} a -> s {httpStatus = a} :: GetWorldTemplateBodyResponse)++instance Prelude.NFData GetWorldTemplateBodyResponse where+ rnf GetWorldTemplateBodyResponse' {..} =+ Prelude.rnf templateBody+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/RobOMaker/Lens.hs view
@@ -0,0 +1,835 @@+{-# 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.RobOMaker.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.RobOMaker.Lens+ ( -- * Operations++ -- ** BatchDeleteWorlds+ batchDeleteWorlds_worlds,+ batchDeleteWorldsResponse_unprocessedWorlds,+ batchDeleteWorldsResponse_httpStatus,++ -- ** BatchDescribeSimulationJob+ batchDescribeSimulationJob_jobs,+ batchDescribeSimulationJobResponse_jobs,+ batchDescribeSimulationJobResponse_unprocessedJobs,+ batchDescribeSimulationJobResponse_httpStatus,++ -- ** CancelSimulationJob+ cancelSimulationJob_job,+ cancelSimulationJobResponse_httpStatus,++ -- ** CancelSimulationJobBatch+ cancelSimulationJobBatch_batch,+ cancelSimulationJobBatchResponse_httpStatus,++ -- ** CancelWorldExportJob+ cancelWorldExportJob_job,+ cancelWorldExportJobResponse_httpStatus,++ -- ** CancelWorldGenerationJob+ cancelWorldGenerationJob_job,+ cancelWorldGenerationJobResponse_httpStatus,++ -- ** CreateRobotApplication+ createRobotApplication_environment,+ createRobotApplication_sources,+ createRobotApplication_tags,+ createRobotApplication_name,+ createRobotApplication_robotSoftwareSuite,+ createRobotApplicationResponse_arn,+ createRobotApplicationResponse_environment,+ createRobotApplicationResponse_lastUpdatedAt,+ createRobotApplicationResponse_name,+ createRobotApplicationResponse_revisionId,+ createRobotApplicationResponse_robotSoftwareSuite,+ createRobotApplicationResponse_sources,+ createRobotApplicationResponse_tags,+ createRobotApplicationResponse_version,+ createRobotApplicationResponse_httpStatus,++ -- ** CreateRobotApplicationVersion+ createRobotApplicationVersion_currentRevisionId,+ createRobotApplicationVersion_imageDigest,+ createRobotApplicationVersion_s3Etags,+ createRobotApplicationVersion_application,+ createRobotApplicationVersionResponse_arn,+ createRobotApplicationVersionResponse_environment,+ createRobotApplicationVersionResponse_lastUpdatedAt,+ createRobotApplicationVersionResponse_name,+ createRobotApplicationVersionResponse_revisionId,+ createRobotApplicationVersionResponse_robotSoftwareSuite,+ createRobotApplicationVersionResponse_sources,+ createRobotApplicationVersionResponse_version,+ createRobotApplicationVersionResponse_httpStatus,++ -- ** CreateSimulationApplication+ createSimulationApplication_environment,+ createSimulationApplication_renderingEngine,+ createSimulationApplication_sources,+ createSimulationApplication_tags,+ createSimulationApplication_name,+ createSimulationApplication_simulationSoftwareSuite,+ createSimulationApplication_robotSoftwareSuite,+ createSimulationApplicationResponse_arn,+ createSimulationApplicationResponse_environment,+ createSimulationApplicationResponse_lastUpdatedAt,+ createSimulationApplicationResponse_name,+ createSimulationApplicationResponse_renderingEngine,+ createSimulationApplicationResponse_revisionId,+ createSimulationApplicationResponse_robotSoftwareSuite,+ createSimulationApplicationResponse_simulationSoftwareSuite,+ createSimulationApplicationResponse_sources,+ createSimulationApplicationResponse_tags,+ createSimulationApplicationResponse_version,+ createSimulationApplicationResponse_httpStatus,++ -- ** CreateSimulationApplicationVersion+ createSimulationApplicationVersion_currentRevisionId,+ createSimulationApplicationVersion_imageDigest,+ createSimulationApplicationVersion_s3Etags,+ createSimulationApplicationVersion_application,+ createSimulationApplicationVersionResponse_arn,+ createSimulationApplicationVersionResponse_environment,+ createSimulationApplicationVersionResponse_lastUpdatedAt,+ createSimulationApplicationVersionResponse_name,+ createSimulationApplicationVersionResponse_renderingEngine,+ createSimulationApplicationVersionResponse_revisionId,+ createSimulationApplicationVersionResponse_robotSoftwareSuite,+ createSimulationApplicationVersionResponse_simulationSoftwareSuite,+ createSimulationApplicationVersionResponse_sources,+ createSimulationApplicationVersionResponse_version,+ createSimulationApplicationVersionResponse_httpStatus,++ -- ** CreateSimulationJob+ createSimulationJob_clientRequestToken,+ createSimulationJob_compute,+ createSimulationJob_dataSources,+ createSimulationJob_failureBehavior,+ createSimulationJob_loggingConfig,+ createSimulationJob_outputLocation,+ createSimulationJob_robotApplications,+ createSimulationJob_simulationApplications,+ createSimulationJob_tags,+ createSimulationJob_vpcConfig,+ createSimulationJob_maxJobDurationInSeconds,+ createSimulationJob_iamRole,+ createSimulationJobResponse_arn,+ createSimulationJobResponse_clientRequestToken,+ createSimulationJobResponse_compute,+ createSimulationJobResponse_dataSources,+ createSimulationJobResponse_failureBehavior,+ createSimulationJobResponse_failureCode,+ createSimulationJobResponse_iamRole,+ createSimulationJobResponse_lastStartedAt,+ createSimulationJobResponse_lastUpdatedAt,+ createSimulationJobResponse_loggingConfig,+ createSimulationJobResponse_maxJobDurationInSeconds,+ createSimulationJobResponse_outputLocation,+ createSimulationJobResponse_robotApplications,+ createSimulationJobResponse_simulationApplications,+ createSimulationJobResponse_simulationTimeMillis,+ createSimulationJobResponse_status,+ createSimulationJobResponse_tags,+ createSimulationJobResponse_vpcConfig,+ createSimulationJobResponse_httpStatus,++ -- ** CreateWorldExportJob+ createWorldExportJob_clientRequestToken,+ createWorldExportJob_tags,+ createWorldExportJob_worlds,+ createWorldExportJob_outputLocation,+ createWorldExportJob_iamRole,+ createWorldExportJobResponse_arn,+ createWorldExportJobResponse_clientRequestToken,+ createWorldExportJobResponse_createdAt,+ createWorldExportJobResponse_failureCode,+ createWorldExportJobResponse_iamRole,+ createWorldExportJobResponse_outputLocation,+ createWorldExportJobResponse_status,+ createWorldExportJobResponse_tags,+ createWorldExportJobResponse_httpStatus,++ -- ** CreateWorldGenerationJob+ createWorldGenerationJob_clientRequestToken,+ createWorldGenerationJob_tags,+ createWorldGenerationJob_worldTags,+ createWorldGenerationJob_template,+ createWorldGenerationJob_worldCount,+ createWorldGenerationJobResponse_arn,+ createWorldGenerationJobResponse_clientRequestToken,+ createWorldGenerationJobResponse_createdAt,+ createWorldGenerationJobResponse_failureCode,+ createWorldGenerationJobResponse_status,+ createWorldGenerationJobResponse_tags,+ createWorldGenerationJobResponse_template,+ createWorldGenerationJobResponse_worldCount,+ createWorldGenerationJobResponse_worldTags,+ createWorldGenerationJobResponse_httpStatus,++ -- ** CreateWorldTemplate+ createWorldTemplate_clientRequestToken,+ createWorldTemplate_name,+ createWorldTemplate_tags,+ createWorldTemplate_templateBody,+ createWorldTemplate_templateLocation,+ createWorldTemplateResponse_arn,+ createWorldTemplateResponse_clientRequestToken,+ createWorldTemplateResponse_createdAt,+ createWorldTemplateResponse_name,+ createWorldTemplateResponse_tags,+ createWorldTemplateResponse_httpStatus,++ -- ** DeleteRobotApplication+ deleteRobotApplication_applicationVersion,+ deleteRobotApplication_application,+ deleteRobotApplicationResponse_httpStatus,++ -- ** DeleteSimulationApplication+ deleteSimulationApplication_applicationVersion,+ deleteSimulationApplication_application,+ deleteSimulationApplicationResponse_httpStatus,++ -- ** DeleteWorldTemplate+ deleteWorldTemplate_template,+ deleteWorldTemplateResponse_httpStatus,++ -- ** DescribeRobotApplication+ describeRobotApplication_applicationVersion,+ describeRobotApplication_application,+ describeRobotApplicationResponse_arn,+ describeRobotApplicationResponse_environment,+ describeRobotApplicationResponse_imageDigest,+ describeRobotApplicationResponse_lastUpdatedAt,+ describeRobotApplicationResponse_name,+ describeRobotApplicationResponse_revisionId,+ describeRobotApplicationResponse_robotSoftwareSuite,+ describeRobotApplicationResponse_sources,+ describeRobotApplicationResponse_tags,+ describeRobotApplicationResponse_version,+ describeRobotApplicationResponse_httpStatus,++ -- ** DescribeSimulationApplication+ describeSimulationApplication_applicationVersion,+ describeSimulationApplication_application,+ describeSimulationApplicationResponse_arn,+ describeSimulationApplicationResponse_environment,+ describeSimulationApplicationResponse_imageDigest,+ describeSimulationApplicationResponse_lastUpdatedAt,+ describeSimulationApplicationResponse_name,+ describeSimulationApplicationResponse_renderingEngine,+ describeSimulationApplicationResponse_revisionId,+ describeSimulationApplicationResponse_robotSoftwareSuite,+ describeSimulationApplicationResponse_simulationSoftwareSuite,+ describeSimulationApplicationResponse_sources,+ describeSimulationApplicationResponse_tags,+ describeSimulationApplicationResponse_version,+ describeSimulationApplicationResponse_httpStatus,++ -- ** DescribeSimulationJob+ describeSimulationJob_job,+ describeSimulationJobResponse_arn,+ describeSimulationJobResponse_clientRequestToken,+ describeSimulationJobResponse_compute,+ describeSimulationJobResponse_dataSources,+ describeSimulationJobResponse_failureBehavior,+ describeSimulationJobResponse_failureCode,+ describeSimulationJobResponse_failureReason,+ describeSimulationJobResponse_iamRole,+ describeSimulationJobResponse_lastStartedAt,+ describeSimulationJobResponse_lastUpdatedAt,+ describeSimulationJobResponse_loggingConfig,+ describeSimulationJobResponse_maxJobDurationInSeconds,+ describeSimulationJobResponse_name,+ describeSimulationJobResponse_networkInterface,+ describeSimulationJobResponse_outputLocation,+ describeSimulationJobResponse_robotApplications,+ describeSimulationJobResponse_simulationApplications,+ describeSimulationJobResponse_simulationTimeMillis,+ describeSimulationJobResponse_status,+ describeSimulationJobResponse_tags,+ describeSimulationJobResponse_vpcConfig,+ describeSimulationJobResponse_httpStatus,++ -- ** DescribeSimulationJobBatch+ describeSimulationJobBatch_batch,+ describeSimulationJobBatchResponse_arn,+ describeSimulationJobBatchResponse_batchPolicy,+ describeSimulationJobBatchResponse_clientRequestToken,+ describeSimulationJobBatchResponse_createdAt,+ describeSimulationJobBatchResponse_createdRequests,+ describeSimulationJobBatchResponse_failedRequests,+ describeSimulationJobBatchResponse_failureCode,+ describeSimulationJobBatchResponse_failureReason,+ describeSimulationJobBatchResponse_lastUpdatedAt,+ describeSimulationJobBatchResponse_pendingRequests,+ describeSimulationJobBatchResponse_status,+ describeSimulationJobBatchResponse_tags,+ describeSimulationJobBatchResponse_httpStatus,++ -- ** DescribeWorld+ describeWorld_world,+ describeWorldResponse_arn,+ describeWorldResponse_createdAt,+ describeWorldResponse_generationJob,+ describeWorldResponse_tags,+ describeWorldResponse_template,+ describeWorldResponse_worldDescriptionBody,+ describeWorldResponse_httpStatus,++ -- ** DescribeWorldExportJob+ describeWorldExportJob_job,+ describeWorldExportJobResponse_arn,+ describeWorldExportJobResponse_clientRequestToken,+ describeWorldExportJobResponse_createdAt,+ describeWorldExportJobResponse_failureCode,+ describeWorldExportJobResponse_failureReason,+ describeWorldExportJobResponse_iamRole,+ describeWorldExportJobResponse_outputLocation,+ describeWorldExportJobResponse_status,+ describeWorldExportJobResponse_tags,+ describeWorldExportJobResponse_worlds,+ describeWorldExportJobResponse_httpStatus,++ -- ** DescribeWorldGenerationJob+ describeWorldGenerationJob_job,+ describeWorldGenerationJobResponse_arn,+ describeWorldGenerationJobResponse_clientRequestToken,+ describeWorldGenerationJobResponse_createdAt,+ describeWorldGenerationJobResponse_failureCode,+ describeWorldGenerationJobResponse_failureReason,+ describeWorldGenerationJobResponse_finishedWorldsSummary,+ describeWorldGenerationJobResponse_status,+ describeWorldGenerationJobResponse_tags,+ describeWorldGenerationJobResponse_template,+ describeWorldGenerationJobResponse_worldCount,+ describeWorldGenerationJobResponse_worldTags,+ describeWorldGenerationJobResponse_httpStatus,++ -- ** DescribeWorldTemplate+ describeWorldTemplate_template,+ describeWorldTemplateResponse_arn,+ describeWorldTemplateResponse_clientRequestToken,+ describeWorldTemplateResponse_createdAt,+ describeWorldTemplateResponse_lastUpdatedAt,+ describeWorldTemplateResponse_name,+ describeWorldTemplateResponse_tags,+ describeWorldTemplateResponse_version,+ describeWorldTemplateResponse_httpStatus,++ -- ** GetWorldTemplateBody+ getWorldTemplateBody_generationJob,+ getWorldTemplateBody_template,+ getWorldTemplateBodyResponse_templateBody,+ getWorldTemplateBodyResponse_httpStatus,++ -- ** ListRobotApplications+ listRobotApplications_filters,+ listRobotApplications_maxResults,+ listRobotApplications_nextToken,+ listRobotApplications_versionQualifier,+ listRobotApplicationsResponse_nextToken,+ listRobotApplicationsResponse_robotApplicationSummaries,+ listRobotApplicationsResponse_httpStatus,++ -- ** ListSimulationApplications+ listSimulationApplications_filters,+ listSimulationApplications_maxResults,+ listSimulationApplications_nextToken,+ listSimulationApplications_versionQualifier,+ listSimulationApplicationsResponse_nextToken,+ listSimulationApplicationsResponse_simulationApplicationSummaries,+ listSimulationApplicationsResponse_httpStatus,++ -- ** ListSimulationJobBatches+ listSimulationJobBatches_filters,+ listSimulationJobBatches_maxResults,+ listSimulationJobBatches_nextToken,+ listSimulationJobBatchesResponse_nextToken,+ listSimulationJobBatchesResponse_simulationJobBatchSummaries,+ listSimulationJobBatchesResponse_httpStatus,++ -- ** ListSimulationJobs+ listSimulationJobs_filters,+ listSimulationJobs_maxResults,+ listSimulationJobs_nextToken,+ listSimulationJobsResponse_nextToken,+ listSimulationJobsResponse_httpStatus,+ listSimulationJobsResponse_simulationJobSummaries,++ -- ** ListTagsForResource+ listTagsForResource_resourceArn,+ listTagsForResourceResponse_tags,+ listTagsForResourceResponse_httpStatus,++ -- ** ListWorldExportJobs+ listWorldExportJobs_filters,+ listWorldExportJobs_maxResults,+ listWorldExportJobs_nextToken,+ listWorldExportJobsResponse_nextToken,+ listWorldExportJobsResponse_httpStatus,+ listWorldExportJobsResponse_worldExportJobSummaries,++ -- ** ListWorldGenerationJobs+ listWorldGenerationJobs_filters,+ listWorldGenerationJobs_maxResults,+ listWorldGenerationJobs_nextToken,+ listWorldGenerationJobsResponse_nextToken,+ listWorldGenerationJobsResponse_httpStatus,+ listWorldGenerationJobsResponse_worldGenerationJobSummaries,++ -- ** ListWorldTemplates+ listWorldTemplates_maxResults,+ listWorldTemplates_nextToken,+ listWorldTemplatesResponse_nextToken,+ listWorldTemplatesResponse_templateSummaries,+ listWorldTemplatesResponse_httpStatus,++ -- ** ListWorlds+ listWorlds_filters,+ listWorlds_maxResults,+ listWorlds_nextToken,+ listWorldsResponse_nextToken,+ listWorldsResponse_worldSummaries,+ listWorldsResponse_httpStatus,++ -- ** RestartSimulationJob+ restartSimulationJob_job,+ restartSimulationJobResponse_httpStatus,++ -- ** StartSimulationJobBatch+ startSimulationJobBatch_batchPolicy,+ startSimulationJobBatch_clientRequestToken,+ startSimulationJobBatch_tags,+ startSimulationJobBatch_createSimulationJobRequests,+ startSimulationJobBatchResponse_arn,+ startSimulationJobBatchResponse_batchPolicy,+ startSimulationJobBatchResponse_clientRequestToken,+ startSimulationJobBatchResponse_createdAt,+ startSimulationJobBatchResponse_createdRequests,+ startSimulationJobBatchResponse_failedRequests,+ startSimulationJobBatchResponse_failureCode,+ startSimulationJobBatchResponse_failureReason,+ startSimulationJobBatchResponse_pendingRequests,+ startSimulationJobBatchResponse_status,+ startSimulationJobBatchResponse_tags,+ startSimulationJobBatchResponse_httpStatus,++ -- ** TagResource+ tagResource_resourceArn,+ tagResource_tags,+ tagResourceResponse_httpStatus,++ -- ** UntagResource+ untagResource_resourceArn,+ untagResource_tagKeys,+ untagResourceResponse_httpStatus,++ -- ** UpdateRobotApplication+ updateRobotApplication_currentRevisionId,+ updateRobotApplication_environment,+ updateRobotApplication_sources,+ updateRobotApplication_application,+ updateRobotApplication_robotSoftwareSuite,+ updateRobotApplicationResponse_arn,+ updateRobotApplicationResponse_environment,+ updateRobotApplicationResponse_lastUpdatedAt,+ updateRobotApplicationResponse_name,+ updateRobotApplicationResponse_revisionId,+ updateRobotApplicationResponse_robotSoftwareSuite,+ updateRobotApplicationResponse_sources,+ updateRobotApplicationResponse_version,+ updateRobotApplicationResponse_httpStatus,++ -- ** UpdateSimulationApplication+ updateSimulationApplication_currentRevisionId,+ updateSimulationApplication_environment,+ updateSimulationApplication_renderingEngine,+ updateSimulationApplication_sources,+ updateSimulationApplication_application,+ updateSimulationApplication_simulationSoftwareSuite,+ updateSimulationApplication_robotSoftwareSuite,+ updateSimulationApplicationResponse_arn,+ updateSimulationApplicationResponse_environment,+ updateSimulationApplicationResponse_lastUpdatedAt,+ updateSimulationApplicationResponse_name,+ updateSimulationApplicationResponse_renderingEngine,+ updateSimulationApplicationResponse_revisionId,+ updateSimulationApplicationResponse_robotSoftwareSuite,+ updateSimulationApplicationResponse_simulationSoftwareSuite,+ updateSimulationApplicationResponse_sources,+ updateSimulationApplicationResponse_version,+ updateSimulationApplicationResponse_httpStatus,++ -- ** UpdateWorldTemplate+ updateWorldTemplate_name,+ updateWorldTemplate_templateBody,+ updateWorldTemplate_templateLocation,+ updateWorldTemplate_template,+ updateWorldTemplateResponse_arn,+ updateWorldTemplateResponse_createdAt,+ updateWorldTemplateResponse_lastUpdatedAt,+ updateWorldTemplateResponse_name,+ updateWorldTemplateResponse_httpStatus,++ -- * Types++ -- ** BatchPolicy+ batchPolicy_maxConcurrency,+ batchPolicy_timeoutInSeconds,++ -- ** Compute+ compute_computeType,+ compute_gpuUnitLimit,+ compute_simulationUnitLimit,++ -- ** ComputeResponse+ computeResponse_computeType,+ computeResponse_gpuUnitLimit,+ computeResponse_simulationUnitLimit,++ -- ** DataSource+ dataSource_destination,+ dataSource_name,+ dataSource_s3Bucket,+ dataSource_s3Keys,+ dataSource_type,++ -- ** DataSourceConfig+ dataSourceConfig_destination,+ dataSourceConfig_type,+ dataSourceConfig_name,+ dataSourceConfig_s3Bucket,+ dataSourceConfig_s3Keys,++ -- ** Environment+ environment_uri,++ -- ** FailedCreateSimulationJobRequest+ failedCreateSimulationJobRequest_failedAt,+ failedCreateSimulationJobRequest_failureCode,+ failedCreateSimulationJobRequest_failureReason,+ failedCreateSimulationJobRequest_request,++ -- ** FailureSummary+ failureSummary_failures,+ failureSummary_totalFailureCount,++ -- ** Filter+ filter_name,+ filter_values,++ -- ** FinishedWorldsSummary+ finishedWorldsSummary_failureSummary,+ finishedWorldsSummary_finishedCount,+ finishedWorldsSummary_succeededWorlds,++ -- ** LaunchConfig+ launchConfig_command,+ launchConfig_environmentVariables,+ launchConfig_launchFile,+ launchConfig_packageName,+ launchConfig_portForwardingConfig,+ launchConfig_streamUI,++ -- ** LoggingConfig+ loggingConfig_recordAllRosTopics,++ -- ** NetworkInterface+ networkInterface_networkInterfaceId,+ networkInterface_privateIpAddress,+ networkInterface_publicIpAddress,++ -- ** OutputLocation+ outputLocation_s3Bucket,+ outputLocation_s3Prefix,++ -- ** PortForwardingConfig+ portForwardingConfig_portMappings,++ -- ** PortMapping+ portMapping_enableOnPublicIp,+ portMapping_jobPort,+ portMapping_applicationPort,++ -- ** RenderingEngine+ renderingEngine_name,+ renderingEngine_version,++ -- ** RobotApplicationConfig+ robotApplicationConfig_applicationVersion,+ robotApplicationConfig_tools,+ robotApplicationConfig_uploadConfigurations,+ robotApplicationConfig_useDefaultTools,+ robotApplicationConfig_useDefaultUploadConfigurations,+ robotApplicationConfig_application,+ robotApplicationConfig_launchConfig,++ -- ** RobotApplicationSummary+ robotApplicationSummary_arn,+ robotApplicationSummary_lastUpdatedAt,+ robotApplicationSummary_name,+ robotApplicationSummary_robotSoftwareSuite,+ robotApplicationSummary_version,++ -- ** RobotSoftwareSuite+ robotSoftwareSuite_name,+ robotSoftwareSuite_version,++ -- ** S3KeyOutput+ s3KeyOutput_etag,+ s3KeyOutput_s3Key,++ -- ** SimulationApplicationConfig+ simulationApplicationConfig_applicationVersion,+ simulationApplicationConfig_tools,+ simulationApplicationConfig_uploadConfigurations,+ simulationApplicationConfig_useDefaultTools,+ simulationApplicationConfig_useDefaultUploadConfigurations,+ simulationApplicationConfig_worldConfigs,+ simulationApplicationConfig_application,+ simulationApplicationConfig_launchConfig,++ -- ** SimulationApplicationSummary+ simulationApplicationSummary_arn,+ simulationApplicationSummary_lastUpdatedAt,+ simulationApplicationSummary_name,+ simulationApplicationSummary_robotSoftwareSuite,+ simulationApplicationSummary_simulationSoftwareSuite,+ simulationApplicationSummary_version,++ -- ** SimulationJob+ simulationJob_arn,+ simulationJob_clientRequestToken,+ simulationJob_compute,+ simulationJob_dataSources,+ simulationJob_failureBehavior,+ simulationJob_failureCode,+ simulationJob_failureReason,+ simulationJob_iamRole,+ simulationJob_lastStartedAt,+ simulationJob_lastUpdatedAt,+ simulationJob_loggingConfig,+ simulationJob_maxJobDurationInSeconds,+ simulationJob_name,+ simulationJob_networkInterface,+ simulationJob_outputLocation,+ simulationJob_robotApplications,+ simulationJob_simulationApplications,+ simulationJob_simulationTimeMillis,+ simulationJob_status,+ simulationJob_tags,+ simulationJob_vpcConfig,++ -- ** SimulationJobBatchSummary+ simulationJobBatchSummary_arn,+ simulationJobBatchSummary_createdAt,+ simulationJobBatchSummary_createdRequestCount,+ simulationJobBatchSummary_failedRequestCount,+ simulationJobBatchSummary_lastUpdatedAt,+ simulationJobBatchSummary_pendingRequestCount,+ simulationJobBatchSummary_status,++ -- ** SimulationJobRequest+ simulationJobRequest_compute,+ simulationJobRequest_dataSources,+ simulationJobRequest_failureBehavior,+ simulationJobRequest_iamRole,+ simulationJobRequest_loggingConfig,+ simulationJobRequest_outputLocation,+ simulationJobRequest_robotApplications,+ simulationJobRequest_simulationApplications,+ simulationJobRequest_tags,+ simulationJobRequest_useDefaultApplications,+ simulationJobRequest_vpcConfig,+ simulationJobRequest_maxJobDurationInSeconds,++ -- ** SimulationJobSummary+ simulationJobSummary_arn,+ simulationJobSummary_computeType,+ simulationJobSummary_dataSourceNames,+ simulationJobSummary_lastUpdatedAt,+ simulationJobSummary_name,+ simulationJobSummary_robotApplicationNames,+ simulationJobSummary_simulationApplicationNames,+ simulationJobSummary_status,++ -- ** SimulationSoftwareSuite+ simulationSoftwareSuite_name,+ simulationSoftwareSuite_version,++ -- ** Source+ source_architecture,+ source_etag,+ source_s3Bucket,+ source_s3Key,++ -- ** SourceConfig+ sourceConfig_architecture,+ sourceConfig_s3Bucket,+ sourceConfig_s3Key,++ -- ** TemplateLocation+ templateLocation_s3Bucket,+ templateLocation_s3Key,++ -- ** TemplateSummary+ templateSummary_arn,+ templateSummary_createdAt,+ templateSummary_lastUpdatedAt,+ templateSummary_name,+ templateSummary_version,++ -- ** Tool+ tool_exitBehavior,+ tool_streamOutputToCloudWatch,+ tool_streamUI,+ tool_name,+ tool_command,++ -- ** UploadConfiguration+ uploadConfiguration_name,+ uploadConfiguration_path,+ uploadConfiguration_uploadBehavior,++ -- ** VPCConfig+ vPCConfig_assignPublicIp,+ vPCConfig_securityGroups,+ vPCConfig_subnets,++ -- ** VPCConfigResponse+ vPCConfigResponse_assignPublicIp,+ vPCConfigResponse_securityGroups,+ vPCConfigResponse_subnets,+ vPCConfigResponse_vpcId,++ -- ** WorldConfig+ worldConfig_world,++ -- ** WorldCount+ worldCount_floorplanCount,+ worldCount_interiorCountPerFloorplan,++ -- ** WorldExportJobSummary+ worldExportJobSummary_arn,+ worldExportJobSummary_createdAt,+ worldExportJobSummary_outputLocation,+ worldExportJobSummary_status,+ worldExportJobSummary_worlds,++ -- ** WorldFailure+ worldFailure_failureCode,+ worldFailure_failureCount,+ worldFailure_sampleFailureReason,++ -- ** WorldGenerationJobSummary+ worldGenerationJobSummary_arn,+ worldGenerationJobSummary_createdAt,+ worldGenerationJobSummary_failedWorldCount,+ worldGenerationJobSummary_status,+ worldGenerationJobSummary_succeededWorldCount,+ worldGenerationJobSummary_template,+ worldGenerationJobSummary_worldCount,++ -- ** WorldSummary+ worldSummary_arn,+ worldSummary_createdAt,+ worldSummary_generationJob,+ worldSummary_template,+ )+where++import Amazonka.RobOMaker.BatchDeleteWorlds+import Amazonka.RobOMaker.BatchDescribeSimulationJob+import Amazonka.RobOMaker.CancelSimulationJob+import Amazonka.RobOMaker.CancelSimulationJobBatch+import Amazonka.RobOMaker.CancelWorldExportJob+import Amazonka.RobOMaker.CancelWorldGenerationJob+import Amazonka.RobOMaker.CreateRobotApplication+import Amazonka.RobOMaker.CreateRobotApplicationVersion+import Amazonka.RobOMaker.CreateSimulationApplication+import Amazonka.RobOMaker.CreateSimulationApplicationVersion+import Amazonka.RobOMaker.CreateSimulationJob+import Amazonka.RobOMaker.CreateWorldExportJob+import Amazonka.RobOMaker.CreateWorldGenerationJob+import Amazonka.RobOMaker.CreateWorldTemplate+import Amazonka.RobOMaker.DeleteRobotApplication+import Amazonka.RobOMaker.DeleteSimulationApplication+import Amazonka.RobOMaker.DeleteWorldTemplate+import Amazonka.RobOMaker.DescribeRobotApplication+import Amazonka.RobOMaker.DescribeSimulationApplication+import Amazonka.RobOMaker.DescribeSimulationJob+import Amazonka.RobOMaker.DescribeSimulationJobBatch+import Amazonka.RobOMaker.DescribeWorld+import Amazonka.RobOMaker.DescribeWorldExportJob+import Amazonka.RobOMaker.DescribeWorldGenerationJob+import Amazonka.RobOMaker.DescribeWorldTemplate+import Amazonka.RobOMaker.GetWorldTemplateBody+import Amazonka.RobOMaker.ListRobotApplications+import Amazonka.RobOMaker.ListSimulationApplications+import Amazonka.RobOMaker.ListSimulationJobBatches+import Amazonka.RobOMaker.ListSimulationJobs+import Amazonka.RobOMaker.ListTagsForResource+import Amazonka.RobOMaker.ListWorldExportJobs+import Amazonka.RobOMaker.ListWorldGenerationJobs+import Amazonka.RobOMaker.ListWorldTemplates+import Amazonka.RobOMaker.ListWorlds+import Amazonka.RobOMaker.RestartSimulationJob+import Amazonka.RobOMaker.StartSimulationJobBatch+import Amazonka.RobOMaker.TagResource+import Amazonka.RobOMaker.Types.BatchPolicy+import Amazonka.RobOMaker.Types.Compute+import Amazonka.RobOMaker.Types.ComputeResponse+import Amazonka.RobOMaker.Types.DataSource+import Amazonka.RobOMaker.Types.DataSourceConfig+import Amazonka.RobOMaker.Types.Environment+import Amazonka.RobOMaker.Types.FailedCreateSimulationJobRequest+import Amazonka.RobOMaker.Types.FailureSummary+import Amazonka.RobOMaker.Types.Filter+import Amazonka.RobOMaker.Types.FinishedWorldsSummary+import Amazonka.RobOMaker.Types.LaunchConfig+import Amazonka.RobOMaker.Types.LoggingConfig+import Amazonka.RobOMaker.Types.NetworkInterface+import Amazonka.RobOMaker.Types.OutputLocation+import Amazonka.RobOMaker.Types.PortForwardingConfig+import Amazonka.RobOMaker.Types.PortMapping+import Amazonka.RobOMaker.Types.RenderingEngine+import Amazonka.RobOMaker.Types.RobotApplicationConfig+import Amazonka.RobOMaker.Types.RobotApplicationSummary+import Amazonka.RobOMaker.Types.RobotSoftwareSuite+import Amazonka.RobOMaker.Types.S3KeyOutput+import Amazonka.RobOMaker.Types.SimulationApplicationConfig+import Amazonka.RobOMaker.Types.SimulationApplicationSummary+import Amazonka.RobOMaker.Types.SimulationJob+import Amazonka.RobOMaker.Types.SimulationJobBatchSummary+import Amazonka.RobOMaker.Types.SimulationJobRequest+import Amazonka.RobOMaker.Types.SimulationJobSummary+import Amazonka.RobOMaker.Types.SimulationSoftwareSuite+import Amazonka.RobOMaker.Types.Source+import Amazonka.RobOMaker.Types.SourceConfig+import Amazonka.RobOMaker.Types.TemplateLocation+import Amazonka.RobOMaker.Types.TemplateSummary+import Amazonka.RobOMaker.Types.Tool+import Amazonka.RobOMaker.Types.UploadConfiguration+import Amazonka.RobOMaker.Types.VPCConfig+import Amazonka.RobOMaker.Types.VPCConfigResponse+import Amazonka.RobOMaker.Types.WorldConfig+import Amazonka.RobOMaker.Types.WorldCount+import Amazonka.RobOMaker.Types.WorldExportJobSummary+import Amazonka.RobOMaker.Types.WorldFailure+import Amazonka.RobOMaker.Types.WorldGenerationJobSummary+import Amazonka.RobOMaker.Types.WorldSummary+import Amazonka.RobOMaker.UntagResource+import Amazonka.RobOMaker.UpdateRobotApplication+import Amazonka.RobOMaker.UpdateSimulationApplication+import Amazonka.RobOMaker.UpdateWorldTemplate
+ gen/Amazonka/RobOMaker/ListRobotApplications.hs view
@@ -0,0 +1,307 @@+{-# 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.RobOMaker.ListRobotApplications+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns a list of robot application. You can optionally provide filters+-- to retrieve specific robot applications.+--+-- This operation returns paginated results.+module Amazonka.RobOMaker.ListRobotApplications+ ( -- * Creating a Request+ ListRobotApplications (..),+ newListRobotApplications,++ -- * Request Lenses+ listRobotApplications_filters,+ listRobotApplications_maxResults,+ listRobotApplications_nextToken,+ listRobotApplications_versionQualifier,++ -- * Destructuring the Response+ ListRobotApplicationsResponse (..),+ newListRobotApplicationsResponse,++ -- * Response Lenses+ listRobotApplicationsResponse_nextToken,+ listRobotApplicationsResponse_robotApplicationSummaries,+ listRobotApplicationsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.RobOMaker.Types++-- | /See:/ 'newListRobotApplications' smart constructor.+data ListRobotApplications = ListRobotApplications'+ { -- | Optional filters to limit results.+ --+ -- The filter name @name@ is supported. When filtering, you must use the+ -- complete value of the filtered item. You can use up to three filters.+ filters :: Prelude.Maybe (Prelude.NonEmpty Filter),+ -- | When this parameter is used, @ListRobotApplications@ only returns+ -- @maxResults@ results in a single page along with a @nextToken@ response+ -- element. The remaining results of the initial request can be seen by+ -- sending another @ListRobotApplications@ request with the returned+ -- @nextToken@ value. This value can be between 1 and 100. If this+ -- parameter is not used, then @ListRobotApplications@ returns up to 100+ -- results and a @nextToken@ value if applicable.+ maxResults :: Prelude.Maybe Prelude.Int,+ -- | If the previous paginated request did not return all of the remaining+ -- results, the response object\'s @nextToken@ parameter value is set to a+ -- token. To retrieve the next set of results, call @ListRobotApplications@+ -- again and assign that token to the request object\'s @nextToken@+ -- parameter. If there are no remaining results, the previous response+ -- object\'s NextToken parameter is set to null.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The version qualifier of the robot application.+ versionQualifier :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListRobotApplications' 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:+--+-- 'filters', 'listRobotApplications_filters' - Optional filters to limit results.+--+-- The filter name @name@ is supported. When filtering, you must use the+-- complete value of the filtered item. You can use up to three filters.+--+-- 'maxResults', 'listRobotApplications_maxResults' - When this parameter is used, @ListRobotApplications@ only returns+-- @maxResults@ results in a single page along with a @nextToken@ response+-- element. The remaining results of the initial request can be seen by+-- sending another @ListRobotApplications@ request with the returned+-- @nextToken@ value. This value can be between 1 and 100. If this+-- parameter is not used, then @ListRobotApplications@ returns up to 100+-- results and a @nextToken@ value if applicable.+--+-- 'nextToken', 'listRobotApplications_nextToken' - If the previous paginated request did not return all of the remaining+-- results, the response object\'s @nextToken@ parameter value is set to a+-- token. To retrieve the next set of results, call @ListRobotApplications@+-- again and assign that token to the request object\'s @nextToken@+-- parameter. If there are no remaining results, the previous response+-- object\'s NextToken parameter is set to null.+--+-- 'versionQualifier', 'listRobotApplications_versionQualifier' - The version qualifier of the robot application.+newListRobotApplications ::+ ListRobotApplications+newListRobotApplications =+ ListRobotApplications'+ { filters = Prelude.Nothing,+ maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ versionQualifier = Prelude.Nothing+ }++-- | Optional filters to limit results.+--+-- The filter name @name@ is supported. When filtering, you must use the+-- complete value of the filtered item. You can use up to three filters.+listRobotApplications_filters :: Lens.Lens' ListRobotApplications (Prelude.Maybe (Prelude.NonEmpty Filter))+listRobotApplications_filters = Lens.lens (\ListRobotApplications' {filters} -> filters) (\s@ListRobotApplications' {} a -> s {filters = a} :: ListRobotApplications) Prelude.. Lens.mapping Lens.coerced++-- | When this parameter is used, @ListRobotApplications@ only returns+-- @maxResults@ results in a single page along with a @nextToken@ response+-- element. The remaining results of the initial request can be seen by+-- sending another @ListRobotApplications@ request with the returned+-- @nextToken@ value. This value can be between 1 and 100. If this+-- parameter is not used, then @ListRobotApplications@ returns up to 100+-- results and a @nextToken@ value if applicable.+listRobotApplications_maxResults :: Lens.Lens' ListRobotApplications (Prelude.Maybe Prelude.Int)+listRobotApplications_maxResults = Lens.lens (\ListRobotApplications' {maxResults} -> maxResults) (\s@ListRobotApplications' {} a -> s {maxResults = a} :: ListRobotApplications)++-- | If the previous paginated request did not return all of the remaining+-- results, the response object\'s @nextToken@ parameter value is set to a+-- token. To retrieve the next set of results, call @ListRobotApplications@+-- again and assign that token to the request object\'s @nextToken@+-- parameter. If there are no remaining results, the previous response+-- object\'s NextToken parameter is set to null.+listRobotApplications_nextToken :: Lens.Lens' ListRobotApplications (Prelude.Maybe Prelude.Text)+listRobotApplications_nextToken = Lens.lens (\ListRobotApplications' {nextToken} -> nextToken) (\s@ListRobotApplications' {} a -> s {nextToken = a} :: ListRobotApplications)++-- | The version qualifier of the robot application.+listRobotApplications_versionQualifier :: Lens.Lens' ListRobotApplications (Prelude.Maybe Prelude.Text)+listRobotApplications_versionQualifier = Lens.lens (\ListRobotApplications' {versionQualifier} -> versionQualifier) (\s@ListRobotApplications' {} a -> s {versionQualifier = a} :: ListRobotApplications)++instance Core.AWSPager ListRobotApplications where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listRobotApplicationsResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? listRobotApplicationsResponse_robotApplicationSummaries+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listRobotApplications_nextToken+ Lens..~ rs+ Lens.^? listRobotApplicationsResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ListRobotApplications where+ type+ AWSResponse ListRobotApplications =+ ListRobotApplicationsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListRobotApplicationsResponse'+ Prelude.<$> (x Data..?> "nextToken")+ Prelude.<*> ( x+ Data..?> "robotApplicationSummaries"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListRobotApplications where+ hashWithSalt _salt ListRobotApplications' {..} =+ _salt+ `Prelude.hashWithSalt` filters+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` versionQualifier++instance Prelude.NFData ListRobotApplications where+ rnf ListRobotApplications' {..} =+ Prelude.rnf filters+ `Prelude.seq` Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf versionQualifier++instance Data.ToHeaders ListRobotApplications where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListRobotApplications where+ toJSON ListRobotApplications' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("filters" Data..=) Prelude.<$> filters,+ ("maxResults" Data..=) Prelude.<$> maxResults,+ ("nextToken" Data..=) Prelude.<$> nextToken,+ ("versionQualifier" Data..=)+ Prelude.<$> versionQualifier+ ]+ )++instance Data.ToPath ListRobotApplications where+ toPath = Prelude.const "/listRobotApplications"++instance Data.ToQuery ListRobotApplications where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListRobotApplicationsResponse' smart constructor.+data ListRobotApplicationsResponse = ListRobotApplicationsResponse'+ { -- | If the previous paginated request did not return all of the remaining+ -- results, the response object\'s @nextToken@ parameter value is set to a+ -- token. To retrieve the next set of results, call @ListRobotApplications@+ -- again and assign that token to the request object\'s @nextToken@+ -- parameter. If there are no remaining results, the previous response+ -- object\'s NextToken parameter is set to null.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | A list of robot application summaries that meet the criteria of the+ -- request.+ robotApplicationSummaries :: Prelude.Maybe [RobotApplicationSummary],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListRobotApplicationsResponse' 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', 'listRobotApplicationsResponse_nextToken' - If the previous paginated request did not return all of the remaining+-- results, the response object\'s @nextToken@ parameter value is set to a+-- token. To retrieve the next set of results, call @ListRobotApplications@+-- again and assign that token to the request object\'s @nextToken@+-- parameter. If there are no remaining results, the previous response+-- object\'s NextToken parameter is set to null.+--+-- 'robotApplicationSummaries', 'listRobotApplicationsResponse_robotApplicationSummaries' - A list of robot application summaries that meet the criteria of the+-- request.+--+-- 'httpStatus', 'listRobotApplicationsResponse_httpStatus' - The response's http status code.+newListRobotApplicationsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListRobotApplicationsResponse+newListRobotApplicationsResponse pHttpStatus_ =+ ListRobotApplicationsResponse'+ { nextToken =+ Prelude.Nothing,+ robotApplicationSummaries = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | If the previous paginated request did not return all of the remaining+-- results, the response object\'s @nextToken@ parameter value is set to a+-- token. To retrieve the next set of results, call @ListRobotApplications@+-- again and assign that token to the request object\'s @nextToken@+-- parameter. If there are no remaining results, the previous response+-- object\'s NextToken parameter is set to null.+listRobotApplicationsResponse_nextToken :: Lens.Lens' ListRobotApplicationsResponse (Prelude.Maybe Prelude.Text)+listRobotApplicationsResponse_nextToken = Lens.lens (\ListRobotApplicationsResponse' {nextToken} -> nextToken) (\s@ListRobotApplicationsResponse' {} a -> s {nextToken = a} :: ListRobotApplicationsResponse)++-- | A list of robot application summaries that meet the criteria of the+-- request.+listRobotApplicationsResponse_robotApplicationSummaries :: Lens.Lens' ListRobotApplicationsResponse (Prelude.Maybe [RobotApplicationSummary])+listRobotApplicationsResponse_robotApplicationSummaries = Lens.lens (\ListRobotApplicationsResponse' {robotApplicationSummaries} -> robotApplicationSummaries) (\s@ListRobotApplicationsResponse' {} a -> s {robotApplicationSummaries = a} :: ListRobotApplicationsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listRobotApplicationsResponse_httpStatus :: Lens.Lens' ListRobotApplicationsResponse Prelude.Int+listRobotApplicationsResponse_httpStatus = Lens.lens (\ListRobotApplicationsResponse' {httpStatus} -> httpStatus) (\s@ListRobotApplicationsResponse' {} a -> s {httpStatus = a} :: ListRobotApplicationsResponse)++instance Prelude.NFData ListRobotApplicationsResponse where+ rnf ListRobotApplicationsResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf robotApplicationSummaries+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/RobOMaker/ListSimulationApplications.hs view
@@ -0,0 +1,312 @@+{-# 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.RobOMaker.ListSimulationApplications+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns a list of simulation applications. You can optionally provide+-- filters to retrieve specific simulation applications.+--+-- This operation returns paginated results.+module Amazonka.RobOMaker.ListSimulationApplications+ ( -- * Creating a Request+ ListSimulationApplications (..),+ newListSimulationApplications,++ -- * Request Lenses+ listSimulationApplications_filters,+ listSimulationApplications_maxResults,+ listSimulationApplications_nextToken,+ listSimulationApplications_versionQualifier,++ -- * Destructuring the Response+ ListSimulationApplicationsResponse (..),+ newListSimulationApplicationsResponse,++ -- * Response Lenses+ listSimulationApplicationsResponse_nextToken,+ listSimulationApplicationsResponse_simulationApplicationSummaries,+ listSimulationApplicationsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.RobOMaker.Types++-- | /See:/ 'newListSimulationApplications' smart constructor.+data ListSimulationApplications = ListSimulationApplications'+ { -- | Optional list of filters to limit results.+ --+ -- The filter name @name@ is supported. When filtering, you must use the+ -- complete value of the filtered item. You can use up to three filters.+ filters :: Prelude.Maybe (Prelude.NonEmpty Filter),+ -- | When this parameter is used, @ListSimulationApplications@ only returns+ -- @maxResults@ results in a single page along with a @nextToken@ response+ -- element. The remaining results of the initial request can be seen by+ -- sending another @ListSimulationApplications@ request with the returned+ -- @nextToken@ value. This value can be between 1 and 100. If this+ -- parameter is not used, then @ListSimulationApplications@ returns up to+ -- 100 results and a @nextToken@ value if applicable.+ maxResults :: Prelude.Maybe Prelude.Int,+ -- | If the previous paginated request did not return all of the remaining+ -- results, the response object\'s @nextToken@ parameter value is set to a+ -- token. To retrieve the next set of results, call+ -- @ListSimulationApplications@ again and assign that token to the request+ -- object\'s @nextToken@ parameter. If there are no remaining results, the+ -- previous response object\'s NextToken parameter is set to null.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The version qualifier of the simulation application.+ versionQualifier :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListSimulationApplications' 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:+--+-- 'filters', 'listSimulationApplications_filters' - Optional list of filters to limit results.+--+-- The filter name @name@ is supported. When filtering, you must use the+-- complete value of the filtered item. You can use up to three filters.+--+-- 'maxResults', 'listSimulationApplications_maxResults' - When this parameter is used, @ListSimulationApplications@ only returns+-- @maxResults@ results in a single page along with a @nextToken@ response+-- element. The remaining results of the initial request can be seen by+-- sending another @ListSimulationApplications@ request with the returned+-- @nextToken@ value. This value can be between 1 and 100. If this+-- parameter is not used, then @ListSimulationApplications@ returns up to+-- 100 results and a @nextToken@ value if applicable.+--+-- 'nextToken', 'listSimulationApplications_nextToken' - If the previous paginated request did not return all of the remaining+-- results, the response object\'s @nextToken@ parameter value is set to a+-- token. To retrieve the next set of results, call+-- @ListSimulationApplications@ again and assign that token to the request+-- object\'s @nextToken@ parameter. If there are no remaining results, the+-- previous response object\'s NextToken parameter is set to null.+--+-- 'versionQualifier', 'listSimulationApplications_versionQualifier' - The version qualifier of the simulation application.+newListSimulationApplications ::+ ListSimulationApplications+newListSimulationApplications =+ ListSimulationApplications'+ { filters =+ Prelude.Nothing,+ maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ versionQualifier = Prelude.Nothing+ }++-- | Optional list of filters to limit results.+--+-- The filter name @name@ is supported. When filtering, you must use the+-- complete value of the filtered item. You can use up to three filters.+listSimulationApplications_filters :: Lens.Lens' ListSimulationApplications (Prelude.Maybe (Prelude.NonEmpty Filter))+listSimulationApplications_filters = Lens.lens (\ListSimulationApplications' {filters} -> filters) (\s@ListSimulationApplications' {} a -> s {filters = a} :: ListSimulationApplications) Prelude.. Lens.mapping Lens.coerced++-- | When this parameter is used, @ListSimulationApplications@ only returns+-- @maxResults@ results in a single page along with a @nextToken@ response+-- element. The remaining results of the initial request can be seen by+-- sending another @ListSimulationApplications@ request with the returned+-- @nextToken@ value. This value can be between 1 and 100. If this+-- parameter is not used, then @ListSimulationApplications@ returns up to+-- 100 results and a @nextToken@ value if applicable.+listSimulationApplications_maxResults :: Lens.Lens' ListSimulationApplications (Prelude.Maybe Prelude.Int)+listSimulationApplications_maxResults = Lens.lens (\ListSimulationApplications' {maxResults} -> maxResults) (\s@ListSimulationApplications' {} a -> s {maxResults = a} :: ListSimulationApplications)++-- | If the previous paginated request did not return all of the remaining+-- results, the response object\'s @nextToken@ parameter value is set to a+-- token. To retrieve the next set of results, call+-- @ListSimulationApplications@ again and assign that token to the request+-- object\'s @nextToken@ parameter. If there are no remaining results, the+-- previous response object\'s NextToken parameter is set to null.+listSimulationApplications_nextToken :: Lens.Lens' ListSimulationApplications (Prelude.Maybe Prelude.Text)+listSimulationApplications_nextToken = Lens.lens (\ListSimulationApplications' {nextToken} -> nextToken) (\s@ListSimulationApplications' {} a -> s {nextToken = a} :: ListSimulationApplications)++-- | The version qualifier of the simulation application.+listSimulationApplications_versionQualifier :: Lens.Lens' ListSimulationApplications (Prelude.Maybe Prelude.Text)+listSimulationApplications_versionQualifier = Lens.lens (\ListSimulationApplications' {versionQualifier} -> versionQualifier) (\s@ListSimulationApplications' {} a -> s {versionQualifier = a} :: ListSimulationApplications)++instance Core.AWSPager ListSimulationApplications where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listSimulationApplicationsResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? listSimulationApplicationsResponse_simulationApplicationSummaries+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listSimulationApplications_nextToken+ Lens..~ rs+ Lens.^? listSimulationApplicationsResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ListSimulationApplications where+ type+ AWSResponse ListSimulationApplications =+ ListSimulationApplicationsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListSimulationApplicationsResponse'+ Prelude.<$> (x Data..?> "nextToken")+ Prelude.<*> ( x+ Data..?> "simulationApplicationSummaries"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListSimulationApplications where+ hashWithSalt _salt ListSimulationApplications' {..} =+ _salt+ `Prelude.hashWithSalt` filters+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` versionQualifier++instance Prelude.NFData ListSimulationApplications where+ rnf ListSimulationApplications' {..} =+ Prelude.rnf filters+ `Prelude.seq` Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf versionQualifier++instance Data.ToHeaders ListSimulationApplications where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListSimulationApplications where+ toJSON ListSimulationApplications' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("filters" Data..=) Prelude.<$> filters,+ ("maxResults" Data..=) Prelude.<$> maxResults,+ ("nextToken" Data..=) Prelude.<$> nextToken,+ ("versionQualifier" Data..=)+ Prelude.<$> versionQualifier+ ]+ )++instance Data.ToPath ListSimulationApplications where+ toPath = Prelude.const "/listSimulationApplications"++instance Data.ToQuery ListSimulationApplications where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListSimulationApplicationsResponse' smart constructor.+data ListSimulationApplicationsResponse = ListSimulationApplicationsResponse'+ { -- | If the previous paginated request did not return all of the remaining+ -- results, the response object\'s @nextToken@ parameter value is set to a+ -- token. To retrieve the next set of results, call+ -- @ListSimulationApplications@ again and assign that token to the request+ -- object\'s @nextToken@ parameter. If there are no remaining results, the+ -- previous response object\'s NextToken parameter is set to null.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | A list of simulation application summaries that meet the criteria of the+ -- request.+ simulationApplicationSummaries :: Prelude.Maybe [SimulationApplicationSummary],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListSimulationApplicationsResponse' 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', 'listSimulationApplicationsResponse_nextToken' - If the previous paginated request did not return all of the remaining+-- results, the response object\'s @nextToken@ parameter value is set to a+-- token. To retrieve the next set of results, call+-- @ListSimulationApplications@ again and assign that token to the request+-- object\'s @nextToken@ parameter. If there are no remaining results, the+-- previous response object\'s NextToken parameter is set to null.+--+-- 'simulationApplicationSummaries', 'listSimulationApplicationsResponse_simulationApplicationSummaries' - A list of simulation application summaries that meet the criteria of the+-- request.+--+-- 'httpStatus', 'listSimulationApplicationsResponse_httpStatus' - The response's http status code.+newListSimulationApplicationsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListSimulationApplicationsResponse+newListSimulationApplicationsResponse pHttpStatus_ =+ ListSimulationApplicationsResponse'+ { nextToken =+ Prelude.Nothing,+ simulationApplicationSummaries =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | If the previous paginated request did not return all of the remaining+-- results, the response object\'s @nextToken@ parameter value is set to a+-- token. To retrieve the next set of results, call+-- @ListSimulationApplications@ again and assign that token to the request+-- object\'s @nextToken@ parameter. If there are no remaining results, the+-- previous response object\'s NextToken parameter is set to null.+listSimulationApplicationsResponse_nextToken :: Lens.Lens' ListSimulationApplicationsResponse (Prelude.Maybe Prelude.Text)+listSimulationApplicationsResponse_nextToken = Lens.lens (\ListSimulationApplicationsResponse' {nextToken} -> nextToken) (\s@ListSimulationApplicationsResponse' {} a -> s {nextToken = a} :: ListSimulationApplicationsResponse)++-- | A list of simulation application summaries that meet the criteria of the+-- request.+listSimulationApplicationsResponse_simulationApplicationSummaries :: Lens.Lens' ListSimulationApplicationsResponse (Prelude.Maybe [SimulationApplicationSummary])+listSimulationApplicationsResponse_simulationApplicationSummaries = Lens.lens (\ListSimulationApplicationsResponse' {simulationApplicationSummaries} -> simulationApplicationSummaries) (\s@ListSimulationApplicationsResponse' {} a -> s {simulationApplicationSummaries = a} :: ListSimulationApplicationsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listSimulationApplicationsResponse_httpStatus :: Lens.Lens' ListSimulationApplicationsResponse Prelude.Int+listSimulationApplicationsResponse_httpStatus = Lens.lens (\ListSimulationApplicationsResponse' {httpStatus} -> httpStatus) (\s@ListSimulationApplicationsResponse' {} a -> s {httpStatus = a} :: ListSimulationApplicationsResponse)++instance+ Prelude.NFData+ ListSimulationApplicationsResponse+ where+ rnf ListSimulationApplicationsResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf simulationApplicationSummaries+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/RobOMaker/ListSimulationJobBatches.hs view
@@ -0,0 +1,280 @@+{-# 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.RobOMaker.ListSimulationJobBatches+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns a list simulation job batches. You can optionally provide+-- filters to retrieve specific simulation batch jobs.+--+-- This operation returns paginated results.+module Amazonka.RobOMaker.ListSimulationJobBatches+ ( -- * Creating a Request+ ListSimulationJobBatches (..),+ newListSimulationJobBatches,++ -- * Request Lenses+ listSimulationJobBatches_filters,+ listSimulationJobBatches_maxResults,+ listSimulationJobBatches_nextToken,++ -- * Destructuring the Response+ ListSimulationJobBatchesResponse (..),+ newListSimulationJobBatchesResponse,++ -- * Response Lenses+ listSimulationJobBatchesResponse_nextToken,+ listSimulationJobBatchesResponse_simulationJobBatchSummaries,+ listSimulationJobBatchesResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.RobOMaker.Types++-- | /See:/ 'newListSimulationJobBatches' smart constructor.+data ListSimulationJobBatches = ListSimulationJobBatches'+ { -- | Optional filters to limit results.+ filters :: Prelude.Maybe (Prelude.NonEmpty Filter),+ -- | When this parameter is used, @ListSimulationJobBatches@ only returns+ -- @maxResults@ results in a single page along with a @nextToken@ response+ -- element. The remaining results of the initial request can be seen by+ -- sending another @ListSimulationJobBatches@ request with the returned+ -- @nextToken@ value.+ maxResults :: Prelude.Maybe Prelude.Int,+ -- | If the previous paginated request did not return all of the remaining+ -- results, the response object\'s @nextToken@ parameter value is set to a+ -- token. To retrieve the next set of results, call+ -- @ListSimulationJobBatches@ again and assign that token to the request+ -- object\'s @nextToken@ parameter. If there are no remaining results, the+ -- previous response object\'s NextToken parameter is set to null.+ nextToken :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListSimulationJobBatches' 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:+--+-- 'filters', 'listSimulationJobBatches_filters' - Optional filters to limit results.+--+-- 'maxResults', 'listSimulationJobBatches_maxResults' - When this parameter is used, @ListSimulationJobBatches@ only returns+-- @maxResults@ results in a single page along with a @nextToken@ response+-- element. The remaining results of the initial request can be seen by+-- sending another @ListSimulationJobBatches@ request with the returned+-- @nextToken@ value.+--+-- 'nextToken', 'listSimulationJobBatches_nextToken' - If the previous paginated request did not return all of the remaining+-- results, the response object\'s @nextToken@ parameter value is set to a+-- token. To retrieve the next set of results, call+-- @ListSimulationJobBatches@ again and assign that token to the request+-- object\'s @nextToken@ parameter. If there are no remaining results, the+-- previous response object\'s NextToken parameter is set to null.+newListSimulationJobBatches ::+ ListSimulationJobBatches+newListSimulationJobBatches =+ ListSimulationJobBatches'+ { filters =+ Prelude.Nothing,+ maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing+ }++-- | Optional filters to limit results.+listSimulationJobBatches_filters :: Lens.Lens' ListSimulationJobBatches (Prelude.Maybe (Prelude.NonEmpty Filter))+listSimulationJobBatches_filters = Lens.lens (\ListSimulationJobBatches' {filters} -> filters) (\s@ListSimulationJobBatches' {} a -> s {filters = a} :: ListSimulationJobBatches) Prelude.. Lens.mapping Lens.coerced++-- | When this parameter is used, @ListSimulationJobBatches@ only returns+-- @maxResults@ results in a single page along with a @nextToken@ response+-- element. The remaining results of the initial request can be seen by+-- sending another @ListSimulationJobBatches@ request with the returned+-- @nextToken@ value.+listSimulationJobBatches_maxResults :: Lens.Lens' ListSimulationJobBatches (Prelude.Maybe Prelude.Int)+listSimulationJobBatches_maxResults = Lens.lens (\ListSimulationJobBatches' {maxResults} -> maxResults) (\s@ListSimulationJobBatches' {} a -> s {maxResults = a} :: ListSimulationJobBatches)++-- | If the previous paginated request did not return all of the remaining+-- results, the response object\'s @nextToken@ parameter value is set to a+-- token. To retrieve the next set of results, call+-- @ListSimulationJobBatches@ again and assign that token to the request+-- object\'s @nextToken@ parameter. If there are no remaining results, the+-- previous response object\'s NextToken parameter is set to null.+listSimulationJobBatches_nextToken :: Lens.Lens' ListSimulationJobBatches (Prelude.Maybe Prelude.Text)+listSimulationJobBatches_nextToken = Lens.lens (\ListSimulationJobBatches' {nextToken} -> nextToken) (\s@ListSimulationJobBatches' {} a -> s {nextToken = a} :: ListSimulationJobBatches)++instance Core.AWSPager ListSimulationJobBatches where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listSimulationJobBatchesResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? listSimulationJobBatchesResponse_simulationJobBatchSummaries+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listSimulationJobBatches_nextToken+ Lens..~ rs+ Lens.^? listSimulationJobBatchesResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ListSimulationJobBatches where+ type+ AWSResponse ListSimulationJobBatches =+ ListSimulationJobBatchesResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListSimulationJobBatchesResponse'+ Prelude.<$> (x Data..?> "nextToken")+ Prelude.<*> ( x+ Data..?> "simulationJobBatchSummaries"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListSimulationJobBatches where+ hashWithSalt _salt ListSimulationJobBatches' {..} =+ _salt+ `Prelude.hashWithSalt` filters+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken++instance Prelude.NFData ListSimulationJobBatches where+ rnf ListSimulationJobBatches' {..} =+ Prelude.rnf filters+ `Prelude.seq` Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken++instance Data.ToHeaders ListSimulationJobBatches where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListSimulationJobBatches where+ toJSON ListSimulationJobBatches' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("filters" Data..=) Prelude.<$> filters,+ ("maxResults" Data..=) Prelude.<$> maxResults,+ ("nextToken" Data..=) Prelude.<$> nextToken+ ]+ )++instance Data.ToPath ListSimulationJobBatches where+ toPath = Prelude.const "/listSimulationJobBatches"++instance Data.ToQuery ListSimulationJobBatches where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListSimulationJobBatchesResponse' smart constructor.+data ListSimulationJobBatchesResponse = ListSimulationJobBatchesResponse'+ { -- | If the previous paginated request did not return all of the remaining+ -- results, the response object\'s @nextToken@ parameter value is set to a+ -- token. To retrieve the next set of results, call+ -- @ListSimulationJobBatches@ again and assign that token to the request+ -- object\'s @nextToken@ parameter. If there are no remaining results, the+ -- previous response object\'s NextToken parameter is set to null.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | A list of simulation job batch summaries.+ simulationJobBatchSummaries :: Prelude.Maybe [SimulationJobBatchSummary],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListSimulationJobBatchesResponse' 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', 'listSimulationJobBatchesResponse_nextToken' - If the previous paginated request did not return all of the remaining+-- results, the response object\'s @nextToken@ parameter value is set to a+-- token. To retrieve the next set of results, call+-- @ListSimulationJobBatches@ again and assign that token to the request+-- object\'s @nextToken@ parameter. If there are no remaining results, the+-- previous response object\'s NextToken parameter is set to null.+--+-- 'simulationJobBatchSummaries', 'listSimulationJobBatchesResponse_simulationJobBatchSummaries' - A list of simulation job batch summaries.+--+-- 'httpStatus', 'listSimulationJobBatchesResponse_httpStatus' - The response's http status code.+newListSimulationJobBatchesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListSimulationJobBatchesResponse+newListSimulationJobBatchesResponse pHttpStatus_ =+ ListSimulationJobBatchesResponse'+ { nextToken =+ Prelude.Nothing,+ simulationJobBatchSummaries =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | If the previous paginated request did not return all of the remaining+-- results, the response object\'s @nextToken@ parameter value is set to a+-- token. To retrieve the next set of results, call+-- @ListSimulationJobBatches@ again and assign that token to the request+-- object\'s @nextToken@ parameter. If there are no remaining results, the+-- previous response object\'s NextToken parameter is set to null.+listSimulationJobBatchesResponse_nextToken :: Lens.Lens' ListSimulationJobBatchesResponse (Prelude.Maybe Prelude.Text)+listSimulationJobBatchesResponse_nextToken = Lens.lens (\ListSimulationJobBatchesResponse' {nextToken} -> nextToken) (\s@ListSimulationJobBatchesResponse' {} a -> s {nextToken = a} :: ListSimulationJobBatchesResponse)++-- | A list of simulation job batch summaries.+listSimulationJobBatchesResponse_simulationJobBatchSummaries :: Lens.Lens' ListSimulationJobBatchesResponse (Prelude.Maybe [SimulationJobBatchSummary])+listSimulationJobBatchesResponse_simulationJobBatchSummaries = Lens.lens (\ListSimulationJobBatchesResponse' {simulationJobBatchSummaries} -> simulationJobBatchSummaries) (\s@ListSimulationJobBatchesResponse' {} a -> s {simulationJobBatchSummaries = a} :: ListSimulationJobBatchesResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listSimulationJobBatchesResponse_httpStatus :: Lens.Lens' ListSimulationJobBatchesResponse Prelude.Int+listSimulationJobBatchesResponse_httpStatus = Lens.lens (\ListSimulationJobBatchesResponse' {httpStatus} -> httpStatus) (\s@ListSimulationJobBatchesResponse' {} a -> s {httpStatus = a} :: ListSimulationJobBatchesResponse)++instance+ Prelude.NFData+ ListSimulationJobBatchesResponse+ where+ rnf ListSimulationJobBatchesResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf simulationJobBatchSummaries+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/RobOMaker/ListSimulationJobs.hs view
@@ -0,0 +1,301 @@+{-# 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.RobOMaker.ListSimulationJobs+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns a list of simulation jobs. You can optionally provide filters to+-- retrieve specific simulation jobs.+--+-- This operation returns paginated results.+module Amazonka.RobOMaker.ListSimulationJobs+ ( -- * Creating a Request+ ListSimulationJobs (..),+ newListSimulationJobs,++ -- * Request Lenses+ listSimulationJobs_filters,+ listSimulationJobs_maxResults,+ listSimulationJobs_nextToken,++ -- * Destructuring the Response+ ListSimulationJobsResponse (..),+ newListSimulationJobsResponse,++ -- * Response Lenses+ listSimulationJobsResponse_nextToken,+ listSimulationJobsResponse_httpStatus,+ listSimulationJobsResponse_simulationJobSummaries,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.RobOMaker.Types++-- | /See:/ 'newListSimulationJobs' smart constructor.+data ListSimulationJobs = ListSimulationJobs'+ { -- | Optional filters to limit results.+ --+ -- The filter names @status@ and @simulationApplicationName@ and+ -- @robotApplicationName@ are supported. When filtering, you must use the+ -- complete value of the filtered item. You can use up to three filters,+ -- but they must be for the same named item. For example, if you are+ -- looking for items with the status @Preparing@ or the status @Running@.+ filters :: Prelude.Maybe (Prelude.NonEmpty Filter),+ -- | When this parameter is used, @ListSimulationJobs@ only returns+ -- @maxResults@ results in a single page along with a @nextToken@ response+ -- element. The remaining results of the initial request can be seen by+ -- sending another @ListSimulationJobs@ request with the returned+ -- @nextToken@ value. This value can be between 1 and 1000. If this+ -- parameter is not used, then @ListSimulationJobs@ returns up to 1000+ -- results and a @nextToken@ value if applicable.+ maxResults :: Prelude.Maybe Prelude.Int,+ -- | If the previous paginated request did not return all of the remaining+ -- results, the response object\'s @nextToken@ parameter value is set to a+ -- token. To retrieve the next set of results, call @ListSimulationJobs@+ -- again and assign that token to the request object\'s @nextToken@+ -- parameter. If there are no remaining results, the previous response+ -- object\'s NextToken parameter is set to null.+ nextToken :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListSimulationJobs' 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:+--+-- 'filters', 'listSimulationJobs_filters' - Optional filters to limit results.+--+-- The filter names @status@ and @simulationApplicationName@ and+-- @robotApplicationName@ are supported. When filtering, you must use the+-- complete value of the filtered item. You can use up to three filters,+-- but they must be for the same named item. For example, if you are+-- looking for items with the status @Preparing@ or the status @Running@.+--+-- 'maxResults', 'listSimulationJobs_maxResults' - When this parameter is used, @ListSimulationJobs@ only returns+-- @maxResults@ results in a single page along with a @nextToken@ response+-- element. The remaining results of the initial request can be seen by+-- sending another @ListSimulationJobs@ request with the returned+-- @nextToken@ value. This value can be between 1 and 1000. If this+-- parameter is not used, then @ListSimulationJobs@ returns up to 1000+-- results and a @nextToken@ value if applicable.+--+-- 'nextToken', 'listSimulationJobs_nextToken' - If the previous paginated request did not return all of the remaining+-- results, the response object\'s @nextToken@ parameter value is set to a+-- token. To retrieve the next set of results, call @ListSimulationJobs@+-- again and assign that token to the request object\'s @nextToken@+-- parameter. If there are no remaining results, the previous response+-- object\'s NextToken parameter is set to null.+newListSimulationJobs ::+ ListSimulationJobs+newListSimulationJobs =+ ListSimulationJobs'+ { filters = Prelude.Nothing,+ maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing+ }++-- | Optional filters to limit results.+--+-- The filter names @status@ and @simulationApplicationName@ and+-- @robotApplicationName@ are supported. When filtering, you must use the+-- complete value of the filtered item. You can use up to three filters,+-- but they must be for the same named item. For example, if you are+-- looking for items with the status @Preparing@ or the status @Running@.+listSimulationJobs_filters :: Lens.Lens' ListSimulationJobs (Prelude.Maybe (Prelude.NonEmpty Filter))+listSimulationJobs_filters = Lens.lens (\ListSimulationJobs' {filters} -> filters) (\s@ListSimulationJobs' {} a -> s {filters = a} :: ListSimulationJobs) Prelude.. Lens.mapping Lens.coerced++-- | When this parameter is used, @ListSimulationJobs@ only returns+-- @maxResults@ results in a single page along with a @nextToken@ response+-- element. The remaining results of the initial request can be seen by+-- sending another @ListSimulationJobs@ request with the returned+-- @nextToken@ value. This value can be between 1 and 1000. If this+-- parameter is not used, then @ListSimulationJobs@ returns up to 1000+-- results and a @nextToken@ value if applicable.+listSimulationJobs_maxResults :: Lens.Lens' ListSimulationJobs (Prelude.Maybe Prelude.Int)+listSimulationJobs_maxResults = Lens.lens (\ListSimulationJobs' {maxResults} -> maxResults) (\s@ListSimulationJobs' {} a -> s {maxResults = a} :: ListSimulationJobs)++-- | If the previous paginated request did not return all of the remaining+-- results, the response object\'s @nextToken@ parameter value is set to a+-- token. To retrieve the next set of results, call @ListSimulationJobs@+-- again and assign that token to the request object\'s @nextToken@+-- parameter. If there are no remaining results, the previous response+-- object\'s NextToken parameter is set to null.+listSimulationJobs_nextToken :: Lens.Lens' ListSimulationJobs (Prelude.Maybe Prelude.Text)+listSimulationJobs_nextToken = Lens.lens (\ListSimulationJobs' {nextToken} -> nextToken) (\s@ListSimulationJobs' {} a -> s {nextToken = a} :: ListSimulationJobs)++instance Core.AWSPager ListSimulationJobs where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listSimulationJobsResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^. listSimulationJobsResponse_simulationJobSummaries+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listSimulationJobs_nextToken+ Lens..~ rs+ Lens.^? listSimulationJobsResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ListSimulationJobs where+ type+ AWSResponse ListSimulationJobs =+ ListSimulationJobsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListSimulationJobsResponse'+ Prelude.<$> (x Data..?> "nextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> ( x+ Data..?> "simulationJobSummaries"+ Core..!@ Prelude.mempty+ )+ )++instance Prelude.Hashable ListSimulationJobs where+ hashWithSalt _salt ListSimulationJobs' {..} =+ _salt+ `Prelude.hashWithSalt` filters+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken++instance Prelude.NFData ListSimulationJobs where+ rnf ListSimulationJobs' {..} =+ Prelude.rnf filters+ `Prelude.seq` Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken++instance Data.ToHeaders ListSimulationJobs where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListSimulationJobs where+ toJSON ListSimulationJobs' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("filters" Data..=) Prelude.<$> filters,+ ("maxResults" Data..=) Prelude.<$> maxResults,+ ("nextToken" Data..=) Prelude.<$> nextToken+ ]+ )++instance Data.ToPath ListSimulationJobs where+ toPath = Prelude.const "/listSimulationJobs"++instance Data.ToQuery ListSimulationJobs where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListSimulationJobsResponse' smart constructor.+data ListSimulationJobsResponse = ListSimulationJobsResponse'+ { -- | If the previous paginated request did not return all of the remaining+ -- results, the response object\'s @nextToken@ parameter value is set to a+ -- token. To retrieve the next set of results, call @ListSimulationJobs@+ -- again and assign that token to the request object\'s @nextToken@+ -- parameter. If there are no remaining results, the previous response+ -- object\'s NextToken parameter is set to null.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | A list of simulation job summaries that meet the criteria of the+ -- request.+ simulationJobSummaries :: [SimulationJobSummary]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListSimulationJobsResponse' 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', 'listSimulationJobsResponse_nextToken' - If the previous paginated request did not return all of the remaining+-- results, the response object\'s @nextToken@ parameter value is set to a+-- token. To retrieve the next set of results, call @ListSimulationJobs@+-- again and assign that token to the request object\'s @nextToken@+-- parameter. If there are no remaining results, the previous response+-- object\'s NextToken parameter is set to null.+--+-- 'httpStatus', 'listSimulationJobsResponse_httpStatus' - The response's http status code.+--+-- 'simulationJobSummaries', 'listSimulationJobsResponse_simulationJobSummaries' - A list of simulation job summaries that meet the criteria of the+-- request.+newListSimulationJobsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListSimulationJobsResponse+newListSimulationJobsResponse pHttpStatus_ =+ ListSimulationJobsResponse'+ { nextToken =+ Prelude.Nothing,+ httpStatus = pHttpStatus_,+ simulationJobSummaries = Prelude.mempty+ }++-- | If the previous paginated request did not return all of the remaining+-- results, the response object\'s @nextToken@ parameter value is set to a+-- token. To retrieve the next set of results, call @ListSimulationJobs@+-- again and assign that token to the request object\'s @nextToken@+-- parameter. If there are no remaining results, the previous response+-- object\'s NextToken parameter is set to null.+listSimulationJobsResponse_nextToken :: Lens.Lens' ListSimulationJobsResponse (Prelude.Maybe Prelude.Text)+listSimulationJobsResponse_nextToken = Lens.lens (\ListSimulationJobsResponse' {nextToken} -> nextToken) (\s@ListSimulationJobsResponse' {} a -> s {nextToken = a} :: ListSimulationJobsResponse)++-- | The response's http status code.+listSimulationJobsResponse_httpStatus :: Lens.Lens' ListSimulationJobsResponse Prelude.Int+listSimulationJobsResponse_httpStatus = Lens.lens (\ListSimulationJobsResponse' {httpStatus} -> httpStatus) (\s@ListSimulationJobsResponse' {} a -> s {httpStatus = a} :: ListSimulationJobsResponse)++-- | A list of simulation job summaries that meet the criteria of the+-- request.+listSimulationJobsResponse_simulationJobSummaries :: Lens.Lens' ListSimulationJobsResponse [SimulationJobSummary]+listSimulationJobsResponse_simulationJobSummaries = Lens.lens (\ListSimulationJobsResponse' {simulationJobSummaries} -> simulationJobSummaries) (\s@ListSimulationJobsResponse' {} a -> s {simulationJobSummaries = a} :: ListSimulationJobsResponse) Prelude.. Lens.coerced++instance Prelude.NFData ListSimulationJobsResponse where+ rnf ListSimulationJobsResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf simulationJobSummaries
+ gen/Amazonka/RobOMaker/ListTagsForResource.hs view
@@ -0,0 +1,159 @@+{-# 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.RobOMaker.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 all tags on a AWS RoboMaker resource.+module Amazonka.RobOMaker.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 qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.RobOMaker.Types++-- | /See:/ 'newListTagsForResource' smart constructor.+data ListTagsForResource = ListTagsForResource'+ { -- | The AWS RoboMaker Amazon Resource Name (ARN) with tags to be listed.+ 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 AWS RoboMaker Amazon Resource Name (ARN) with tags to be listed.+newListTagsForResource ::+ -- | 'resourceArn'+ Prelude.Text ->+ ListTagsForResource+newListTagsForResource pResourceArn_ =+ ListTagsForResource' {resourceArn = pResourceArn_}++-- | The AWS RoboMaker Amazon Resource Name (ARN) with tags to be listed.+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 all tags added to the specified resource.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, 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 all tags added to the specified 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 all tags added to the specified 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 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/RobOMaker/ListWorldExportJobs.hs view
@@ -0,0 +1,282 @@+{-# 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.RobOMaker.ListWorldExportJobs+-- 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 world export jobs.+--+-- This operation returns paginated results.+module Amazonka.RobOMaker.ListWorldExportJobs+ ( -- * Creating a Request+ ListWorldExportJobs (..),+ newListWorldExportJobs,++ -- * Request Lenses+ listWorldExportJobs_filters,+ listWorldExportJobs_maxResults,+ listWorldExportJobs_nextToken,++ -- * Destructuring the Response+ ListWorldExportJobsResponse (..),+ newListWorldExportJobsResponse,++ -- * Response Lenses+ listWorldExportJobsResponse_nextToken,+ listWorldExportJobsResponse_httpStatus,+ listWorldExportJobsResponse_worldExportJobSummaries,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.RobOMaker.Types++-- | /See:/ 'newListWorldExportJobs' smart constructor.+data ListWorldExportJobs = ListWorldExportJobs'+ { -- | Optional filters to limit results. You can use @generationJobId@ and+ -- @templateId@.+ filters :: Prelude.Maybe (Prelude.NonEmpty Filter),+ -- | When this parameter is used, @ListWorldExportJobs@ only returns+ -- @maxResults@ results in a single page along with a @nextToken@ response+ -- element. The remaining results of the initial request can be seen by+ -- sending another @ListWorldExportJobs@ request with the returned+ -- @nextToken@ value. This value can be between 1 and 100. If this+ -- parameter is not used, then @ListWorldExportJobs@ returns up to 100+ -- results and a @nextToken@ value if applicable.+ maxResults :: Prelude.Maybe Prelude.Int,+ -- | If the previous paginated request did not return all of the remaining+ -- results, the response object\'s @nextToken@ parameter value is set to a+ -- token. To retrieve the next set of results, call @ListWorldExportJobs@+ -- again and assign that token to the request object\'s @nextToken@+ -- parameter. If there are no remaining results, the previous response+ -- object\'s NextToken parameter is set to null.+ nextToken :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListWorldExportJobs' 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:+--+-- 'filters', 'listWorldExportJobs_filters' - Optional filters to limit results. You can use @generationJobId@ and+-- @templateId@.+--+-- 'maxResults', 'listWorldExportJobs_maxResults' - When this parameter is used, @ListWorldExportJobs@ only returns+-- @maxResults@ results in a single page along with a @nextToken@ response+-- element. The remaining results of the initial request can be seen by+-- sending another @ListWorldExportJobs@ request with the returned+-- @nextToken@ value. This value can be between 1 and 100. If this+-- parameter is not used, then @ListWorldExportJobs@ returns up to 100+-- results and a @nextToken@ value if applicable.+--+-- 'nextToken', 'listWorldExportJobs_nextToken' - If the previous paginated request did not return all of the remaining+-- results, the response object\'s @nextToken@ parameter value is set to a+-- token. To retrieve the next set of results, call @ListWorldExportJobs@+-- again and assign that token to the request object\'s @nextToken@+-- parameter. If there are no remaining results, the previous response+-- object\'s NextToken parameter is set to null.+newListWorldExportJobs ::+ ListWorldExportJobs+newListWorldExportJobs =+ ListWorldExportJobs'+ { filters = Prelude.Nothing,+ maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing+ }++-- | Optional filters to limit results. You can use @generationJobId@ and+-- @templateId@.+listWorldExportJobs_filters :: Lens.Lens' ListWorldExportJobs (Prelude.Maybe (Prelude.NonEmpty Filter))+listWorldExportJobs_filters = Lens.lens (\ListWorldExportJobs' {filters} -> filters) (\s@ListWorldExportJobs' {} a -> s {filters = a} :: ListWorldExportJobs) Prelude.. Lens.mapping Lens.coerced++-- | When this parameter is used, @ListWorldExportJobs@ only returns+-- @maxResults@ results in a single page along with a @nextToken@ response+-- element. The remaining results of the initial request can be seen by+-- sending another @ListWorldExportJobs@ request with the returned+-- @nextToken@ value. This value can be between 1 and 100. If this+-- parameter is not used, then @ListWorldExportJobs@ returns up to 100+-- results and a @nextToken@ value if applicable.+listWorldExportJobs_maxResults :: Lens.Lens' ListWorldExportJobs (Prelude.Maybe Prelude.Int)+listWorldExportJobs_maxResults = Lens.lens (\ListWorldExportJobs' {maxResults} -> maxResults) (\s@ListWorldExportJobs' {} a -> s {maxResults = a} :: ListWorldExportJobs)++-- | If the previous paginated request did not return all of the remaining+-- results, the response object\'s @nextToken@ parameter value is set to a+-- token. To retrieve the next set of results, call @ListWorldExportJobs@+-- again and assign that token to the request object\'s @nextToken@+-- parameter. If there are no remaining results, the previous response+-- object\'s NextToken parameter is set to null.+listWorldExportJobs_nextToken :: Lens.Lens' ListWorldExportJobs (Prelude.Maybe Prelude.Text)+listWorldExportJobs_nextToken = Lens.lens (\ListWorldExportJobs' {nextToken} -> nextToken) (\s@ListWorldExportJobs' {} a -> s {nextToken = a} :: ListWorldExportJobs)++instance Core.AWSPager ListWorldExportJobs where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listWorldExportJobsResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^. listWorldExportJobsResponse_worldExportJobSummaries+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listWorldExportJobs_nextToken+ Lens..~ rs+ Lens.^? listWorldExportJobsResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ListWorldExportJobs where+ type+ AWSResponse ListWorldExportJobs =+ ListWorldExportJobsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListWorldExportJobsResponse'+ Prelude.<$> (x Data..?> "nextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> ( x+ Data..?> "worldExportJobSummaries"+ Core..!@ Prelude.mempty+ )+ )++instance Prelude.Hashable ListWorldExportJobs where+ hashWithSalt _salt ListWorldExportJobs' {..} =+ _salt+ `Prelude.hashWithSalt` filters+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken++instance Prelude.NFData ListWorldExportJobs where+ rnf ListWorldExportJobs' {..} =+ Prelude.rnf filters+ `Prelude.seq` Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken++instance Data.ToHeaders ListWorldExportJobs where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListWorldExportJobs where+ toJSON ListWorldExportJobs' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("filters" Data..=) Prelude.<$> filters,+ ("maxResults" Data..=) Prelude.<$> maxResults,+ ("nextToken" Data..=) Prelude.<$> nextToken+ ]+ )++instance Data.ToPath ListWorldExportJobs where+ toPath = Prelude.const "/listWorldExportJobs"++instance Data.ToQuery ListWorldExportJobs where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListWorldExportJobsResponse' smart constructor.+data ListWorldExportJobsResponse = ListWorldExportJobsResponse'+ { -- | If the previous paginated request did not return all of the remaining+ -- results, the response object\'s @nextToken@ parameter value is set to a+ -- token. To retrieve the next set of results, call+ -- @ListWorldExportJobsRequest@ again and assign that token to the request+ -- object\'s @nextToken@ parameter. If there are no remaining results, the+ -- previous response object\'s NextToken parameter is set to null.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | Summary information for world export jobs.+ worldExportJobSummaries :: [WorldExportJobSummary]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListWorldExportJobsResponse' 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', 'listWorldExportJobsResponse_nextToken' - If the previous paginated request did not return all of the remaining+-- results, the response object\'s @nextToken@ parameter value is set to a+-- token. To retrieve the next set of results, call+-- @ListWorldExportJobsRequest@ again and assign that token to the request+-- object\'s @nextToken@ parameter. If there are no remaining results, the+-- previous response object\'s NextToken parameter is set to null.+--+-- 'httpStatus', 'listWorldExportJobsResponse_httpStatus' - The response's http status code.+--+-- 'worldExportJobSummaries', 'listWorldExportJobsResponse_worldExportJobSummaries' - Summary information for world export jobs.+newListWorldExportJobsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListWorldExportJobsResponse+newListWorldExportJobsResponse pHttpStatus_ =+ ListWorldExportJobsResponse'+ { nextToken =+ Prelude.Nothing,+ httpStatus = pHttpStatus_,+ worldExportJobSummaries = Prelude.mempty+ }++-- | If the previous paginated request did not return all of the remaining+-- results, the response object\'s @nextToken@ parameter value is set to a+-- token. To retrieve the next set of results, call+-- @ListWorldExportJobsRequest@ again and assign that token to the request+-- object\'s @nextToken@ parameter. If there are no remaining results, the+-- previous response object\'s NextToken parameter is set to null.+listWorldExportJobsResponse_nextToken :: Lens.Lens' ListWorldExportJobsResponse (Prelude.Maybe Prelude.Text)+listWorldExportJobsResponse_nextToken = Lens.lens (\ListWorldExportJobsResponse' {nextToken} -> nextToken) (\s@ListWorldExportJobsResponse' {} a -> s {nextToken = a} :: ListWorldExportJobsResponse)++-- | The response's http status code.+listWorldExportJobsResponse_httpStatus :: Lens.Lens' ListWorldExportJobsResponse Prelude.Int+listWorldExportJobsResponse_httpStatus = Lens.lens (\ListWorldExportJobsResponse' {httpStatus} -> httpStatus) (\s@ListWorldExportJobsResponse' {} a -> s {httpStatus = a} :: ListWorldExportJobsResponse)++-- | Summary information for world export jobs.+listWorldExportJobsResponse_worldExportJobSummaries :: Lens.Lens' ListWorldExportJobsResponse [WorldExportJobSummary]+listWorldExportJobsResponse_worldExportJobSummaries = Lens.lens (\ListWorldExportJobsResponse' {worldExportJobSummaries} -> worldExportJobSummaries) (\s@ListWorldExportJobsResponse' {} a -> s {worldExportJobSummaries = a} :: ListWorldExportJobsResponse) Prelude.. Lens.coerced++instance Prelude.NFData ListWorldExportJobsResponse where+ rnf ListWorldExportJobsResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf worldExportJobSummaries
+ gen/Amazonka/RobOMaker/ListWorldGenerationJobs.hs view
@@ -0,0 +1,292 @@+{-# 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.RobOMaker.ListWorldGenerationJobs+-- 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 world generator jobs.+--+-- This operation returns paginated results.+module Amazonka.RobOMaker.ListWorldGenerationJobs+ ( -- * Creating a Request+ ListWorldGenerationJobs (..),+ newListWorldGenerationJobs,++ -- * Request Lenses+ listWorldGenerationJobs_filters,+ listWorldGenerationJobs_maxResults,+ listWorldGenerationJobs_nextToken,++ -- * Destructuring the Response+ ListWorldGenerationJobsResponse (..),+ newListWorldGenerationJobsResponse,++ -- * Response Lenses+ listWorldGenerationJobsResponse_nextToken,+ listWorldGenerationJobsResponse_httpStatus,+ listWorldGenerationJobsResponse_worldGenerationJobSummaries,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.RobOMaker.Types++-- | /See:/ 'newListWorldGenerationJobs' smart constructor.+data ListWorldGenerationJobs = ListWorldGenerationJobs'+ { -- | Optional filters to limit results. You can use @status@ and+ -- @templateId@.+ filters :: Prelude.Maybe (Prelude.NonEmpty Filter),+ -- | When this parameter is used, @ListWorldGeneratorJobs@ only returns+ -- @maxResults@ results in a single page along with a @nextToken@ response+ -- element. The remaining results of the initial request can be seen by+ -- sending another @ListWorldGeneratorJobs@ request with the returned+ -- @nextToken@ value. This value can be between 1 and 100. If this+ -- parameter is not used, then @ListWorldGeneratorJobs@ returns up to 100+ -- results and a @nextToken@ value if applicable.+ maxResults :: Prelude.Maybe Prelude.Int,+ -- | If the previous paginated request did not return all of the remaining+ -- results, the response object\'s @nextToken@ parameter value is set to a+ -- token. To retrieve the next set of results, call+ -- @ListWorldGenerationJobsRequest@ again and assign that token to the+ -- request object\'s @nextToken@ parameter. If there are no remaining+ -- results, the previous response object\'s NextToken parameter is set to+ -- null.+ nextToken :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListWorldGenerationJobs' 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:+--+-- 'filters', 'listWorldGenerationJobs_filters' - Optional filters to limit results. You can use @status@ and+-- @templateId@.+--+-- 'maxResults', 'listWorldGenerationJobs_maxResults' - When this parameter is used, @ListWorldGeneratorJobs@ only returns+-- @maxResults@ results in a single page along with a @nextToken@ response+-- element. The remaining results of the initial request can be seen by+-- sending another @ListWorldGeneratorJobs@ request with the returned+-- @nextToken@ value. This value can be between 1 and 100. If this+-- parameter is not used, then @ListWorldGeneratorJobs@ returns up to 100+-- results and a @nextToken@ value if applicable.+--+-- 'nextToken', 'listWorldGenerationJobs_nextToken' - If the previous paginated request did not return all of the remaining+-- results, the response object\'s @nextToken@ parameter value is set to a+-- token. To retrieve the next set of results, call+-- @ListWorldGenerationJobsRequest@ again and assign that token to the+-- request object\'s @nextToken@ parameter. If there are no remaining+-- results, the previous response object\'s NextToken parameter is set to+-- null.+newListWorldGenerationJobs ::+ ListWorldGenerationJobs+newListWorldGenerationJobs =+ ListWorldGenerationJobs'+ { filters = Prelude.Nothing,+ maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing+ }++-- | Optional filters to limit results. You can use @status@ and+-- @templateId@.+listWorldGenerationJobs_filters :: Lens.Lens' ListWorldGenerationJobs (Prelude.Maybe (Prelude.NonEmpty Filter))+listWorldGenerationJobs_filters = Lens.lens (\ListWorldGenerationJobs' {filters} -> filters) (\s@ListWorldGenerationJobs' {} a -> s {filters = a} :: ListWorldGenerationJobs) Prelude.. Lens.mapping Lens.coerced++-- | When this parameter is used, @ListWorldGeneratorJobs@ only returns+-- @maxResults@ results in a single page along with a @nextToken@ response+-- element. The remaining results of the initial request can be seen by+-- sending another @ListWorldGeneratorJobs@ request with the returned+-- @nextToken@ value. This value can be between 1 and 100. If this+-- parameter is not used, then @ListWorldGeneratorJobs@ returns up to 100+-- results and a @nextToken@ value if applicable.+listWorldGenerationJobs_maxResults :: Lens.Lens' ListWorldGenerationJobs (Prelude.Maybe Prelude.Int)+listWorldGenerationJobs_maxResults = Lens.lens (\ListWorldGenerationJobs' {maxResults} -> maxResults) (\s@ListWorldGenerationJobs' {} a -> s {maxResults = a} :: ListWorldGenerationJobs)++-- | If the previous paginated request did not return all of the remaining+-- results, the response object\'s @nextToken@ parameter value is set to a+-- token. To retrieve the next set of results, call+-- @ListWorldGenerationJobsRequest@ again and assign that token to the+-- request object\'s @nextToken@ parameter. If there are no remaining+-- results, the previous response object\'s NextToken parameter is set to+-- null.+listWorldGenerationJobs_nextToken :: Lens.Lens' ListWorldGenerationJobs (Prelude.Maybe Prelude.Text)+listWorldGenerationJobs_nextToken = Lens.lens (\ListWorldGenerationJobs' {nextToken} -> nextToken) (\s@ListWorldGenerationJobs' {} a -> s {nextToken = a} :: ListWorldGenerationJobs)++instance Core.AWSPager ListWorldGenerationJobs where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listWorldGenerationJobsResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^. listWorldGenerationJobsResponse_worldGenerationJobSummaries+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listWorldGenerationJobs_nextToken+ Lens..~ rs+ Lens.^? listWorldGenerationJobsResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ListWorldGenerationJobs where+ type+ AWSResponse ListWorldGenerationJobs =+ ListWorldGenerationJobsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListWorldGenerationJobsResponse'+ Prelude.<$> (x Data..?> "nextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> ( x+ Data..?> "worldGenerationJobSummaries"+ Core..!@ Prelude.mempty+ )+ )++instance Prelude.Hashable ListWorldGenerationJobs where+ hashWithSalt _salt ListWorldGenerationJobs' {..} =+ _salt+ `Prelude.hashWithSalt` filters+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken++instance Prelude.NFData ListWorldGenerationJobs where+ rnf ListWorldGenerationJobs' {..} =+ Prelude.rnf filters+ `Prelude.seq` Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken++instance Data.ToHeaders ListWorldGenerationJobs where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListWorldGenerationJobs where+ toJSON ListWorldGenerationJobs' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("filters" Data..=) Prelude.<$> filters,+ ("maxResults" Data..=) Prelude.<$> maxResults,+ ("nextToken" Data..=) Prelude.<$> nextToken+ ]+ )++instance Data.ToPath ListWorldGenerationJobs where+ toPath = Prelude.const "/listWorldGenerationJobs"++instance Data.ToQuery ListWorldGenerationJobs where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListWorldGenerationJobsResponse' smart constructor.+data ListWorldGenerationJobsResponse = ListWorldGenerationJobsResponse'+ { -- | If the previous paginated request did not return all of the remaining+ -- results, the response object\'s @nextToken@ parameter value is set to a+ -- token. To retrieve the next set of results, call+ -- @ListWorldGeneratorJobsRequest@ again and assign that token to the+ -- request object\'s @nextToken@ parameter. If there are no remaining+ -- results, the previous response object\'s NextToken parameter is set to+ -- null.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | Summary information for world generator jobs.+ worldGenerationJobSummaries :: [WorldGenerationJobSummary]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListWorldGenerationJobsResponse' 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', 'listWorldGenerationJobsResponse_nextToken' - If the previous paginated request did not return all of the remaining+-- results, the response object\'s @nextToken@ parameter value is set to a+-- token. To retrieve the next set of results, call+-- @ListWorldGeneratorJobsRequest@ again and assign that token to the+-- request object\'s @nextToken@ parameter. If there are no remaining+-- results, the previous response object\'s NextToken parameter is set to+-- null.+--+-- 'httpStatus', 'listWorldGenerationJobsResponse_httpStatus' - The response's http status code.+--+-- 'worldGenerationJobSummaries', 'listWorldGenerationJobsResponse_worldGenerationJobSummaries' - Summary information for world generator jobs.+newListWorldGenerationJobsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListWorldGenerationJobsResponse+newListWorldGenerationJobsResponse pHttpStatus_ =+ ListWorldGenerationJobsResponse'+ { nextToken =+ Prelude.Nothing,+ httpStatus = pHttpStatus_,+ worldGenerationJobSummaries =+ Prelude.mempty+ }++-- | If the previous paginated request did not return all of the remaining+-- results, the response object\'s @nextToken@ parameter value is set to a+-- token. To retrieve the next set of results, call+-- @ListWorldGeneratorJobsRequest@ again and assign that token to the+-- request object\'s @nextToken@ parameter. If there are no remaining+-- results, the previous response object\'s NextToken parameter is set to+-- null.+listWorldGenerationJobsResponse_nextToken :: Lens.Lens' ListWorldGenerationJobsResponse (Prelude.Maybe Prelude.Text)+listWorldGenerationJobsResponse_nextToken = Lens.lens (\ListWorldGenerationJobsResponse' {nextToken} -> nextToken) (\s@ListWorldGenerationJobsResponse' {} a -> s {nextToken = a} :: ListWorldGenerationJobsResponse)++-- | The response's http status code.+listWorldGenerationJobsResponse_httpStatus :: Lens.Lens' ListWorldGenerationJobsResponse Prelude.Int+listWorldGenerationJobsResponse_httpStatus = Lens.lens (\ListWorldGenerationJobsResponse' {httpStatus} -> httpStatus) (\s@ListWorldGenerationJobsResponse' {} a -> s {httpStatus = a} :: ListWorldGenerationJobsResponse)++-- | Summary information for world generator jobs.+listWorldGenerationJobsResponse_worldGenerationJobSummaries :: Lens.Lens' ListWorldGenerationJobsResponse [WorldGenerationJobSummary]+listWorldGenerationJobsResponse_worldGenerationJobSummaries = Lens.lens (\ListWorldGenerationJobsResponse' {worldGenerationJobSummaries} -> worldGenerationJobSummaries) (\s@ListWorldGenerationJobsResponse' {} a -> s {worldGenerationJobSummaries = a} :: ListWorldGenerationJobsResponse) Prelude.. Lens.coerced++instance+ Prelude.NFData+ ListWorldGenerationJobsResponse+ where+ rnf ListWorldGenerationJobsResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf worldGenerationJobSummaries
+ gen/Amazonka/RobOMaker/ListWorldTemplates.hs view
@@ -0,0 +1,267 @@+{-# 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.RobOMaker.ListWorldTemplates+-- 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 world templates.+--+-- This operation returns paginated results.+module Amazonka.RobOMaker.ListWorldTemplates+ ( -- * Creating a Request+ ListWorldTemplates (..),+ newListWorldTemplates,++ -- * Request Lenses+ listWorldTemplates_maxResults,+ listWorldTemplates_nextToken,++ -- * Destructuring the Response+ ListWorldTemplatesResponse (..),+ newListWorldTemplatesResponse,++ -- * Response Lenses+ listWorldTemplatesResponse_nextToken,+ listWorldTemplatesResponse_templateSummaries,+ listWorldTemplatesResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.RobOMaker.Types++-- | /See:/ 'newListWorldTemplates' smart constructor.+data ListWorldTemplates = ListWorldTemplates'+ { -- | When this parameter is used, @ListWorldTemplates@ only returns+ -- @maxResults@ results in a single page along with a @nextToken@ response+ -- element. The remaining results of the initial request can be seen by+ -- sending another @ListWorldTemplates@ request with the returned+ -- @nextToken@ value. This value can be between 1 and 100. If this+ -- parameter is not used, then @ListWorldTemplates@ returns up to 100+ -- results and a @nextToken@ value if applicable.+ maxResults :: Prelude.Maybe Prelude.Int,+ -- | If the previous paginated request did not return all of the remaining+ -- results, the response object\'s @nextToken@ parameter value is set to a+ -- token. To retrieve the next set of results, call @ListWorldTemplates@+ -- again and assign that token to the request object\'s @nextToken@+ -- parameter. If there are no remaining results, the previous response+ -- object\'s NextToken parameter is set to null.+ nextToken :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListWorldTemplates' 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', 'listWorldTemplates_maxResults' - When this parameter is used, @ListWorldTemplates@ only returns+-- @maxResults@ results in a single page along with a @nextToken@ response+-- element. The remaining results of the initial request can be seen by+-- sending another @ListWorldTemplates@ request with the returned+-- @nextToken@ value. This value can be between 1 and 100. If this+-- parameter is not used, then @ListWorldTemplates@ returns up to 100+-- results and a @nextToken@ value if applicable.+--+-- 'nextToken', 'listWorldTemplates_nextToken' - If the previous paginated request did not return all of the remaining+-- results, the response object\'s @nextToken@ parameter value is set to a+-- token. To retrieve the next set of results, call @ListWorldTemplates@+-- again and assign that token to the request object\'s @nextToken@+-- parameter. If there are no remaining results, the previous response+-- object\'s NextToken parameter is set to null.+newListWorldTemplates ::+ ListWorldTemplates+newListWorldTemplates =+ ListWorldTemplates'+ { maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing+ }++-- | When this parameter is used, @ListWorldTemplates@ only returns+-- @maxResults@ results in a single page along with a @nextToken@ response+-- element. The remaining results of the initial request can be seen by+-- sending another @ListWorldTemplates@ request with the returned+-- @nextToken@ value. This value can be between 1 and 100. If this+-- parameter is not used, then @ListWorldTemplates@ returns up to 100+-- results and a @nextToken@ value if applicable.+listWorldTemplates_maxResults :: Lens.Lens' ListWorldTemplates (Prelude.Maybe Prelude.Int)+listWorldTemplates_maxResults = Lens.lens (\ListWorldTemplates' {maxResults} -> maxResults) (\s@ListWorldTemplates' {} a -> s {maxResults = a} :: ListWorldTemplates)++-- | If the previous paginated request did not return all of the remaining+-- results, the response object\'s @nextToken@ parameter value is set to a+-- token. To retrieve the next set of results, call @ListWorldTemplates@+-- again and assign that token to the request object\'s @nextToken@+-- parameter. If there are no remaining results, the previous response+-- object\'s NextToken parameter is set to null.+listWorldTemplates_nextToken :: Lens.Lens' ListWorldTemplates (Prelude.Maybe Prelude.Text)+listWorldTemplates_nextToken = Lens.lens (\ListWorldTemplates' {nextToken} -> nextToken) (\s@ListWorldTemplates' {} a -> s {nextToken = a} :: ListWorldTemplates)++instance Core.AWSPager ListWorldTemplates where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listWorldTemplatesResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? listWorldTemplatesResponse_templateSummaries+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listWorldTemplates_nextToken+ Lens..~ rs+ Lens.^? listWorldTemplatesResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ListWorldTemplates where+ type+ AWSResponse ListWorldTemplates =+ ListWorldTemplatesResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListWorldTemplatesResponse'+ Prelude.<$> (x Data..?> "nextToken")+ Prelude.<*> ( x+ Data..?> "templateSummaries"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListWorldTemplates where+ hashWithSalt _salt ListWorldTemplates' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken++instance Prelude.NFData ListWorldTemplates where+ rnf ListWorldTemplates' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken++instance Data.ToHeaders ListWorldTemplates where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListWorldTemplates where+ toJSON ListWorldTemplates' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("maxResults" Data..=) Prelude.<$> maxResults,+ ("nextToken" Data..=) Prelude.<$> nextToken+ ]+ )++instance Data.ToPath ListWorldTemplates where+ toPath = Prelude.const "/listWorldTemplates"++instance Data.ToQuery ListWorldTemplates where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListWorldTemplatesResponse' smart constructor.+data ListWorldTemplatesResponse = ListWorldTemplatesResponse'+ { -- | If the previous paginated request did not return all of the remaining+ -- results, the response object\'s @nextToken@ parameter value is set to a+ -- token. To retrieve the next set of results, call @ListWorldTemplates@+ -- again and assign that token to the request object\'s @nextToken@+ -- parameter. If there are no remaining results, the previous response+ -- object\'s NextToken parameter is set to null.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | Summary information for templates.+ templateSummaries :: Prelude.Maybe [TemplateSummary],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListWorldTemplatesResponse' 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', 'listWorldTemplatesResponse_nextToken' - If the previous paginated request did not return all of the remaining+-- results, the response object\'s @nextToken@ parameter value is set to a+-- token. To retrieve the next set of results, call @ListWorldTemplates@+-- again and assign that token to the request object\'s @nextToken@+-- parameter. If there are no remaining results, the previous response+-- object\'s NextToken parameter is set to null.+--+-- 'templateSummaries', 'listWorldTemplatesResponse_templateSummaries' - Summary information for templates.+--+-- 'httpStatus', 'listWorldTemplatesResponse_httpStatus' - The response's http status code.+newListWorldTemplatesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListWorldTemplatesResponse+newListWorldTemplatesResponse pHttpStatus_ =+ ListWorldTemplatesResponse'+ { nextToken =+ Prelude.Nothing,+ templateSummaries = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | If the previous paginated request did not return all of the remaining+-- results, the response object\'s @nextToken@ parameter value is set to a+-- token. To retrieve the next set of results, call @ListWorldTemplates@+-- again and assign that token to the request object\'s @nextToken@+-- parameter. If there are no remaining results, the previous response+-- object\'s NextToken parameter is set to null.+listWorldTemplatesResponse_nextToken :: Lens.Lens' ListWorldTemplatesResponse (Prelude.Maybe Prelude.Text)+listWorldTemplatesResponse_nextToken = Lens.lens (\ListWorldTemplatesResponse' {nextToken} -> nextToken) (\s@ListWorldTemplatesResponse' {} a -> s {nextToken = a} :: ListWorldTemplatesResponse)++-- | Summary information for templates.+listWorldTemplatesResponse_templateSummaries :: Lens.Lens' ListWorldTemplatesResponse (Prelude.Maybe [TemplateSummary])+listWorldTemplatesResponse_templateSummaries = Lens.lens (\ListWorldTemplatesResponse' {templateSummaries} -> templateSummaries) (\s@ListWorldTemplatesResponse' {} a -> s {templateSummaries = a} :: ListWorldTemplatesResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listWorldTemplatesResponse_httpStatus :: Lens.Lens' ListWorldTemplatesResponse Prelude.Int+listWorldTemplatesResponse_httpStatus = Lens.lens (\ListWorldTemplatesResponse' {httpStatus} -> httpStatus) (\s@ListWorldTemplatesResponse' {} a -> s {httpStatus = a} :: ListWorldTemplatesResponse)++instance Prelude.NFData ListWorldTemplatesResponse where+ rnf ListWorldTemplatesResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf templateSummaries+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/RobOMaker/ListWorlds.hs view
@@ -0,0 +1,271 @@+{-# 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.RobOMaker.ListWorlds+-- 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 worlds.+--+-- This operation returns paginated results.+module Amazonka.RobOMaker.ListWorlds+ ( -- * Creating a Request+ ListWorlds (..),+ newListWorlds,++ -- * Request Lenses+ listWorlds_filters,+ listWorlds_maxResults,+ listWorlds_nextToken,++ -- * Destructuring the Response+ ListWorldsResponse (..),+ newListWorldsResponse,++ -- * Response Lenses+ listWorldsResponse_nextToken,+ listWorldsResponse_worldSummaries,+ listWorldsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.RobOMaker.Types++-- | /See:/ 'newListWorlds' smart constructor.+data ListWorlds = ListWorlds'+ { -- | Optional filters to limit results. You can use @status@.+ filters :: Prelude.Maybe (Prelude.NonEmpty Filter),+ -- | When this parameter is used, @ListWorlds@ only returns @maxResults@+ -- results in a single page along with a @nextToken@ response element. The+ -- remaining results of the initial request can be seen by sending another+ -- @ListWorlds@ request with the returned @nextToken@ value. This value can+ -- be between 1 and 100. If this parameter is not used, then @ListWorlds@+ -- returns up to 100 results and a @nextToken@ value if applicable.+ maxResults :: Prelude.Maybe Prelude.Int,+ -- | If the previous paginated request did not return all of the remaining+ -- results, the response object\'s @nextToken@ parameter value is set to a+ -- token. To retrieve the next set of results, call @ListWorlds@ again and+ -- assign that token to the request object\'s @nextToken@ parameter. If+ -- there are no remaining results, the previous response object\'s+ -- NextToken parameter is set to null.+ nextToken :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListWorlds' 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:+--+-- 'filters', 'listWorlds_filters' - Optional filters to limit results. You can use @status@.+--+-- 'maxResults', 'listWorlds_maxResults' - When this parameter is used, @ListWorlds@ only returns @maxResults@+-- results in a single page along with a @nextToken@ response element. The+-- remaining results of the initial request can be seen by sending another+-- @ListWorlds@ request with the returned @nextToken@ value. This value can+-- be between 1 and 100. If this parameter is not used, then @ListWorlds@+-- returns up to 100 results and a @nextToken@ value if applicable.+--+-- 'nextToken', 'listWorlds_nextToken' - If the previous paginated request did not return all of the remaining+-- results, the response object\'s @nextToken@ parameter value is set to a+-- token. To retrieve the next set of results, call @ListWorlds@ again and+-- assign that token to the request object\'s @nextToken@ parameter. If+-- there are no remaining results, the previous response object\'s+-- NextToken parameter is set to null.+newListWorlds ::+ ListWorlds+newListWorlds =+ ListWorlds'+ { filters = Prelude.Nothing,+ maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing+ }++-- | Optional filters to limit results. You can use @status@.+listWorlds_filters :: Lens.Lens' ListWorlds (Prelude.Maybe (Prelude.NonEmpty Filter))+listWorlds_filters = Lens.lens (\ListWorlds' {filters} -> filters) (\s@ListWorlds' {} a -> s {filters = a} :: ListWorlds) Prelude.. Lens.mapping Lens.coerced++-- | When this parameter is used, @ListWorlds@ only returns @maxResults@+-- results in a single page along with a @nextToken@ response element. The+-- remaining results of the initial request can be seen by sending another+-- @ListWorlds@ request with the returned @nextToken@ value. This value can+-- be between 1 and 100. If this parameter is not used, then @ListWorlds@+-- returns up to 100 results and a @nextToken@ value if applicable.+listWorlds_maxResults :: Lens.Lens' ListWorlds (Prelude.Maybe Prelude.Int)+listWorlds_maxResults = Lens.lens (\ListWorlds' {maxResults} -> maxResults) (\s@ListWorlds' {} a -> s {maxResults = a} :: ListWorlds)++-- | If the previous paginated request did not return all of the remaining+-- results, the response object\'s @nextToken@ parameter value is set to a+-- token. To retrieve the next set of results, call @ListWorlds@ again and+-- assign that token to the request object\'s @nextToken@ parameter. If+-- there are no remaining results, the previous response object\'s+-- NextToken parameter is set to null.+listWorlds_nextToken :: Lens.Lens' ListWorlds (Prelude.Maybe Prelude.Text)+listWorlds_nextToken = Lens.lens (\ListWorlds' {nextToken} -> nextToken) (\s@ListWorlds' {} a -> s {nextToken = a} :: ListWorlds)++instance Core.AWSPager ListWorlds where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listWorldsResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? listWorldsResponse_worldSummaries+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listWorlds_nextToken+ Lens..~ rs+ Lens.^? listWorldsResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ListWorlds where+ type AWSResponse ListWorlds = ListWorldsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListWorldsResponse'+ Prelude.<$> (x Data..?> "nextToken")+ Prelude.<*> (x Data..?> "worldSummaries" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListWorlds where+ hashWithSalt _salt ListWorlds' {..} =+ _salt+ `Prelude.hashWithSalt` filters+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken++instance Prelude.NFData ListWorlds where+ rnf ListWorlds' {..} =+ Prelude.rnf filters+ `Prelude.seq` Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken++instance Data.ToHeaders ListWorlds where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListWorlds where+ toJSON ListWorlds' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("filters" Data..=) Prelude.<$> filters,+ ("maxResults" Data..=) Prelude.<$> maxResults,+ ("nextToken" Data..=) Prelude.<$> nextToken+ ]+ )++instance Data.ToPath ListWorlds where+ toPath = Prelude.const "/listWorlds"++instance Data.ToQuery ListWorlds where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListWorldsResponse' smart constructor.+data ListWorldsResponse = ListWorldsResponse'+ { -- | If the previous paginated request did not return all of the remaining+ -- results, the response object\'s @nextToken@ parameter value is set to a+ -- token. To retrieve the next set of results, call @ListWorlds@ again and+ -- assign that token to the request object\'s @nextToken@ parameter. If+ -- there are no remaining results, the previous response object\'s+ -- NextToken parameter is set to null.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | Summary information for worlds.+ worldSummaries :: Prelude.Maybe [WorldSummary],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListWorldsResponse' 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', 'listWorldsResponse_nextToken' - If the previous paginated request did not return all of the remaining+-- results, the response object\'s @nextToken@ parameter value is set to a+-- token. To retrieve the next set of results, call @ListWorlds@ again and+-- assign that token to the request object\'s @nextToken@ parameter. If+-- there are no remaining results, the previous response object\'s+-- NextToken parameter is set to null.+--+-- 'worldSummaries', 'listWorldsResponse_worldSummaries' - Summary information for worlds.+--+-- 'httpStatus', 'listWorldsResponse_httpStatus' - The response's http status code.+newListWorldsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListWorldsResponse+newListWorldsResponse pHttpStatus_ =+ ListWorldsResponse'+ { nextToken = Prelude.Nothing,+ worldSummaries = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | If the previous paginated request did not return all of the remaining+-- results, the response object\'s @nextToken@ parameter value is set to a+-- token. To retrieve the next set of results, call @ListWorlds@ again and+-- assign that token to the request object\'s @nextToken@ parameter. If+-- there are no remaining results, the previous response object\'s+-- NextToken parameter is set to null.+listWorldsResponse_nextToken :: Lens.Lens' ListWorldsResponse (Prelude.Maybe Prelude.Text)+listWorldsResponse_nextToken = Lens.lens (\ListWorldsResponse' {nextToken} -> nextToken) (\s@ListWorldsResponse' {} a -> s {nextToken = a} :: ListWorldsResponse)++-- | Summary information for worlds.+listWorldsResponse_worldSummaries :: Lens.Lens' ListWorldsResponse (Prelude.Maybe [WorldSummary])+listWorldsResponse_worldSummaries = Lens.lens (\ListWorldsResponse' {worldSummaries} -> worldSummaries) (\s@ListWorldsResponse' {} a -> s {worldSummaries = a} :: ListWorldsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listWorldsResponse_httpStatus :: Lens.Lens' ListWorldsResponse Prelude.Int+listWorldsResponse_httpStatus = Lens.lens (\ListWorldsResponse' {httpStatus} -> httpStatus) (\s@ListWorldsResponse' {} a -> s {httpStatus = a} :: ListWorldsResponse)++instance Prelude.NFData ListWorldsResponse where+ rnf ListWorldsResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf worldSummaries+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/RobOMaker/RestartSimulationJob.hs view
@@ -0,0 +1,152 @@+{-# 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.RobOMaker.RestartSimulationJob+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Restarts a running simulation job.+module Amazonka.RobOMaker.RestartSimulationJob+ ( -- * Creating a Request+ RestartSimulationJob (..),+ newRestartSimulationJob,++ -- * Request Lenses+ restartSimulationJob_job,++ -- * Destructuring the Response+ RestartSimulationJobResponse (..),+ newRestartSimulationJobResponse,++ -- * Response Lenses+ restartSimulationJobResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.RobOMaker.Types++-- | /See:/ 'newRestartSimulationJob' smart constructor.+data RestartSimulationJob = RestartSimulationJob'+ { -- | The Amazon Resource Name (ARN) of the simulation job.+ job :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RestartSimulationJob' 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:+--+-- 'job', 'restartSimulationJob_job' - The Amazon Resource Name (ARN) of the simulation job.+newRestartSimulationJob ::+ -- | 'job'+ Prelude.Text ->+ RestartSimulationJob+newRestartSimulationJob pJob_ =+ RestartSimulationJob' {job = pJob_}++-- | The Amazon Resource Name (ARN) of the simulation job.+restartSimulationJob_job :: Lens.Lens' RestartSimulationJob Prelude.Text+restartSimulationJob_job = Lens.lens (\RestartSimulationJob' {job} -> job) (\s@RestartSimulationJob' {} a -> s {job = a} :: RestartSimulationJob)++instance Core.AWSRequest RestartSimulationJob where+ type+ AWSResponse RestartSimulationJob =+ RestartSimulationJobResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ RestartSimulationJobResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable RestartSimulationJob where+ hashWithSalt _salt RestartSimulationJob' {..} =+ _salt `Prelude.hashWithSalt` job++instance Prelude.NFData RestartSimulationJob where+ rnf RestartSimulationJob' {..} = Prelude.rnf job++instance Data.ToHeaders RestartSimulationJob where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON RestartSimulationJob where+ toJSON RestartSimulationJob' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("job" Data..= job)]+ )++instance Data.ToPath RestartSimulationJob where+ toPath = Prelude.const "/restartSimulationJob"++instance Data.ToQuery RestartSimulationJob where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newRestartSimulationJobResponse' smart constructor.+data RestartSimulationJobResponse = RestartSimulationJobResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RestartSimulationJobResponse' 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', 'restartSimulationJobResponse_httpStatus' - The response's http status code.+newRestartSimulationJobResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ RestartSimulationJobResponse+newRestartSimulationJobResponse pHttpStatus_ =+ RestartSimulationJobResponse'+ { httpStatus =+ pHttpStatus_+ }++-- | The response's http status code.+restartSimulationJobResponse_httpStatus :: Lens.Lens' RestartSimulationJobResponse Prelude.Int+restartSimulationJobResponse_httpStatus = Lens.lens (\RestartSimulationJobResponse' {httpStatus} -> httpStatus) (\s@RestartSimulationJobResponse' {} a -> s {httpStatus = a} :: RestartSimulationJobResponse)++instance Prelude.NFData RestartSimulationJobResponse where+ rnf RestartSimulationJobResponse' {..} =+ Prelude.rnf httpStatus
+ gen/Amazonka/RobOMaker/StartSimulationJobBatch.hs view
@@ -0,0 +1,484 @@+{-# 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.RobOMaker.StartSimulationJobBatch+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Starts a new simulation job batch. The batch is defined using one or+-- more @SimulationJobRequest@ objects.+module Amazonka.RobOMaker.StartSimulationJobBatch+ ( -- * Creating a Request+ StartSimulationJobBatch (..),+ newStartSimulationJobBatch,++ -- * Request Lenses+ startSimulationJobBatch_batchPolicy,+ startSimulationJobBatch_clientRequestToken,+ startSimulationJobBatch_tags,+ startSimulationJobBatch_createSimulationJobRequests,++ -- * Destructuring the Response+ StartSimulationJobBatchResponse (..),+ newStartSimulationJobBatchResponse,++ -- * Response Lenses+ startSimulationJobBatchResponse_arn,+ startSimulationJobBatchResponse_batchPolicy,+ startSimulationJobBatchResponse_clientRequestToken,+ startSimulationJobBatchResponse_createdAt,+ startSimulationJobBatchResponse_createdRequests,+ startSimulationJobBatchResponse_failedRequests,+ startSimulationJobBatchResponse_failureCode,+ startSimulationJobBatchResponse_failureReason,+ startSimulationJobBatchResponse_pendingRequests,+ startSimulationJobBatchResponse_status,+ startSimulationJobBatchResponse_tags,+ startSimulationJobBatchResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.RobOMaker.Types++-- | /See:/ 'newStartSimulationJobBatch' smart constructor.+data StartSimulationJobBatch = StartSimulationJobBatch'+ { -- | The batch policy.+ batchPolicy :: Prelude.Maybe BatchPolicy,+ -- | Unique, case-sensitive identifier that you provide to ensure the+ -- idempotency of the request.+ clientRequestToken :: Prelude.Maybe Prelude.Text,+ -- | A map that contains tag keys and tag values that are attached to the+ -- deployment job batch.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | A list of simulation job requests to create in the batch.+ createSimulationJobRequests :: Prelude.NonEmpty SimulationJobRequest+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'StartSimulationJobBatch' 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:+--+-- 'batchPolicy', 'startSimulationJobBatch_batchPolicy' - The batch policy.+--+-- 'clientRequestToken', 'startSimulationJobBatch_clientRequestToken' - Unique, case-sensitive identifier that you provide to ensure the+-- idempotency of the request.+--+-- 'tags', 'startSimulationJobBatch_tags' - A map that contains tag keys and tag values that are attached to the+-- deployment job batch.+--+-- 'createSimulationJobRequests', 'startSimulationJobBatch_createSimulationJobRequests' - A list of simulation job requests to create in the batch.+newStartSimulationJobBatch ::+ -- | 'createSimulationJobRequests'+ Prelude.NonEmpty SimulationJobRequest ->+ StartSimulationJobBatch+newStartSimulationJobBatch+ pCreateSimulationJobRequests_ =+ StartSimulationJobBatch'+ { batchPolicy =+ Prelude.Nothing,+ clientRequestToken = Prelude.Nothing,+ tags = Prelude.Nothing,+ createSimulationJobRequests =+ Lens.coerced+ Lens.# pCreateSimulationJobRequests_+ }++-- | The batch policy.+startSimulationJobBatch_batchPolicy :: Lens.Lens' StartSimulationJobBatch (Prelude.Maybe BatchPolicy)+startSimulationJobBatch_batchPolicy = Lens.lens (\StartSimulationJobBatch' {batchPolicy} -> batchPolicy) (\s@StartSimulationJobBatch' {} a -> s {batchPolicy = a} :: StartSimulationJobBatch)++-- | Unique, case-sensitive identifier that you provide to ensure the+-- idempotency of the request.+startSimulationJobBatch_clientRequestToken :: Lens.Lens' StartSimulationJobBatch (Prelude.Maybe Prelude.Text)+startSimulationJobBatch_clientRequestToken = Lens.lens (\StartSimulationJobBatch' {clientRequestToken} -> clientRequestToken) (\s@StartSimulationJobBatch' {} a -> s {clientRequestToken = a} :: StartSimulationJobBatch)++-- | A map that contains tag keys and tag values that are attached to the+-- deployment job batch.+startSimulationJobBatch_tags :: Lens.Lens' StartSimulationJobBatch (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+startSimulationJobBatch_tags = Lens.lens (\StartSimulationJobBatch' {tags} -> tags) (\s@StartSimulationJobBatch' {} a -> s {tags = a} :: StartSimulationJobBatch) Prelude.. Lens.mapping Lens.coerced++-- | A list of simulation job requests to create in the batch.+startSimulationJobBatch_createSimulationJobRequests :: Lens.Lens' StartSimulationJobBatch (Prelude.NonEmpty SimulationJobRequest)+startSimulationJobBatch_createSimulationJobRequests = Lens.lens (\StartSimulationJobBatch' {createSimulationJobRequests} -> createSimulationJobRequests) (\s@StartSimulationJobBatch' {} a -> s {createSimulationJobRequests = a} :: StartSimulationJobBatch) Prelude.. Lens.coerced++instance Core.AWSRequest StartSimulationJobBatch where+ type+ AWSResponse StartSimulationJobBatch =+ StartSimulationJobBatchResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ StartSimulationJobBatchResponse'+ Prelude.<$> (x Data..?> "arn")+ Prelude.<*> (x Data..?> "batchPolicy")+ Prelude.<*> (x Data..?> "clientRequestToken")+ Prelude.<*> (x Data..?> "createdAt")+ Prelude.<*> ( x+ Data..?> "createdRequests"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "failedRequests" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "failureCode")+ Prelude.<*> (x Data..?> "failureReason")+ Prelude.<*> (x Data..?> "pendingRequests")+ Prelude.<*> (x Data..?> "status")+ Prelude.<*> (x Data..?> "tags" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable StartSimulationJobBatch where+ hashWithSalt _salt StartSimulationJobBatch' {..} =+ _salt+ `Prelude.hashWithSalt` batchPolicy+ `Prelude.hashWithSalt` clientRequestToken+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` createSimulationJobRequests++instance Prelude.NFData StartSimulationJobBatch where+ rnf StartSimulationJobBatch' {..} =+ Prelude.rnf batchPolicy+ `Prelude.seq` Prelude.rnf clientRequestToken+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf createSimulationJobRequests++instance Data.ToHeaders StartSimulationJobBatch where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON StartSimulationJobBatch where+ toJSON StartSimulationJobBatch' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("batchPolicy" Data..=) Prelude.<$> batchPolicy,+ ("clientRequestToken" Data..=)+ Prelude.<$> clientRequestToken,+ ("tags" Data..=) Prelude.<$> tags,+ Prelude.Just+ ( "createSimulationJobRequests"+ Data..= createSimulationJobRequests+ )+ ]+ )++instance Data.ToPath StartSimulationJobBatch where+ toPath = Prelude.const "/startSimulationJobBatch"++instance Data.ToQuery StartSimulationJobBatch where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newStartSimulationJobBatchResponse' smart constructor.+data StartSimulationJobBatchResponse = StartSimulationJobBatchResponse'+ { -- | The Amazon Resource Name (arn) of the batch.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The batch policy.+ batchPolicy :: Prelude.Maybe BatchPolicy,+ -- | Unique, case-sensitive identifier that you provide to ensure the+ -- idempotency of the request.+ clientRequestToken :: Prelude.Maybe Prelude.Text,+ -- | The time, in milliseconds since the epoch, when the simulation job batch+ -- was created.+ createdAt :: Prelude.Maybe Data.POSIX,+ -- | A list of created simulation job request summaries.+ createdRequests :: Prelude.Maybe [SimulationJobSummary],+ -- | A list of failed simulation job requests. The request failed to be+ -- created into a simulation job. Failed requests do not have a simulation+ -- job ID.+ failedRequests :: Prelude.Maybe [FailedCreateSimulationJobRequest],+ -- | The failure code if the simulation job batch failed.+ failureCode :: Prelude.Maybe SimulationJobBatchErrorCode,+ -- | The reason the simulation job batch failed.+ failureReason :: Prelude.Maybe Prelude.Text,+ -- | A list of pending simulation job requests. These requests have not yet+ -- been created into simulation jobs.+ pendingRequests :: Prelude.Maybe (Prelude.NonEmpty SimulationJobRequest),+ -- | The status of the simulation job batch.+ --+ -- [Pending]+ -- The simulation job batch request is pending.+ --+ -- [InProgress]+ -- The simulation job batch is in progress.+ --+ -- [Failed]+ -- The simulation job batch failed. One or more simulation job requests+ -- could not be completed due to an internal failure (like+ -- @InternalServiceError@). See @failureCode@ and @failureReason@ for+ -- more information.+ --+ -- [Completed]+ -- The simulation batch job completed. A batch is complete when (1)+ -- there are no pending simulation job requests in the batch and none+ -- of the failed simulation job requests are due to+ -- @InternalServiceError@ and (2) when all created simulation jobs have+ -- reached a terminal state (for example, @Completed@ or @Failed@).+ --+ -- [Canceled]+ -- The simulation batch job was cancelled.+ --+ -- [Canceling]+ -- The simulation batch job is being cancelled.+ --+ -- [Completing]+ -- The simulation batch job is completing.+ --+ -- [TimingOut]+ -- The simulation job batch is timing out.+ --+ -- If a batch timing out, and there are pending requests that were+ -- failing due to an internal failure (like @InternalServiceError@),+ -- the batch status will be @Failed@. If there are no such failing+ -- request, the batch status will be @TimedOut@.+ --+ -- [TimedOut]+ -- The simulation batch job timed out.+ status :: Prelude.Maybe SimulationJobBatchStatus,+ -- | A map that contains tag keys and tag values that are attached to the+ -- deployment job batch.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'StartSimulationJobBatchResponse' 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', 'startSimulationJobBatchResponse_arn' - The Amazon Resource Name (arn) of the batch.+--+-- 'batchPolicy', 'startSimulationJobBatchResponse_batchPolicy' - The batch policy.+--+-- 'clientRequestToken', 'startSimulationJobBatchResponse_clientRequestToken' - Unique, case-sensitive identifier that you provide to ensure the+-- idempotency of the request.+--+-- 'createdAt', 'startSimulationJobBatchResponse_createdAt' - The time, in milliseconds since the epoch, when the simulation job batch+-- was created.+--+-- 'createdRequests', 'startSimulationJobBatchResponse_createdRequests' - A list of created simulation job request summaries.+--+-- 'failedRequests', 'startSimulationJobBatchResponse_failedRequests' - A list of failed simulation job requests. The request failed to be+-- created into a simulation job. Failed requests do not have a simulation+-- job ID.+--+-- 'failureCode', 'startSimulationJobBatchResponse_failureCode' - The failure code if the simulation job batch failed.+--+-- 'failureReason', 'startSimulationJobBatchResponse_failureReason' - The reason the simulation job batch failed.+--+-- 'pendingRequests', 'startSimulationJobBatchResponse_pendingRequests' - A list of pending simulation job requests. These requests have not yet+-- been created into simulation jobs.+--+-- 'status', 'startSimulationJobBatchResponse_status' - The status of the simulation job batch.+--+-- [Pending]+-- The simulation job batch request is pending.+--+-- [InProgress]+-- The simulation job batch is in progress.+--+-- [Failed]+-- The simulation job batch failed. One or more simulation job requests+-- could not be completed due to an internal failure (like+-- @InternalServiceError@). See @failureCode@ and @failureReason@ for+-- more information.+--+-- [Completed]+-- The simulation batch job completed. A batch is complete when (1)+-- there are no pending simulation job requests in the batch and none+-- of the failed simulation job requests are due to+-- @InternalServiceError@ and (2) when all created simulation jobs have+-- reached a terminal state (for example, @Completed@ or @Failed@).+--+-- [Canceled]+-- The simulation batch job was cancelled.+--+-- [Canceling]+-- The simulation batch job is being cancelled.+--+-- [Completing]+-- The simulation batch job is completing.+--+-- [TimingOut]+-- The simulation job batch is timing out.+--+-- If a batch timing out, and there are pending requests that were+-- failing due to an internal failure (like @InternalServiceError@),+-- the batch status will be @Failed@. If there are no such failing+-- request, the batch status will be @TimedOut@.+--+-- [TimedOut]+-- The simulation batch job timed out.+--+-- 'tags', 'startSimulationJobBatchResponse_tags' - A map that contains tag keys and tag values that are attached to the+-- deployment job batch.+--+-- 'httpStatus', 'startSimulationJobBatchResponse_httpStatus' - The response's http status code.+newStartSimulationJobBatchResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ StartSimulationJobBatchResponse+newStartSimulationJobBatchResponse pHttpStatus_ =+ StartSimulationJobBatchResponse'+ { arn =+ Prelude.Nothing,+ batchPolicy = Prelude.Nothing,+ clientRequestToken = Prelude.Nothing,+ createdAt = Prelude.Nothing,+ createdRequests = Prelude.Nothing,+ failedRequests = Prelude.Nothing,+ failureCode = Prelude.Nothing,+ failureReason = Prelude.Nothing,+ pendingRequests = Prelude.Nothing,+ status = Prelude.Nothing,+ tags = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The Amazon Resource Name (arn) of the batch.+startSimulationJobBatchResponse_arn :: Lens.Lens' StartSimulationJobBatchResponse (Prelude.Maybe Prelude.Text)+startSimulationJobBatchResponse_arn = Lens.lens (\StartSimulationJobBatchResponse' {arn} -> arn) (\s@StartSimulationJobBatchResponse' {} a -> s {arn = a} :: StartSimulationJobBatchResponse)++-- | The batch policy.+startSimulationJobBatchResponse_batchPolicy :: Lens.Lens' StartSimulationJobBatchResponse (Prelude.Maybe BatchPolicy)+startSimulationJobBatchResponse_batchPolicy = Lens.lens (\StartSimulationJobBatchResponse' {batchPolicy} -> batchPolicy) (\s@StartSimulationJobBatchResponse' {} a -> s {batchPolicy = a} :: StartSimulationJobBatchResponse)++-- | Unique, case-sensitive identifier that you provide to ensure the+-- idempotency of the request.+startSimulationJobBatchResponse_clientRequestToken :: Lens.Lens' StartSimulationJobBatchResponse (Prelude.Maybe Prelude.Text)+startSimulationJobBatchResponse_clientRequestToken = Lens.lens (\StartSimulationJobBatchResponse' {clientRequestToken} -> clientRequestToken) (\s@StartSimulationJobBatchResponse' {} a -> s {clientRequestToken = a} :: StartSimulationJobBatchResponse)++-- | The time, in milliseconds since the epoch, when the simulation job batch+-- was created.+startSimulationJobBatchResponse_createdAt :: Lens.Lens' StartSimulationJobBatchResponse (Prelude.Maybe Prelude.UTCTime)+startSimulationJobBatchResponse_createdAt = Lens.lens (\StartSimulationJobBatchResponse' {createdAt} -> createdAt) (\s@StartSimulationJobBatchResponse' {} a -> s {createdAt = a} :: StartSimulationJobBatchResponse) Prelude.. Lens.mapping Data._Time++-- | A list of created simulation job request summaries.+startSimulationJobBatchResponse_createdRequests :: Lens.Lens' StartSimulationJobBatchResponse (Prelude.Maybe [SimulationJobSummary])+startSimulationJobBatchResponse_createdRequests = Lens.lens (\StartSimulationJobBatchResponse' {createdRequests} -> createdRequests) (\s@StartSimulationJobBatchResponse' {} a -> s {createdRequests = a} :: StartSimulationJobBatchResponse) Prelude.. Lens.mapping Lens.coerced++-- | A list of failed simulation job requests. The request failed to be+-- created into a simulation job. Failed requests do not have a simulation+-- job ID.+startSimulationJobBatchResponse_failedRequests :: Lens.Lens' StartSimulationJobBatchResponse (Prelude.Maybe [FailedCreateSimulationJobRequest])+startSimulationJobBatchResponse_failedRequests = Lens.lens (\StartSimulationJobBatchResponse' {failedRequests} -> failedRequests) (\s@StartSimulationJobBatchResponse' {} a -> s {failedRequests = a} :: StartSimulationJobBatchResponse) Prelude.. Lens.mapping Lens.coerced++-- | The failure code if the simulation job batch failed.+startSimulationJobBatchResponse_failureCode :: Lens.Lens' StartSimulationJobBatchResponse (Prelude.Maybe SimulationJobBatchErrorCode)+startSimulationJobBatchResponse_failureCode = Lens.lens (\StartSimulationJobBatchResponse' {failureCode} -> failureCode) (\s@StartSimulationJobBatchResponse' {} a -> s {failureCode = a} :: StartSimulationJobBatchResponse)++-- | The reason the simulation job batch failed.+startSimulationJobBatchResponse_failureReason :: Lens.Lens' StartSimulationJobBatchResponse (Prelude.Maybe Prelude.Text)+startSimulationJobBatchResponse_failureReason = Lens.lens (\StartSimulationJobBatchResponse' {failureReason} -> failureReason) (\s@StartSimulationJobBatchResponse' {} a -> s {failureReason = a} :: StartSimulationJobBatchResponse)++-- | A list of pending simulation job requests. These requests have not yet+-- been created into simulation jobs.+startSimulationJobBatchResponse_pendingRequests :: Lens.Lens' StartSimulationJobBatchResponse (Prelude.Maybe (Prelude.NonEmpty SimulationJobRequest))+startSimulationJobBatchResponse_pendingRequests = Lens.lens (\StartSimulationJobBatchResponse' {pendingRequests} -> pendingRequests) (\s@StartSimulationJobBatchResponse' {} a -> s {pendingRequests = a} :: StartSimulationJobBatchResponse) Prelude.. Lens.mapping Lens.coerced++-- | The status of the simulation job batch.+--+-- [Pending]+-- The simulation job batch request is pending.+--+-- [InProgress]+-- The simulation job batch is in progress.+--+-- [Failed]+-- The simulation job batch failed. One or more simulation job requests+-- could not be completed due to an internal failure (like+-- @InternalServiceError@). See @failureCode@ and @failureReason@ for+-- more information.+--+-- [Completed]+-- The simulation batch job completed. A batch is complete when (1)+-- there are no pending simulation job requests in the batch and none+-- of the failed simulation job requests are due to+-- @InternalServiceError@ and (2) when all created simulation jobs have+-- reached a terminal state (for example, @Completed@ or @Failed@).+--+-- [Canceled]+-- The simulation batch job was cancelled.+--+-- [Canceling]+-- The simulation batch job is being cancelled.+--+-- [Completing]+-- The simulation batch job is completing.+--+-- [TimingOut]+-- The simulation job batch is timing out.+--+-- If a batch timing out, and there are pending requests that were+-- failing due to an internal failure (like @InternalServiceError@),+-- the batch status will be @Failed@. If there are no such failing+-- request, the batch status will be @TimedOut@.+--+-- [TimedOut]+-- The simulation batch job timed out.+startSimulationJobBatchResponse_status :: Lens.Lens' StartSimulationJobBatchResponse (Prelude.Maybe SimulationJobBatchStatus)+startSimulationJobBatchResponse_status = Lens.lens (\StartSimulationJobBatchResponse' {status} -> status) (\s@StartSimulationJobBatchResponse' {} a -> s {status = a} :: StartSimulationJobBatchResponse)++-- | A map that contains tag keys and tag values that are attached to the+-- deployment job batch.+startSimulationJobBatchResponse_tags :: Lens.Lens' StartSimulationJobBatchResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+startSimulationJobBatchResponse_tags = Lens.lens (\StartSimulationJobBatchResponse' {tags} -> tags) (\s@StartSimulationJobBatchResponse' {} a -> s {tags = a} :: StartSimulationJobBatchResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+startSimulationJobBatchResponse_httpStatus :: Lens.Lens' StartSimulationJobBatchResponse Prelude.Int+startSimulationJobBatchResponse_httpStatus = Lens.lens (\StartSimulationJobBatchResponse' {httpStatus} -> httpStatus) (\s@StartSimulationJobBatchResponse' {} a -> s {httpStatus = a} :: StartSimulationJobBatchResponse)++instance+ Prelude.NFData+ StartSimulationJobBatchResponse+ where+ rnf StartSimulationJobBatchResponse' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf batchPolicy+ `Prelude.seq` Prelude.rnf clientRequestToken+ `Prelude.seq` Prelude.rnf createdAt+ `Prelude.seq` Prelude.rnf createdRequests+ `Prelude.seq` Prelude.rnf failedRequests+ `Prelude.seq` Prelude.rnf failureCode+ `Prelude.seq` Prelude.rnf failureReason+ `Prelude.seq` Prelude.rnf pendingRequests+ `Prelude.seq` Prelude.rnf status+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/RobOMaker/TagResource.hs view
@@ -0,0 +1,177 @@+{-# 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.RobOMaker.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)+--+-- Adds or edits tags for a AWS RoboMaker resource.+--+-- Each tag consists of a tag key and a tag value. Tag keys and tag values+-- are both required, but tag values can be empty strings.+--+-- For information about the rules that apply to tag keys and tag values,+-- see+-- <https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/allocation-tag-restrictions.html User-Defined Tag Restrictions>+-- in the /AWS Billing and Cost Management User Guide/.+module Amazonka.RobOMaker.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 qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.RobOMaker.Types++-- | /See:/ 'newTagResource' smart constructor.+data TagResource = TagResource'+ { -- | The Amazon Resource Name (ARN) of the AWS RoboMaker resource you are+ -- tagging.+ resourceArn :: Prelude.Text,+ -- | A map that contains tag keys and tag values that are attached to the+ -- resource.+ tags :: Prelude.HashMap Prelude.Text Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, 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 AWS RoboMaker resource you are+-- tagging.+--+-- 'tags', 'tagResource_tags' - A map that contains tag keys and tag values that are attached to the+-- resource.+newTagResource ::+ -- | 'resourceArn'+ Prelude.Text ->+ TagResource+newTagResource pResourceArn_ =+ TagResource'+ { resourceArn = pResourceArn_,+ tags = Prelude.mempty+ }++-- | The Amazon Resource Name (ARN) of the AWS RoboMaker resource you are+-- tagging.+tagResource_resourceArn :: Lens.Lens' TagResource Prelude.Text+tagResource_resourceArn = Lens.lens (\TagResource' {resourceArn} -> resourceArn) (\s@TagResource' {} a -> s {resourceArn = a} :: TagResource)++-- | A map that contains tag keys and tag values that are attached to 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.. 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/RobOMaker/Types.hs view
@@ -0,0 +1,645 @@+{-# 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.RobOMaker.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.RobOMaker.Types+ ( -- * Service Configuration+ defaultService,++ -- * Errors+ _ConcurrentDeploymentException,+ _IdempotentParameterMismatchException,+ _InternalServerException,+ _InvalidParameterException,+ _LimitExceededException,+ _ResourceAlreadyExistsException,+ _ResourceNotFoundException,+ _ServiceUnavailableException,+ _ThrottlingException,++ -- * Architecture+ Architecture (..),++ -- * ComputeType+ ComputeType (..),++ -- * DataSourceType+ DataSourceType (..),++ -- * ExitBehavior+ ExitBehavior (..),++ -- * FailureBehavior+ FailureBehavior (..),++ -- * RenderingEngineType+ RenderingEngineType (..),++ -- * RobotSoftwareSuiteType+ RobotSoftwareSuiteType (..),++ -- * RobotSoftwareSuiteVersionType+ RobotSoftwareSuiteVersionType (..),++ -- * SimulationJobBatchErrorCode+ SimulationJobBatchErrorCode (..),++ -- * SimulationJobBatchStatus+ SimulationJobBatchStatus (..),++ -- * SimulationJobErrorCode+ SimulationJobErrorCode (..),++ -- * SimulationJobStatus+ SimulationJobStatus (..),++ -- * SimulationSoftwareSuiteType+ SimulationSoftwareSuiteType (..),++ -- * UploadBehavior+ UploadBehavior (..),++ -- * WorldExportJobErrorCode+ WorldExportJobErrorCode (..),++ -- * WorldExportJobStatus+ WorldExportJobStatus (..),++ -- * WorldGenerationJobErrorCode+ WorldGenerationJobErrorCode (..),++ -- * WorldGenerationJobStatus+ WorldGenerationJobStatus (..),++ -- * BatchPolicy+ BatchPolicy (..),+ newBatchPolicy,+ batchPolicy_maxConcurrency,+ batchPolicy_timeoutInSeconds,++ -- * Compute+ Compute (..),+ newCompute,+ compute_computeType,+ compute_gpuUnitLimit,+ compute_simulationUnitLimit,++ -- * ComputeResponse+ ComputeResponse (..),+ newComputeResponse,+ computeResponse_computeType,+ computeResponse_gpuUnitLimit,+ computeResponse_simulationUnitLimit,++ -- * DataSource+ DataSource (..),+ newDataSource,+ dataSource_destination,+ dataSource_name,+ dataSource_s3Bucket,+ dataSource_s3Keys,+ dataSource_type,++ -- * DataSourceConfig+ DataSourceConfig (..),+ newDataSourceConfig,+ dataSourceConfig_destination,+ dataSourceConfig_type,+ dataSourceConfig_name,+ dataSourceConfig_s3Bucket,+ dataSourceConfig_s3Keys,++ -- * Environment+ Environment (..),+ newEnvironment,+ environment_uri,++ -- * FailedCreateSimulationJobRequest+ FailedCreateSimulationJobRequest (..),+ newFailedCreateSimulationJobRequest,+ failedCreateSimulationJobRequest_failedAt,+ failedCreateSimulationJobRequest_failureCode,+ failedCreateSimulationJobRequest_failureReason,+ failedCreateSimulationJobRequest_request,++ -- * FailureSummary+ FailureSummary (..),+ newFailureSummary,+ failureSummary_failures,+ failureSummary_totalFailureCount,++ -- * Filter+ Filter (..),+ newFilter,+ filter_name,+ filter_values,++ -- * FinishedWorldsSummary+ FinishedWorldsSummary (..),+ newFinishedWorldsSummary,+ finishedWorldsSummary_failureSummary,+ finishedWorldsSummary_finishedCount,+ finishedWorldsSummary_succeededWorlds,++ -- * LaunchConfig+ LaunchConfig (..),+ newLaunchConfig,+ launchConfig_command,+ launchConfig_environmentVariables,+ launchConfig_launchFile,+ launchConfig_packageName,+ launchConfig_portForwardingConfig,+ launchConfig_streamUI,++ -- * LoggingConfig+ LoggingConfig (..),+ newLoggingConfig,+ loggingConfig_recordAllRosTopics,++ -- * NetworkInterface+ NetworkInterface (..),+ newNetworkInterface,+ networkInterface_networkInterfaceId,+ networkInterface_privateIpAddress,+ networkInterface_publicIpAddress,++ -- * OutputLocation+ OutputLocation (..),+ newOutputLocation,+ outputLocation_s3Bucket,+ outputLocation_s3Prefix,++ -- * PortForwardingConfig+ PortForwardingConfig (..),+ newPortForwardingConfig,+ portForwardingConfig_portMappings,++ -- * PortMapping+ PortMapping (..),+ newPortMapping,+ portMapping_enableOnPublicIp,+ portMapping_jobPort,+ portMapping_applicationPort,++ -- * RenderingEngine+ RenderingEngine (..),+ newRenderingEngine,+ renderingEngine_name,+ renderingEngine_version,++ -- * RobotApplicationConfig+ RobotApplicationConfig (..),+ newRobotApplicationConfig,+ robotApplicationConfig_applicationVersion,+ robotApplicationConfig_tools,+ robotApplicationConfig_uploadConfigurations,+ robotApplicationConfig_useDefaultTools,+ robotApplicationConfig_useDefaultUploadConfigurations,+ robotApplicationConfig_application,+ robotApplicationConfig_launchConfig,++ -- * RobotApplicationSummary+ RobotApplicationSummary (..),+ newRobotApplicationSummary,+ robotApplicationSummary_arn,+ robotApplicationSummary_lastUpdatedAt,+ robotApplicationSummary_name,+ robotApplicationSummary_robotSoftwareSuite,+ robotApplicationSummary_version,++ -- * RobotSoftwareSuite+ RobotSoftwareSuite (..),+ newRobotSoftwareSuite,+ robotSoftwareSuite_name,+ robotSoftwareSuite_version,++ -- * S3KeyOutput+ S3KeyOutput (..),+ newS3KeyOutput,+ s3KeyOutput_etag,+ s3KeyOutput_s3Key,++ -- * SimulationApplicationConfig+ SimulationApplicationConfig (..),+ newSimulationApplicationConfig,+ simulationApplicationConfig_applicationVersion,+ simulationApplicationConfig_tools,+ simulationApplicationConfig_uploadConfigurations,+ simulationApplicationConfig_useDefaultTools,+ simulationApplicationConfig_useDefaultUploadConfigurations,+ simulationApplicationConfig_worldConfigs,+ simulationApplicationConfig_application,+ simulationApplicationConfig_launchConfig,++ -- * SimulationApplicationSummary+ SimulationApplicationSummary (..),+ newSimulationApplicationSummary,+ simulationApplicationSummary_arn,+ simulationApplicationSummary_lastUpdatedAt,+ simulationApplicationSummary_name,+ simulationApplicationSummary_robotSoftwareSuite,+ simulationApplicationSummary_simulationSoftwareSuite,+ simulationApplicationSummary_version,++ -- * SimulationJob+ SimulationJob (..),+ newSimulationJob,+ simulationJob_arn,+ simulationJob_clientRequestToken,+ simulationJob_compute,+ simulationJob_dataSources,+ simulationJob_failureBehavior,+ simulationJob_failureCode,+ simulationJob_failureReason,+ simulationJob_iamRole,+ simulationJob_lastStartedAt,+ simulationJob_lastUpdatedAt,+ simulationJob_loggingConfig,+ simulationJob_maxJobDurationInSeconds,+ simulationJob_name,+ simulationJob_networkInterface,+ simulationJob_outputLocation,+ simulationJob_robotApplications,+ simulationJob_simulationApplications,+ simulationJob_simulationTimeMillis,+ simulationJob_status,+ simulationJob_tags,+ simulationJob_vpcConfig,++ -- * SimulationJobBatchSummary+ SimulationJobBatchSummary (..),+ newSimulationJobBatchSummary,+ simulationJobBatchSummary_arn,+ simulationJobBatchSummary_createdAt,+ simulationJobBatchSummary_createdRequestCount,+ simulationJobBatchSummary_failedRequestCount,+ simulationJobBatchSummary_lastUpdatedAt,+ simulationJobBatchSummary_pendingRequestCount,+ simulationJobBatchSummary_status,++ -- * SimulationJobRequest+ SimulationJobRequest (..),+ newSimulationJobRequest,+ simulationJobRequest_compute,+ simulationJobRequest_dataSources,+ simulationJobRequest_failureBehavior,+ simulationJobRequest_iamRole,+ simulationJobRequest_loggingConfig,+ simulationJobRequest_outputLocation,+ simulationJobRequest_robotApplications,+ simulationJobRequest_simulationApplications,+ simulationJobRequest_tags,+ simulationJobRequest_useDefaultApplications,+ simulationJobRequest_vpcConfig,+ simulationJobRequest_maxJobDurationInSeconds,++ -- * SimulationJobSummary+ SimulationJobSummary (..),+ newSimulationJobSummary,+ simulationJobSummary_arn,+ simulationJobSummary_computeType,+ simulationJobSummary_dataSourceNames,+ simulationJobSummary_lastUpdatedAt,+ simulationJobSummary_name,+ simulationJobSummary_robotApplicationNames,+ simulationJobSummary_simulationApplicationNames,+ simulationJobSummary_status,++ -- * SimulationSoftwareSuite+ SimulationSoftwareSuite (..),+ newSimulationSoftwareSuite,+ simulationSoftwareSuite_name,+ simulationSoftwareSuite_version,++ -- * Source+ Source (..),+ newSource,+ source_architecture,+ source_etag,+ source_s3Bucket,+ source_s3Key,++ -- * SourceConfig+ SourceConfig (..),+ newSourceConfig,+ sourceConfig_architecture,+ sourceConfig_s3Bucket,+ sourceConfig_s3Key,++ -- * TemplateLocation+ TemplateLocation (..),+ newTemplateLocation,+ templateLocation_s3Bucket,+ templateLocation_s3Key,++ -- * TemplateSummary+ TemplateSummary (..),+ newTemplateSummary,+ templateSummary_arn,+ templateSummary_createdAt,+ templateSummary_lastUpdatedAt,+ templateSummary_name,+ templateSummary_version,++ -- * Tool+ Tool (..),+ newTool,+ tool_exitBehavior,+ tool_streamOutputToCloudWatch,+ tool_streamUI,+ tool_name,+ tool_command,++ -- * UploadConfiguration+ UploadConfiguration (..),+ newUploadConfiguration,+ uploadConfiguration_name,+ uploadConfiguration_path,+ uploadConfiguration_uploadBehavior,++ -- * VPCConfig+ VPCConfig (..),+ newVPCConfig,+ vPCConfig_assignPublicIp,+ vPCConfig_securityGroups,+ vPCConfig_subnets,++ -- * VPCConfigResponse+ VPCConfigResponse (..),+ newVPCConfigResponse,+ vPCConfigResponse_assignPublicIp,+ vPCConfigResponse_securityGroups,+ vPCConfigResponse_subnets,+ vPCConfigResponse_vpcId,++ -- * WorldConfig+ WorldConfig (..),+ newWorldConfig,+ worldConfig_world,++ -- * WorldCount+ WorldCount (..),+ newWorldCount,+ worldCount_floorplanCount,+ worldCount_interiorCountPerFloorplan,++ -- * WorldExportJobSummary+ WorldExportJobSummary (..),+ newWorldExportJobSummary,+ worldExportJobSummary_arn,+ worldExportJobSummary_createdAt,+ worldExportJobSummary_outputLocation,+ worldExportJobSummary_status,+ worldExportJobSummary_worlds,++ -- * WorldFailure+ WorldFailure (..),+ newWorldFailure,+ worldFailure_failureCode,+ worldFailure_failureCount,+ worldFailure_sampleFailureReason,++ -- * WorldGenerationJobSummary+ WorldGenerationJobSummary (..),+ newWorldGenerationJobSummary,+ worldGenerationJobSummary_arn,+ worldGenerationJobSummary_createdAt,+ worldGenerationJobSummary_failedWorldCount,+ worldGenerationJobSummary_status,+ worldGenerationJobSummary_succeededWorldCount,+ worldGenerationJobSummary_template,+ worldGenerationJobSummary_worldCount,++ -- * WorldSummary+ WorldSummary (..),+ newWorldSummary,+ worldSummary_arn,+ worldSummary_createdAt,+ worldSummary_generationJob,+ worldSummary_template,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Prelude as Prelude+import Amazonka.RobOMaker.Types.Architecture+import Amazonka.RobOMaker.Types.BatchPolicy+import Amazonka.RobOMaker.Types.Compute+import Amazonka.RobOMaker.Types.ComputeResponse+import Amazonka.RobOMaker.Types.ComputeType+import Amazonka.RobOMaker.Types.DataSource+import Amazonka.RobOMaker.Types.DataSourceConfig+import Amazonka.RobOMaker.Types.DataSourceType+import Amazonka.RobOMaker.Types.Environment+import Amazonka.RobOMaker.Types.ExitBehavior+import Amazonka.RobOMaker.Types.FailedCreateSimulationJobRequest+import Amazonka.RobOMaker.Types.FailureBehavior+import Amazonka.RobOMaker.Types.FailureSummary+import Amazonka.RobOMaker.Types.Filter+import Amazonka.RobOMaker.Types.FinishedWorldsSummary+import Amazonka.RobOMaker.Types.LaunchConfig+import Amazonka.RobOMaker.Types.LoggingConfig+import Amazonka.RobOMaker.Types.NetworkInterface+import Amazonka.RobOMaker.Types.OutputLocation+import Amazonka.RobOMaker.Types.PortForwardingConfig+import Amazonka.RobOMaker.Types.PortMapping+import Amazonka.RobOMaker.Types.RenderingEngine+import Amazonka.RobOMaker.Types.RenderingEngineType+import Amazonka.RobOMaker.Types.RobotApplicationConfig+import Amazonka.RobOMaker.Types.RobotApplicationSummary+import Amazonka.RobOMaker.Types.RobotSoftwareSuite+import Amazonka.RobOMaker.Types.RobotSoftwareSuiteType+import Amazonka.RobOMaker.Types.RobotSoftwareSuiteVersionType+import Amazonka.RobOMaker.Types.S3KeyOutput+import Amazonka.RobOMaker.Types.SimulationApplicationConfig+import Amazonka.RobOMaker.Types.SimulationApplicationSummary+import Amazonka.RobOMaker.Types.SimulationJob+import Amazonka.RobOMaker.Types.SimulationJobBatchErrorCode+import Amazonka.RobOMaker.Types.SimulationJobBatchStatus+import Amazonka.RobOMaker.Types.SimulationJobBatchSummary+import Amazonka.RobOMaker.Types.SimulationJobErrorCode+import Amazonka.RobOMaker.Types.SimulationJobRequest+import Amazonka.RobOMaker.Types.SimulationJobStatus+import Amazonka.RobOMaker.Types.SimulationJobSummary+import Amazonka.RobOMaker.Types.SimulationSoftwareSuite+import Amazonka.RobOMaker.Types.SimulationSoftwareSuiteType+import Amazonka.RobOMaker.Types.Source+import Amazonka.RobOMaker.Types.SourceConfig+import Amazonka.RobOMaker.Types.TemplateLocation+import Amazonka.RobOMaker.Types.TemplateSummary+import Amazonka.RobOMaker.Types.Tool+import Amazonka.RobOMaker.Types.UploadBehavior+import Amazonka.RobOMaker.Types.UploadConfiguration+import Amazonka.RobOMaker.Types.VPCConfig+import Amazonka.RobOMaker.Types.VPCConfigResponse+import Amazonka.RobOMaker.Types.WorldConfig+import Amazonka.RobOMaker.Types.WorldCount+import Amazonka.RobOMaker.Types.WorldExportJobErrorCode+import Amazonka.RobOMaker.Types.WorldExportJobStatus+import Amazonka.RobOMaker.Types.WorldExportJobSummary+import Amazonka.RobOMaker.Types.WorldFailure+import Amazonka.RobOMaker.Types.WorldGenerationJobErrorCode+import Amazonka.RobOMaker.Types.WorldGenerationJobStatus+import Amazonka.RobOMaker.Types.WorldGenerationJobSummary+import Amazonka.RobOMaker.Types.WorldSummary+import qualified Amazonka.Sign.V4 as Sign++-- | API version @2018-06-29@ of the Amazon RoboMaker SDK configuration.+defaultService :: Core.Service+defaultService =+ Core.Service+ { Core.abbrev = "RobOMaker",+ Core.signer = Sign.v4,+ Core.endpointPrefix = "robomaker",+ Core.signingName = "robomaker",+ Core.version = "2018-06-29",+ Core.s3AddressingStyle = Core.S3AddressingStyleAuto,+ Core.endpoint = Core.defaultEndpoint defaultService,+ Core.timeout = Prelude.Just 70,+ Core.check = Core.statusSuccess,+ Core.error = Core.parseJSONError "RobOMaker",+ 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 failure percentage threshold percentage was met.+_ConcurrentDeploymentException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ConcurrentDeploymentException =+ Core._MatchServiceError+ defaultService+ "ConcurrentDeploymentException"+ Prelude.. Core.hasStatus 400++-- | The request uses the same client token as a previous, but non-identical+-- request. Do not reuse a client token with different requests, unless the+-- requests are identical.+_IdempotentParameterMismatchException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_IdempotentParameterMismatchException =+ Core._MatchServiceError+ defaultService+ "IdempotentParameterMismatchException"+ Prelude.. Core.hasStatus 400++-- | AWS RoboMaker experienced a service issue. Try your call again.+_InternalServerException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InternalServerException =+ Core._MatchServiceError+ defaultService+ "InternalServerException"+ Prelude.. Core.hasStatus 500++-- | A parameter specified in a request is not valid, is unsupported, or+-- cannot be used. The returned message provides an explanation of the+-- error value.+_InvalidParameterException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InvalidParameterException =+ Core._MatchServiceError+ defaultService+ "InvalidParameterException"+ Prelude.. Core.hasStatus 400++-- | The requested resource exceeds the maximum number allowed, or the number+-- of concurrent stream requests exceeds the maximum number allowed.+_LimitExceededException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_LimitExceededException =+ Core._MatchServiceError+ defaultService+ "LimitExceededException"+ Prelude.. Core.hasStatus 400++-- | The specified resource already exists.+_ResourceAlreadyExistsException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ResourceAlreadyExistsException =+ Core._MatchServiceError+ defaultService+ "ResourceAlreadyExistsException"+ Prelude.. Core.hasStatus 400++-- | The specified resource does not exist.+_ResourceNotFoundException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ResourceNotFoundException =+ Core._MatchServiceError+ defaultService+ "ResourceNotFoundException"+ Prelude.. Core.hasStatus 400++-- | The request has failed due to a temporary failure of the server.+_ServiceUnavailableException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ServiceUnavailableException =+ Core._MatchServiceError+ defaultService+ "ServiceUnavailableException"+ Prelude.. Core.hasStatus 503++-- | AWS RoboMaker is temporarily unable to process the request. Try your+-- call again.+_ThrottlingException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ThrottlingException =+ Core._MatchServiceError+ defaultService+ "ThrottlingException"+ Prelude.. Core.hasStatus 400
+ gen/Amazonka/RobOMaker/Types/Architecture.hs view
@@ -0,0 +1,76 @@+{-# 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.RobOMaker.Types.Architecture+-- 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.RobOMaker.Types.Architecture+ ( Architecture+ ( ..,+ Architecture_ARM64,+ Architecture_ARMHF,+ Architecture_X86_64+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype Architecture = Architecture'+ { fromArchitecture ::+ 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 Architecture_ARM64 :: Architecture+pattern Architecture_ARM64 = Architecture' "ARM64"++pattern Architecture_ARMHF :: Architecture+pattern Architecture_ARMHF = Architecture' "ARMHF"++pattern Architecture_X86_64 :: Architecture+pattern Architecture_X86_64 = Architecture' "X86_64"++{-# COMPLETE+ Architecture_ARM64,+ Architecture_ARMHF,+ Architecture_X86_64,+ Architecture'+ #-}
+ gen/Amazonka/RobOMaker/Types/BatchPolicy.hs view
@@ -0,0 +1,128 @@+{-# 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.RobOMaker.Types.BatchPolicy+-- 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.RobOMaker.Types.BatchPolicy 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++-- | Information about the batch policy.+--+-- /See:/ 'newBatchPolicy' smart constructor.+data BatchPolicy = BatchPolicy'+ { -- | The number of active simulation jobs create as part of the batch that+ -- can be in an active state at the same time.+ --+ -- Active states include: @Pending@,@Preparing@, @Running@, @Restarting@,+ -- @RunningFailed@ and @Terminating@. All other states are terminal states.+ maxConcurrency :: Prelude.Maybe Prelude.Int,+ -- | The amount of time, in seconds, to wait for the batch to complete.+ --+ -- If a batch times out, and there are pending requests that were failing+ -- due to an internal failure (like @InternalServiceError@), they will be+ -- moved to the failed list and the batch status will be @Failed@. If the+ -- pending requests were failing for any other reason, the failed pending+ -- requests will be moved to the failed list and the batch status will be+ -- @TimedOut@.+ timeoutInSeconds :: Prelude.Maybe Prelude.Integer+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'BatchPolicy' 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:+--+-- 'maxConcurrency', 'batchPolicy_maxConcurrency' - The number of active simulation jobs create as part of the batch that+-- can be in an active state at the same time.+--+-- Active states include: @Pending@,@Preparing@, @Running@, @Restarting@,+-- @RunningFailed@ and @Terminating@. All other states are terminal states.+--+-- 'timeoutInSeconds', 'batchPolicy_timeoutInSeconds' - The amount of time, in seconds, to wait for the batch to complete.+--+-- If a batch times out, and there are pending requests that were failing+-- due to an internal failure (like @InternalServiceError@), they will be+-- moved to the failed list and the batch status will be @Failed@. If the+-- pending requests were failing for any other reason, the failed pending+-- requests will be moved to the failed list and the batch status will be+-- @TimedOut@.+newBatchPolicy ::+ BatchPolicy+newBatchPolicy =+ BatchPolicy'+ { maxConcurrency = Prelude.Nothing,+ timeoutInSeconds = Prelude.Nothing+ }++-- | The number of active simulation jobs create as part of the batch that+-- can be in an active state at the same time.+--+-- Active states include: @Pending@,@Preparing@, @Running@, @Restarting@,+-- @RunningFailed@ and @Terminating@. All other states are terminal states.+batchPolicy_maxConcurrency :: Lens.Lens' BatchPolicy (Prelude.Maybe Prelude.Int)+batchPolicy_maxConcurrency = Lens.lens (\BatchPolicy' {maxConcurrency} -> maxConcurrency) (\s@BatchPolicy' {} a -> s {maxConcurrency = a} :: BatchPolicy)++-- | The amount of time, in seconds, to wait for the batch to complete.+--+-- If a batch times out, and there are pending requests that were failing+-- due to an internal failure (like @InternalServiceError@), they will be+-- moved to the failed list and the batch status will be @Failed@. If the+-- pending requests were failing for any other reason, the failed pending+-- requests will be moved to the failed list and the batch status will be+-- @TimedOut@.+batchPolicy_timeoutInSeconds :: Lens.Lens' BatchPolicy (Prelude.Maybe Prelude.Integer)+batchPolicy_timeoutInSeconds = Lens.lens (\BatchPolicy' {timeoutInSeconds} -> timeoutInSeconds) (\s@BatchPolicy' {} a -> s {timeoutInSeconds = a} :: BatchPolicy)++instance Data.FromJSON BatchPolicy where+ parseJSON =+ Data.withObject+ "BatchPolicy"+ ( \x ->+ BatchPolicy'+ Prelude.<$> (x Data..:? "maxConcurrency")+ Prelude.<*> (x Data..:? "timeoutInSeconds")+ )++instance Prelude.Hashable BatchPolicy where+ hashWithSalt _salt BatchPolicy' {..} =+ _salt+ `Prelude.hashWithSalt` maxConcurrency+ `Prelude.hashWithSalt` timeoutInSeconds++instance Prelude.NFData BatchPolicy where+ rnf BatchPolicy' {..} =+ Prelude.rnf maxConcurrency+ `Prelude.seq` Prelude.rnf timeoutInSeconds++instance Data.ToJSON BatchPolicy where+ toJSON BatchPolicy' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("maxConcurrency" Data..=)+ Prelude.<$> maxConcurrency,+ ("timeoutInSeconds" Data..=)+ Prelude.<$> timeoutInSeconds+ ]+ )
+ gen/Amazonka/RobOMaker/Types/Compute.hs view
@@ -0,0 +1,120 @@+{-# 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.RobOMaker.Types.Compute+-- 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.RobOMaker.Types.Compute where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import Amazonka.RobOMaker.Types.ComputeType++-- | Compute information for the simulation job.+--+-- /See:/ 'newCompute' smart constructor.+data Compute = Compute'+ { -- | Compute type information for the simulation job.+ computeType :: Prelude.Maybe ComputeType,+ -- | Compute GPU unit limit for the simulation job. It is the same as the+ -- number of GPUs allocated to the SimulationJob.+ gpuUnitLimit :: Prelude.Maybe Prelude.Natural,+ -- | The simulation unit limit. Your simulation is allocated CPU and memory+ -- proportional to the supplied simulation unit limit. A simulation unit is+ -- 1 vcpu and 2GB of memory. You are only billed for the SU utilization you+ -- consume up to the maximum value provided. The default is 15.+ simulationUnitLimit :: Prelude.Maybe Prelude.Natural+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Compute' 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:+--+-- 'computeType', 'compute_computeType' - Compute type information for the simulation job.+--+-- 'gpuUnitLimit', 'compute_gpuUnitLimit' - Compute GPU unit limit for the simulation job. It is the same as the+-- number of GPUs allocated to the SimulationJob.+--+-- 'simulationUnitLimit', 'compute_simulationUnitLimit' - The simulation unit limit. Your simulation is allocated CPU and memory+-- proportional to the supplied simulation unit limit. A simulation unit is+-- 1 vcpu and 2GB of memory. You are only billed for the SU utilization you+-- consume up to the maximum value provided. The default is 15.+newCompute ::+ Compute+newCompute =+ Compute'+ { computeType = Prelude.Nothing,+ gpuUnitLimit = Prelude.Nothing,+ simulationUnitLimit = Prelude.Nothing+ }++-- | Compute type information for the simulation job.+compute_computeType :: Lens.Lens' Compute (Prelude.Maybe ComputeType)+compute_computeType = Lens.lens (\Compute' {computeType} -> computeType) (\s@Compute' {} a -> s {computeType = a} :: Compute)++-- | Compute GPU unit limit for the simulation job. It is the same as the+-- number of GPUs allocated to the SimulationJob.+compute_gpuUnitLimit :: Lens.Lens' Compute (Prelude.Maybe Prelude.Natural)+compute_gpuUnitLimit = Lens.lens (\Compute' {gpuUnitLimit} -> gpuUnitLimit) (\s@Compute' {} a -> s {gpuUnitLimit = a} :: Compute)++-- | The simulation unit limit. Your simulation is allocated CPU and memory+-- proportional to the supplied simulation unit limit. A simulation unit is+-- 1 vcpu and 2GB of memory. You are only billed for the SU utilization you+-- consume up to the maximum value provided. The default is 15.+compute_simulationUnitLimit :: Lens.Lens' Compute (Prelude.Maybe Prelude.Natural)+compute_simulationUnitLimit = Lens.lens (\Compute' {simulationUnitLimit} -> simulationUnitLimit) (\s@Compute' {} a -> s {simulationUnitLimit = a} :: Compute)++instance Data.FromJSON Compute where+ parseJSON =+ Data.withObject+ "Compute"+ ( \x ->+ Compute'+ Prelude.<$> (x Data..:? "computeType")+ Prelude.<*> (x Data..:? "gpuUnitLimit")+ Prelude.<*> (x Data..:? "simulationUnitLimit")+ )++instance Prelude.Hashable Compute where+ hashWithSalt _salt Compute' {..} =+ _salt+ `Prelude.hashWithSalt` computeType+ `Prelude.hashWithSalt` gpuUnitLimit+ `Prelude.hashWithSalt` simulationUnitLimit++instance Prelude.NFData Compute where+ rnf Compute' {..} =+ Prelude.rnf computeType+ `Prelude.seq` Prelude.rnf gpuUnitLimit+ `Prelude.seq` Prelude.rnf simulationUnitLimit++instance Data.ToJSON Compute where+ toJSON Compute' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("computeType" Data..=) Prelude.<$> computeType,+ ("gpuUnitLimit" Data..=) Prelude.<$> gpuUnitLimit,+ ("simulationUnitLimit" Data..=)+ Prelude.<$> simulationUnitLimit+ ]+ )
+ gen/Amazonka/RobOMaker/Types/ComputeResponse.hs view
@@ -0,0 +1,109 @@+{-# 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.RobOMaker.Types.ComputeResponse+-- 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.RobOMaker.Types.ComputeResponse where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import Amazonka.RobOMaker.Types.ComputeType++-- | Compute information for the simulation job+--+-- /See:/ 'newComputeResponse' smart constructor.+data ComputeResponse = ComputeResponse'+ { -- | Compute type response information for the simulation job.+ computeType :: Prelude.Maybe ComputeType,+ -- | Compute GPU unit limit for the simulation job. It is the same as the+ -- number of GPUs allocated to the SimulationJob.+ gpuUnitLimit :: Prelude.Maybe Prelude.Natural,+ -- | The simulation unit limit. Your simulation is allocated CPU and memory+ -- proportional to the supplied simulation unit limit. A simulation unit is+ -- 1 vcpu and 2GB of memory. You are only billed for the SU utilization you+ -- consume up to the maximum value provided. The default is 15.+ simulationUnitLimit :: Prelude.Maybe Prelude.Natural+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ComputeResponse' 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:+--+-- 'computeType', 'computeResponse_computeType' - Compute type response information for the simulation job.+--+-- 'gpuUnitLimit', 'computeResponse_gpuUnitLimit' - Compute GPU unit limit for the simulation job. It is the same as the+-- number of GPUs allocated to the SimulationJob.+--+-- 'simulationUnitLimit', 'computeResponse_simulationUnitLimit' - The simulation unit limit. Your simulation is allocated CPU and memory+-- proportional to the supplied simulation unit limit. A simulation unit is+-- 1 vcpu and 2GB of memory. You are only billed for the SU utilization you+-- consume up to the maximum value provided. The default is 15.+newComputeResponse ::+ ComputeResponse+newComputeResponse =+ ComputeResponse'+ { computeType = Prelude.Nothing,+ gpuUnitLimit = Prelude.Nothing,+ simulationUnitLimit = Prelude.Nothing+ }++-- | Compute type response information for the simulation job.+computeResponse_computeType :: Lens.Lens' ComputeResponse (Prelude.Maybe ComputeType)+computeResponse_computeType = Lens.lens (\ComputeResponse' {computeType} -> computeType) (\s@ComputeResponse' {} a -> s {computeType = a} :: ComputeResponse)++-- | Compute GPU unit limit for the simulation job. It is the same as the+-- number of GPUs allocated to the SimulationJob.+computeResponse_gpuUnitLimit :: Lens.Lens' ComputeResponse (Prelude.Maybe Prelude.Natural)+computeResponse_gpuUnitLimit = Lens.lens (\ComputeResponse' {gpuUnitLimit} -> gpuUnitLimit) (\s@ComputeResponse' {} a -> s {gpuUnitLimit = a} :: ComputeResponse)++-- | The simulation unit limit. Your simulation is allocated CPU and memory+-- proportional to the supplied simulation unit limit. A simulation unit is+-- 1 vcpu and 2GB of memory. You are only billed for the SU utilization you+-- consume up to the maximum value provided. The default is 15.+computeResponse_simulationUnitLimit :: Lens.Lens' ComputeResponse (Prelude.Maybe Prelude.Natural)+computeResponse_simulationUnitLimit = Lens.lens (\ComputeResponse' {simulationUnitLimit} -> simulationUnitLimit) (\s@ComputeResponse' {} a -> s {simulationUnitLimit = a} :: ComputeResponse)++instance Data.FromJSON ComputeResponse where+ parseJSON =+ Data.withObject+ "ComputeResponse"+ ( \x ->+ ComputeResponse'+ Prelude.<$> (x Data..:? "computeType")+ Prelude.<*> (x Data..:? "gpuUnitLimit")+ Prelude.<*> (x Data..:? "simulationUnitLimit")+ )++instance Prelude.Hashable ComputeResponse where+ hashWithSalt _salt ComputeResponse' {..} =+ _salt+ `Prelude.hashWithSalt` computeType+ `Prelude.hashWithSalt` gpuUnitLimit+ `Prelude.hashWithSalt` simulationUnitLimit++instance Prelude.NFData ComputeResponse where+ rnf ComputeResponse' {..} =+ Prelude.rnf computeType+ `Prelude.seq` Prelude.rnf gpuUnitLimit+ `Prelude.seq` Prelude.rnf simulationUnitLimit
+ gen/Amazonka/RobOMaker/Types/ComputeType.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.RobOMaker.Types.ComputeType+-- 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.RobOMaker.Types.ComputeType+ ( ComputeType+ ( ..,+ ComputeType_CPU,+ ComputeType_GPU_AND_CPU+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ComputeType = ComputeType'+ { fromComputeType ::+ 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 ComputeType_CPU :: ComputeType+pattern ComputeType_CPU = ComputeType' "CPU"++pattern ComputeType_GPU_AND_CPU :: ComputeType+pattern ComputeType_GPU_AND_CPU = ComputeType' "GPU_AND_CPU"++{-# COMPLETE+ ComputeType_CPU,+ ComputeType_GPU_AND_CPU,+ ComputeType'+ #-}
+ gen/Amazonka/RobOMaker/Types/DataSource.hs view
@@ -0,0 +1,170 @@+{-# 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.RobOMaker.Types.DataSource+-- 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.RobOMaker.Types.DataSource where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import Amazonka.RobOMaker.Types.DataSourceType+import Amazonka.RobOMaker.Types.S3KeyOutput++-- | Information about a data source.+--+-- /See:/ 'newDataSource' smart constructor.+data DataSource = DataSource'+ { -- | The location where your files are mounted in the container image.+ --+ -- If you\'ve specified the @type@ of the data source as an @Archive@, you+ -- must provide an Amazon S3 object key to your archive. The object key+ -- must point to either a @.zip@ or @.tar.gz@ file.+ --+ -- If you\'ve specified the @type@ of the data source as a @Prefix@, you+ -- provide the Amazon S3 prefix that points to the files that you are using+ -- for your data source.+ --+ -- If you\'ve specified the @type@ of the data source as a @File@, you+ -- provide the Amazon S3 path to the file that you\'re using as your data+ -- source.+ destination :: Prelude.Maybe Prelude.Text,+ -- | The name of the data source.+ name :: Prelude.Maybe Prelude.Text,+ -- | The S3 bucket where the data files are located.+ s3Bucket :: Prelude.Maybe Prelude.Text,+ -- | The list of S3 keys identifying the data source files.+ s3Keys :: Prelude.Maybe [S3KeyOutput],+ -- | The data type for the data source that you\'re using for your container+ -- image or simulation job. You can use this field to specify whether your+ -- data source is an Archive, an Amazon S3 prefix, or a file.+ --+ -- If you don\'t specify a field, the default value is @File@.+ type' :: Prelude.Maybe DataSourceType+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DataSource' 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:+--+-- 'destination', 'dataSource_destination' - The location where your files are mounted in the container image.+--+-- If you\'ve specified the @type@ of the data source as an @Archive@, you+-- must provide an Amazon S3 object key to your archive. The object key+-- must point to either a @.zip@ or @.tar.gz@ file.+--+-- If you\'ve specified the @type@ of the data source as a @Prefix@, you+-- provide the Amazon S3 prefix that points to the files that you are using+-- for your data source.+--+-- If you\'ve specified the @type@ of the data source as a @File@, you+-- provide the Amazon S3 path to the file that you\'re using as your data+-- source.+--+-- 'name', 'dataSource_name' - The name of the data source.+--+-- 's3Bucket', 'dataSource_s3Bucket' - The S3 bucket where the data files are located.+--+-- 's3Keys', 'dataSource_s3Keys' - The list of S3 keys identifying the data source files.+--+-- 'type'', 'dataSource_type' - The data type for the data source that you\'re using for your container+-- image or simulation job. You can use this field to specify whether your+-- data source is an Archive, an Amazon S3 prefix, or a file.+--+-- If you don\'t specify a field, the default value is @File@.+newDataSource ::+ DataSource+newDataSource =+ DataSource'+ { destination = Prelude.Nothing,+ name = Prelude.Nothing,+ s3Bucket = Prelude.Nothing,+ s3Keys = Prelude.Nothing,+ type' = Prelude.Nothing+ }++-- | The location where your files are mounted in the container image.+--+-- If you\'ve specified the @type@ of the data source as an @Archive@, you+-- must provide an Amazon S3 object key to your archive. The object key+-- must point to either a @.zip@ or @.tar.gz@ file.+--+-- If you\'ve specified the @type@ of the data source as a @Prefix@, you+-- provide the Amazon S3 prefix that points to the files that you are using+-- for your data source.+--+-- If you\'ve specified the @type@ of the data source as a @File@, you+-- provide the Amazon S3 path to the file that you\'re using as your data+-- source.+dataSource_destination :: Lens.Lens' DataSource (Prelude.Maybe Prelude.Text)+dataSource_destination = Lens.lens (\DataSource' {destination} -> destination) (\s@DataSource' {} a -> s {destination = a} :: DataSource)++-- | The name of the data source.+dataSource_name :: Lens.Lens' DataSource (Prelude.Maybe Prelude.Text)+dataSource_name = Lens.lens (\DataSource' {name} -> name) (\s@DataSource' {} a -> s {name = a} :: DataSource)++-- | The S3 bucket where the data files are located.+dataSource_s3Bucket :: Lens.Lens' DataSource (Prelude.Maybe Prelude.Text)+dataSource_s3Bucket = Lens.lens (\DataSource' {s3Bucket} -> s3Bucket) (\s@DataSource' {} a -> s {s3Bucket = a} :: DataSource)++-- | The list of S3 keys identifying the data source files.+dataSource_s3Keys :: Lens.Lens' DataSource (Prelude.Maybe [S3KeyOutput])+dataSource_s3Keys = Lens.lens (\DataSource' {s3Keys} -> s3Keys) (\s@DataSource' {} a -> s {s3Keys = a} :: DataSource) Prelude.. Lens.mapping Lens.coerced++-- | The data type for the data source that you\'re using for your container+-- image or simulation job. You can use this field to specify whether your+-- data source is an Archive, an Amazon S3 prefix, or a file.+--+-- If you don\'t specify a field, the default value is @File@.+dataSource_type :: Lens.Lens' DataSource (Prelude.Maybe DataSourceType)+dataSource_type = Lens.lens (\DataSource' {type'} -> type') (\s@DataSource' {} a -> s {type' = a} :: DataSource)++instance Data.FromJSON DataSource where+ parseJSON =+ Data.withObject+ "DataSource"+ ( \x ->+ DataSource'+ Prelude.<$> (x Data..:? "destination")+ Prelude.<*> (x Data..:? "name")+ Prelude.<*> (x Data..:? "s3Bucket")+ Prelude.<*> (x Data..:? "s3Keys" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "type")+ )++instance Prelude.Hashable DataSource where+ hashWithSalt _salt DataSource' {..} =+ _salt+ `Prelude.hashWithSalt` destination+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` s3Bucket+ `Prelude.hashWithSalt` s3Keys+ `Prelude.hashWithSalt` type'++instance Prelude.NFData DataSource where+ rnf DataSource' {..} =+ Prelude.rnf destination+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf s3Bucket+ `Prelude.seq` Prelude.rnf s3Keys+ `Prelude.seq` Prelude.rnf type'
+ gen/Amazonka/RobOMaker/Types/DataSourceConfig.hs view
@@ -0,0 +1,187 @@+{-# 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.RobOMaker.Types.DataSourceConfig+-- 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.RobOMaker.Types.DataSourceConfig where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import Amazonka.RobOMaker.Types.DataSourceType++-- | Information about a data source.+--+-- /See:/ 'newDataSourceConfig' smart constructor.+data DataSourceConfig = DataSourceConfig'+ { -- | The location where your files are mounted in the container image.+ --+ -- If you\'ve specified the @type@ of the data source as an @Archive@, you+ -- must provide an Amazon S3 object key to your archive. The object key+ -- must point to either a @.zip@ or @.tar.gz@ file.+ --+ -- If you\'ve specified the @type@ of the data source as a @Prefix@, you+ -- provide the Amazon S3 prefix that points to the files that you are using+ -- for your data source.+ --+ -- If you\'ve specified the @type@ of the data source as a @File@, you+ -- provide the Amazon S3 path to the file that you\'re using as your data+ -- source.+ destination :: Prelude.Maybe Prelude.Text,+ -- | The data type for the data source that you\'re using for your container+ -- image or simulation job. You can use this field to specify whether your+ -- data source is an Archive, an Amazon S3 prefix, or a file.+ --+ -- If you don\'t specify a field, the default value is @File@.+ type' :: Prelude.Maybe DataSourceType,+ -- | The name of the data source.+ name :: Prelude.Text,+ -- | The S3 bucket where the data files are located.+ s3Bucket :: Prelude.Text,+ -- | The list of S3 keys identifying the data source files.+ s3Keys :: Prelude.NonEmpty Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DataSourceConfig' 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:+--+-- 'destination', 'dataSourceConfig_destination' - The location where your files are mounted in the container image.+--+-- If you\'ve specified the @type@ of the data source as an @Archive@, you+-- must provide an Amazon S3 object key to your archive. The object key+-- must point to either a @.zip@ or @.tar.gz@ file.+--+-- If you\'ve specified the @type@ of the data source as a @Prefix@, you+-- provide the Amazon S3 prefix that points to the files that you are using+-- for your data source.+--+-- If you\'ve specified the @type@ of the data source as a @File@, you+-- provide the Amazon S3 path to the file that you\'re using as your data+-- source.+--+-- 'type'', 'dataSourceConfig_type' - The data type for the data source that you\'re using for your container+-- image or simulation job. You can use this field to specify whether your+-- data source is an Archive, an Amazon S3 prefix, or a file.+--+-- If you don\'t specify a field, the default value is @File@.+--+-- 'name', 'dataSourceConfig_name' - The name of the data source.+--+-- 's3Bucket', 'dataSourceConfig_s3Bucket' - The S3 bucket where the data files are located.+--+-- 's3Keys', 'dataSourceConfig_s3Keys' - The list of S3 keys identifying the data source files.+newDataSourceConfig ::+ -- | 'name'+ Prelude.Text ->+ -- | 's3Bucket'+ Prelude.Text ->+ -- | 's3Keys'+ Prelude.NonEmpty Prelude.Text ->+ DataSourceConfig+newDataSourceConfig pName_ pS3Bucket_ pS3Keys_ =+ DataSourceConfig'+ { destination = Prelude.Nothing,+ type' = Prelude.Nothing,+ name = pName_,+ s3Bucket = pS3Bucket_,+ s3Keys = Lens.coerced Lens.# pS3Keys_+ }++-- | The location where your files are mounted in the container image.+--+-- If you\'ve specified the @type@ of the data source as an @Archive@, you+-- must provide an Amazon S3 object key to your archive. The object key+-- must point to either a @.zip@ or @.tar.gz@ file.+--+-- If you\'ve specified the @type@ of the data source as a @Prefix@, you+-- provide the Amazon S3 prefix that points to the files that you are using+-- for your data source.+--+-- If you\'ve specified the @type@ of the data source as a @File@, you+-- provide the Amazon S3 path to the file that you\'re using as your data+-- source.+dataSourceConfig_destination :: Lens.Lens' DataSourceConfig (Prelude.Maybe Prelude.Text)+dataSourceConfig_destination = Lens.lens (\DataSourceConfig' {destination} -> destination) (\s@DataSourceConfig' {} a -> s {destination = a} :: DataSourceConfig)++-- | The data type for the data source that you\'re using for your container+-- image or simulation job. You can use this field to specify whether your+-- data source is an Archive, an Amazon S3 prefix, or a file.+--+-- If you don\'t specify a field, the default value is @File@.+dataSourceConfig_type :: Lens.Lens' DataSourceConfig (Prelude.Maybe DataSourceType)+dataSourceConfig_type = Lens.lens (\DataSourceConfig' {type'} -> type') (\s@DataSourceConfig' {} a -> s {type' = a} :: DataSourceConfig)++-- | The name of the data source.+dataSourceConfig_name :: Lens.Lens' DataSourceConfig Prelude.Text+dataSourceConfig_name = Lens.lens (\DataSourceConfig' {name} -> name) (\s@DataSourceConfig' {} a -> s {name = a} :: DataSourceConfig)++-- | The S3 bucket where the data files are located.+dataSourceConfig_s3Bucket :: Lens.Lens' DataSourceConfig Prelude.Text+dataSourceConfig_s3Bucket = Lens.lens (\DataSourceConfig' {s3Bucket} -> s3Bucket) (\s@DataSourceConfig' {} a -> s {s3Bucket = a} :: DataSourceConfig)++-- | The list of S3 keys identifying the data source files.+dataSourceConfig_s3Keys :: Lens.Lens' DataSourceConfig (Prelude.NonEmpty Prelude.Text)+dataSourceConfig_s3Keys = Lens.lens (\DataSourceConfig' {s3Keys} -> s3Keys) (\s@DataSourceConfig' {} a -> s {s3Keys = a} :: DataSourceConfig) Prelude.. Lens.coerced++instance Data.FromJSON DataSourceConfig where+ parseJSON =+ Data.withObject+ "DataSourceConfig"+ ( \x ->+ DataSourceConfig'+ Prelude.<$> (x Data..:? "destination")+ Prelude.<*> (x Data..:? "type")+ Prelude.<*> (x Data..: "name")+ Prelude.<*> (x Data..: "s3Bucket")+ Prelude.<*> (x Data..: "s3Keys")+ )++instance Prelude.Hashable DataSourceConfig where+ hashWithSalt _salt DataSourceConfig' {..} =+ _salt+ `Prelude.hashWithSalt` destination+ `Prelude.hashWithSalt` type'+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` s3Bucket+ `Prelude.hashWithSalt` s3Keys++instance Prelude.NFData DataSourceConfig where+ rnf DataSourceConfig' {..} =+ Prelude.rnf destination+ `Prelude.seq` Prelude.rnf type'+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf s3Bucket+ `Prelude.seq` Prelude.rnf s3Keys++instance Data.ToJSON DataSourceConfig where+ toJSON DataSourceConfig' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("destination" Data..=) Prelude.<$> destination,+ ("type" Data..=) Prelude.<$> type',+ Prelude.Just ("name" Data..= name),+ Prelude.Just ("s3Bucket" Data..= s3Bucket),+ Prelude.Just ("s3Keys" Data..= s3Keys)+ ]+ )
+ gen/Amazonka/RobOMaker/Types/DataSourceType.hs view
@@ -0,0 +1,76 @@+{-# 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.RobOMaker.Types.DataSourceType+-- 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.RobOMaker.Types.DataSourceType+ ( DataSourceType+ ( ..,+ DataSourceType_Archive,+ DataSourceType_File,+ DataSourceType_Prefix+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype DataSourceType = DataSourceType'+ { fromDataSourceType ::+ 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 DataSourceType_Archive :: DataSourceType+pattern DataSourceType_Archive = DataSourceType' "Archive"++pattern DataSourceType_File :: DataSourceType+pattern DataSourceType_File = DataSourceType' "File"++pattern DataSourceType_Prefix :: DataSourceType+pattern DataSourceType_Prefix = DataSourceType' "Prefix"++{-# COMPLETE+ DataSourceType_Archive,+ DataSourceType_File,+ DataSourceType_Prefix,+ DataSourceType'+ #-}
+ gen/Amazonka/RobOMaker/Types/Environment.hs view
@@ -0,0 +1,70 @@+{-# 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.RobOMaker.Types.Environment+-- 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.RobOMaker.Types.Environment 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 object that contains the Docker image URI for either your robot or+-- simulation applications.+--+-- /See:/ 'newEnvironment' smart constructor.+data Environment = Environment'+ { -- | The Docker image URI for either your robot or simulation applications.+ uri :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Environment' 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:+--+-- 'uri', 'environment_uri' - The Docker image URI for either your robot or simulation applications.+newEnvironment ::+ Environment+newEnvironment = Environment' {uri = Prelude.Nothing}++-- | The Docker image URI for either your robot or simulation applications.+environment_uri :: Lens.Lens' Environment (Prelude.Maybe Prelude.Text)+environment_uri = Lens.lens (\Environment' {uri} -> uri) (\s@Environment' {} a -> s {uri = a} :: Environment)++instance Data.FromJSON Environment where+ parseJSON =+ Data.withObject+ "Environment"+ (\x -> Environment' Prelude.<$> (x Data..:? "uri"))++instance Prelude.Hashable Environment where+ hashWithSalt _salt Environment' {..} =+ _salt `Prelude.hashWithSalt` uri++instance Prelude.NFData Environment where+ rnf Environment' {..} = Prelude.rnf uri++instance Data.ToJSON Environment where+ toJSON Environment' {..} =+ Data.object+ (Prelude.catMaybes [("uri" Data..=) Prelude.<$> uri])
+ gen/Amazonka/RobOMaker/Types/ExitBehavior.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.RobOMaker.Types.ExitBehavior+-- 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.RobOMaker.Types.ExitBehavior+ ( ExitBehavior+ ( ..,+ ExitBehavior_FAIL,+ ExitBehavior_RESTART+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ExitBehavior = ExitBehavior'+ { fromExitBehavior ::+ 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 ExitBehavior_FAIL :: ExitBehavior+pattern ExitBehavior_FAIL = ExitBehavior' "FAIL"++pattern ExitBehavior_RESTART :: ExitBehavior+pattern ExitBehavior_RESTART = ExitBehavior' "RESTART"++{-# COMPLETE+ ExitBehavior_FAIL,+ ExitBehavior_RESTART,+ ExitBehavior'+ #-}
+ gen/Amazonka/RobOMaker/Types/FailedCreateSimulationJobRequest.hs view
@@ -0,0 +1,125 @@+{-# 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.RobOMaker.Types.FailedCreateSimulationJobRequest+-- 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.RobOMaker.Types.FailedCreateSimulationJobRequest where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import Amazonka.RobOMaker.Types.SimulationJobErrorCode+import Amazonka.RobOMaker.Types.SimulationJobRequest++-- | Information about a failed create simulation job request.+--+-- /See:/ 'newFailedCreateSimulationJobRequest' smart constructor.+data FailedCreateSimulationJobRequest = FailedCreateSimulationJobRequest'+ { -- | The time, in milliseconds since the epoch, when the simulation job batch+ -- failed.+ failedAt :: Prelude.Maybe Data.POSIX,+ -- | The failure code.+ failureCode :: Prelude.Maybe SimulationJobErrorCode,+ -- | The failure reason of the simulation job request.+ failureReason :: Prelude.Maybe Prelude.Text,+ -- | The simulation job request.+ request :: Prelude.Maybe SimulationJobRequest+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'FailedCreateSimulationJobRequest' 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:+--+-- 'failedAt', 'failedCreateSimulationJobRequest_failedAt' - The time, in milliseconds since the epoch, when the simulation job batch+-- failed.+--+-- 'failureCode', 'failedCreateSimulationJobRequest_failureCode' - The failure code.+--+-- 'failureReason', 'failedCreateSimulationJobRequest_failureReason' - The failure reason of the simulation job request.+--+-- 'request', 'failedCreateSimulationJobRequest_request' - The simulation job request.+newFailedCreateSimulationJobRequest ::+ FailedCreateSimulationJobRequest+newFailedCreateSimulationJobRequest =+ FailedCreateSimulationJobRequest'+ { failedAt =+ Prelude.Nothing,+ failureCode = Prelude.Nothing,+ failureReason = Prelude.Nothing,+ request = Prelude.Nothing+ }++-- | The time, in milliseconds since the epoch, when the simulation job batch+-- failed.+failedCreateSimulationJobRequest_failedAt :: Lens.Lens' FailedCreateSimulationJobRequest (Prelude.Maybe Prelude.UTCTime)+failedCreateSimulationJobRequest_failedAt = Lens.lens (\FailedCreateSimulationJobRequest' {failedAt} -> failedAt) (\s@FailedCreateSimulationJobRequest' {} a -> s {failedAt = a} :: FailedCreateSimulationJobRequest) Prelude.. Lens.mapping Data._Time++-- | The failure code.+failedCreateSimulationJobRequest_failureCode :: Lens.Lens' FailedCreateSimulationJobRequest (Prelude.Maybe SimulationJobErrorCode)+failedCreateSimulationJobRequest_failureCode = Lens.lens (\FailedCreateSimulationJobRequest' {failureCode} -> failureCode) (\s@FailedCreateSimulationJobRequest' {} a -> s {failureCode = a} :: FailedCreateSimulationJobRequest)++-- | The failure reason of the simulation job request.+failedCreateSimulationJobRequest_failureReason :: Lens.Lens' FailedCreateSimulationJobRequest (Prelude.Maybe Prelude.Text)+failedCreateSimulationJobRequest_failureReason = Lens.lens (\FailedCreateSimulationJobRequest' {failureReason} -> failureReason) (\s@FailedCreateSimulationJobRequest' {} a -> s {failureReason = a} :: FailedCreateSimulationJobRequest)++-- | The simulation job request.+failedCreateSimulationJobRequest_request :: Lens.Lens' FailedCreateSimulationJobRequest (Prelude.Maybe SimulationJobRequest)+failedCreateSimulationJobRequest_request = Lens.lens (\FailedCreateSimulationJobRequest' {request} -> request) (\s@FailedCreateSimulationJobRequest' {} a -> s {request = a} :: FailedCreateSimulationJobRequest)++instance+ Data.FromJSON+ FailedCreateSimulationJobRequest+ where+ parseJSON =+ Data.withObject+ "FailedCreateSimulationJobRequest"+ ( \x ->+ FailedCreateSimulationJobRequest'+ Prelude.<$> (x Data..:? "failedAt")+ Prelude.<*> (x Data..:? "failureCode")+ Prelude.<*> (x Data..:? "failureReason")+ Prelude.<*> (x Data..:? "request")+ )++instance+ Prelude.Hashable+ FailedCreateSimulationJobRequest+ where+ hashWithSalt+ _salt+ FailedCreateSimulationJobRequest' {..} =+ _salt+ `Prelude.hashWithSalt` failedAt+ `Prelude.hashWithSalt` failureCode+ `Prelude.hashWithSalt` failureReason+ `Prelude.hashWithSalt` request++instance+ Prelude.NFData+ FailedCreateSimulationJobRequest+ where+ rnf FailedCreateSimulationJobRequest' {..} =+ Prelude.rnf failedAt+ `Prelude.seq` Prelude.rnf failureCode+ `Prelude.seq` Prelude.rnf failureReason+ `Prelude.seq` Prelude.rnf request
+ gen/Amazonka/RobOMaker/Types/FailureBehavior.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.RobOMaker.Types.FailureBehavior+-- 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.RobOMaker.Types.FailureBehavior+ ( FailureBehavior+ ( ..,+ FailureBehavior_Continue,+ FailureBehavior_Fail+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype FailureBehavior = FailureBehavior'+ { fromFailureBehavior ::+ 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 FailureBehavior_Continue :: FailureBehavior+pattern FailureBehavior_Continue = FailureBehavior' "Continue"++pattern FailureBehavior_Fail :: FailureBehavior+pattern FailureBehavior_Fail = FailureBehavior' "Fail"++{-# COMPLETE+ FailureBehavior_Continue,+ FailureBehavior_Fail,+ FailureBehavior'+ #-}
+ gen/Amazonka/RobOMaker/Types/FailureSummary.hs view
@@ -0,0 +1,85 @@+{-# 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.RobOMaker.Types.FailureSummary+-- 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.RobOMaker.Types.FailureSummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import Amazonka.RobOMaker.Types.WorldFailure++-- | Information about worlds that failed.+--+-- /See:/ 'newFailureSummary' smart constructor.+data FailureSummary = FailureSummary'+ { -- | The worlds that failed.+ failures :: Prelude.Maybe [WorldFailure],+ -- | The total number of failures.+ totalFailureCount :: Prelude.Maybe Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'FailureSummary' 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:+--+-- 'failures', 'failureSummary_failures' - The worlds that failed.+--+-- 'totalFailureCount', 'failureSummary_totalFailureCount' - The total number of failures.+newFailureSummary ::+ FailureSummary+newFailureSummary =+ FailureSummary'+ { failures = Prelude.Nothing,+ totalFailureCount = Prelude.Nothing+ }++-- | The worlds that failed.+failureSummary_failures :: Lens.Lens' FailureSummary (Prelude.Maybe [WorldFailure])+failureSummary_failures = Lens.lens (\FailureSummary' {failures} -> failures) (\s@FailureSummary' {} a -> s {failures = a} :: FailureSummary) Prelude.. Lens.mapping Lens.coerced++-- | The total number of failures.+failureSummary_totalFailureCount :: Lens.Lens' FailureSummary (Prelude.Maybe Prelude.Int)+failureSummary_totalFailureCount = Lens.lens (\FailureSummary' {totalFailureCount} -> totalFailureCount) (\s@FailureSummary' {} a -> s {totalFailureCount = a} :: FailureSummary)++instance Data.FromJSON FailureSummary where+ parseJSON =+ Data.withObject+ "FailureSummary"+ ( \x ->+ FailureSummary'+ Prelude.<$> (x Data..:? "failures" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "totalFailureCount")+ )++instance Prelude.Hashable FailureSummary where+ hashWithSalt _salt FailureSummary' {..} =+ _salt+ `Prelude.hashWithSalt` failures+ `Prelude.hashWithSalt` totalFailureCount++instance Prelude.NFData FailureSummary where+ rnf FailureSummary' {..} =+ Prelude.rnf failures+ `Prelude.seq` Prelude.rnf totalFailureCount
+ gen/Amazonka/RobOMaker/Types/Filter.hs view
@@ -0,0 +1,82 @@+{-# 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.RobOMaker.Types.Filter+-- 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.RobOMaker.Types.Filter 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++-- | Information about a filter.+--+-- /See:/ 'newFilter' smart constructor.+data Filter = Filter'+ { -- | The name of the filter.+ name :: Prelude.Maybe Prelude.Text,+ -- | A list of values.+ values :: Prelude.Maybe (Prelude.NonEmpty Prelude.Text)+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Filter' 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:+--+-- 'name', 'filter_name' - The name of the filter.+--+-- 'values', 'filter_values' - A list of values.+newFilter ::+ Filter+newFilter =+ Filter'+ { name = Prelude.Nothing,+ values = Prelude.Nothing+ }++-- | The name of the filter.+filter_name :: Lens.Lens' Filter (Prelude.Maybe Prelude.Text)+filter_name = Lens.lens (\Filter' {name} -> name) (\s@Filter' {} a -> s {name = a} :: Filter)++-- | A list of values.+filter_values :: Lens.Lens' Filter (Prelude.Maybe (Prelude.NonEmpty Prelude.Text))+filter_values = Lens.lens (\Filter' {values} -> values) (\s@Filter' {} a -> s {values = a} :: Filter) Prelude.. Lens.mapping Lens.coerced++instance Prelude.Hashable Filter where+ hashWithSalt _salt Filter' {..} =+ _salt+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` values++instance Prelude.NFData Filter where+ rnf Filter' {..} =+ Prelude.rnf name `Prelude.seq` Prelude.rnf values++instance Data.ToJSON Filter where+ toJSON Filter' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("name" Data..=) Prelude.<$> name,+ ("values" Data..=) Prelude.<$> values+ ]+ )
+ gen/Amazonka/RobOMaker/Types/FinishedWorldsSummary.hs view
@@ -0,0 +1,98 @@+{-# 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.RobOMaker.Types.FinishedWorldsSummary+-- 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.RobOMaker.Types.FinishedWorldsSummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import Amazonka.RobOMaker.Types.FailureSummary++-- | Information about worlds that finished.+--+-- /See:/ 'newFinishedWorldsSummary' smart constructor.+data FinishedWorldsSummary = FinishedWorldsSummary'+ { -- | Information about worlds that failed.+ failureSummary :: Prelude.Maybe FailureSummary,+ -- | The total number of finished worlds.+ finishedCount :: Prelude.Maybe Prelude.Int,+ -- | A list of worlds that succeeded.+ succeededWorlds :: Prelude.Maybe (Prelude.NonEmpty Prelude.Text)+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'FinishedWorldsSummary' 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:+--+-- 'failureSummary', 'finishedWorldsSummary_failureSummary' - Information about worlds that failed.+--+-- 'finishedCount', 'finishedWorldsSummary_finishedCount' - The total number of finished worlds.+--+-- 'succeededWorlds', 'finishedWorldsSummary_succeededWorlds' - A list of worlds that succeeded.+newFinishedWorldsSummary ::+ FinishedWorldsSummary+newFinishedWorldsSummary =+ FinishedWorldsSummary'+ { failureSummary =+ Prelude.Nothing,+ finishedCount = Prelude.Nothing,+ succeededWorlds = Prelude.Nothing+ }++-- | Information about worlds that failed.+finishedWorldsSummary_failureSummary :: Lens.Lens' FinishedWorldsSummary (Prelude.Maybe FailureSummary)+finishedWorldsSummary_failureSummary = Lens.lens (\FinishedWorldsSummary' {failureSummary} -> failureSummary) (\s@FinishedWorldsSummary' {} a -> s {failureSummary = a} :: FinishedWorldsSummary)++-- | The total number of finished worlds.+finishedWorldsSummary_finishedCount :: Lens.Lens' FinishedWorldsSummary (Prelude.Maybe Prelude.Int)+finishedWorldsSummary_finishedCount = Lens.lens (\FinishedWorldsSummary' {finishedCount} -> finishedCount) (\s@FinishedWorldsSummary' {} a -> s {finishedCount = a} :: FinishedWorldsSummary)++-- | A list of worlds that succeeded.+finishedWorldsSummary_succeededWorlds :: Lens.Lens' FinishedWorldsSummary (Prelude.Maybe (Prelude.NonEmpty Prelude.Text))+finishedWorldsSummary_succeededWorlds = Lens.lens (\FinishedWorldsSummary' {succeededWorlds} -> succeededWorlds) (\s@FinishedWorldsSummary' {} a -> s {succeededWorlds = a} :: FinishedWorldsSummary) Prelude.. Lens.mapping Lens.coerced++instance Data.FromJSON FinishedWorldsSummary where+ parseJSON =+ Data.withObject+ "FinishedWorldsSummary"+ ( \x ->+ FinishedWorldsSummary'+ Prelude.<$> (x Data..:? "failureSummary")+ Prelude.<*> (x Data..:? "finishedCount")+ Prelude.<*> (x Data..:? "succeededWorlds")+ )++instance Prelude.Hashable FinishedWorldsSummary where+ hashWithSalt _salt FinishedWorldsSummary' {..} =+ _salt+ `Prelude.hashWithSalt` failureSummary+ `Prelude.hashWithSalt` finishedCount+ `Prelude.hashWithSalt` succeededWorlds++instance Prelude.NFData FinishedWorldsSummary where+ rnf FinishedWorldsSummary' {..} =+ Prelude.rnf failureSummary+ `Prelude.seq` Prelude.rnf finishedCount+ `Prelude.seq` Prelude.rnf succeededWorlds
+ gen/Amazonka/RobOMaker/Types/LaunchConfig.hs view
@@ -0,0 +1,181 @@+{-# 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.RobOMaker.Types.LaunchConfig+-- 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.RobOMaker.Types.LaunchConfig where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import Amazonka.RobOMaker.Types.PortForwardingConfig++-- | Information about a launch configuration.+--+-- /See:/ 'newLaunchConfig' smart constructor.+data LaunchConfig = LaunchConfig'+ { -- | If you\'ve specified @General@ as the value for your+ -- @RobotSoftwareSuite@, you can use this field to specify a list of+ -- commands for your container image.+ --+ -- If you\'ve specified @SimulationRuntime@ as the value for your+ -- @SimulationSoftwareSuite@, you can use this field to specify a list of+ -- commands for your container image.+ command :: Prelude.Maybe [Prelude.Text],+ -- | The environment variables for the application launch.+ environmentVariables :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The launch file name.+ launchFile :: Prelude.Maybe Prelude.Text,+ -- | The package name.+ packageName :: Prelude.Maybe Prelude.Text,+ -- | The port forwarding configuration.+ portForwardingConfig :: Prelude.Maybe PortForwardingConfig,+ -- | Boolean indicating whether a streaming session will be configured for+ -- the application. If @True@, AWS RoboMaker will configure a connection so+ -- you can interact with your application as it is running in the+ -- simulation. You must configure and launch the component. It must have a+ -- graphical user interface.+ streamUI :: Prelude.Maybe Prelude.Bool+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'LaunchConfig' 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:+--+-- 'command', 'launchConfig_command' - If you\'ve specified @General@ as the value for your+-- @RobotSoftwareSuite@, you can use this field to specify a list of+-- commands for your container image.+--+-- If you\'ve specified @SimulationRuntime@ as the value for your+-- @SimulationSoftwareSuite@, you can use this field to specify a list of+-- commands for your container image.+--+-- 'environmentVariables', 'launchConfig_environmentVariables' - The environment variables for the application launch.+--+-- 'launchFile', 'launchConfig_launchFile' - The launch file name.+--+-- 'packageName', 'launchConfig_packageName' - The package name.+--+-- 'portForwardingConfig', 'launchConfig_portForwardingConfig' - The port forwarding configuration.+--+-- 'streamUI', 'launchConfig_streamUI' - Boolean indicating whether a streaming session will be configured for+-- the application. If @True@, AWS RoboMaker will configure a connection so+-- you can interact with your application as it is running in the+-- simulation. You must configure and launch the component. It must have a+-- graphical user interface.+newLaunchConfig ::+ LaunchConfig+newLaunchConfig =+ LaunchConfig'+ { command = Prelude.Nothing,+ environmentVariables = Prelude.Nothing,+ launchFile = Prelude.Nothing,+ packageName = Prelude.Nothing,+ portForwardingConfig = Prelude.Nothing,+ streamUI = Prelude.Nothing+ }++-- | If you\'ve specified @General@ as the value for your+-- @RobotSoftwareSuite@, you can use this field to specify a list of+-- commands for your container image.+--+-- If you\'ve specified @SimulationRuntime@ as the value for your+-- @SimulationSoftwareSuite@, you can use this field to specify a list of+-- commands for your container image.+launchConfig_command :: Lens.Lens' LaunchConfig (Prelude.Maybe [Prelude.Text])+launchConfig_command = Lens.lens (\LaunchConfig' {command} -> command) (\s@LaunchConfig' {} a -> s {command = a} :: LaunchConfig) Prelude.. Lens.mapping Lens.coerced++-- | The environment variables for the application launch.+launchConfig_environmentVariables :: Lens.Lens' LaunchConfig (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+launchConfig_environmentVariables = Lens.lens (\LaunchConfig' {environmentVariables} -> environmentVariables) (\s@LaunchConfig' {} a -> s {environmentVariables = a} :: LaunchConfig) Prelude.. Lens.mapping Lens.coerced++-- | The launch file name.+launchConfig_launchFile :: Lens.Lens' LaunchConfig (Prelude.Maybe Prelude.Text)+launchConfig_launchFile = Lens.lens (\LaunchConfig' {launchFile} -> launchFile) (\s@LaunchConfig' {} a -> s {launchFile = a} :: LaunchConfig)++-- | The package name.+launchConfig_packageName :: Lens.Lens' LaunchConfig (Prelude.Maybe Prelude.Text)+launchConfig_packageName = Lens.lens (\LaunchConfig' {packageName} -> packageName) (\s@LaunchConfig' {} a -> s {packageName = a} :: LaunchConfig)++-- | The port forwarding configuration.+launchConfig_portForwardingConfig :: Lens.Lens' LaunchConfig (Prelude.Maybe PortForwardingConfig)+launchConfig_portForwardingConfig = Lens.lens (\LaunchConfig' {portForwardingConfig} -> portForwardingConfig) (\s@LaunchConfig' {} a -> s {portForwardingConfig = a} :: LaunchConfig)++-- | Boolean indicating whether a streaming session will be configured for+-- the application. If @True@, AWS RoboMaker will configure a connection so+-- you can interact with your application as it is running in the+-- simulation. You must configure and launch the component. It must have a+-- graphical user interface.+launchConfig_streamUI :: Lens.Lens' LaunchConfig (Prelude.Maybe Prelude.Bool)+launchConfig_streamUI = Lens.lens (\LaunchConfig' {streamUI} -> streamUI) (\s@LaunchConfig' {} a -> s {streamUI = a} :: LaunchConfig)++instance Data.FromJSON LaunchConfig where+ parseJSON =+ Data.withObject+ "LaunchConfig"+ ( \x ->+ LaunchConfig'+ Prelude.<$> (x Data..:? "command" Data..!= Prelude.mempty)+ Prelude.<*> ( x+ Data..:? "environmentVariables"+ Data..!= Prelude.mempty+ )+ Prelude.<*> (x Data..:? "launchFile")+ Prelude.<*> (x Data..:? "packageName")+ Prelude.<*> (x Data..:? "portForwardingConfig")+ Prelude.<*> (x Data..:? "streamUI")+ )++instance Prelude.Hashable LaunchConfig where+ hashWithSalt _salt LaunchConfig' {..} =+ _salt+ `Prelude.hashWithSalt` command+ `Prelude.hashWithSalt` environmentVariables+ `Prelude.hashWithSalt` launchFile+ `Prelude.hashWithSalt` packageName+ `Prelude.hashWithSalt` portForwardingConfig+ `Prelude.hashWithSalt` streamUI++instance Prelude.NFData LaunchConfig where+ rnf LaunchConfig' {..} =+ Prelude.rnf command+ `Prelude.seq` Prelude.rnf environmentVariables+ `Prelude.seq` Prelude.rnf launchFile+ `Prelude.seq` Prelude.rnf packageName+ `Prelude.seq` Prelude.rnf portForwardingConfig+ `Prelude.seq` Prelude.rnf streamUI++instance Data.ToJSON LaunchConfig where+ toJSON LaunchConfig' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("command" Data..=) Prelude.<$> command,+ ("environmentVariables" Data..=)+ Prelude.<$> environmentVariables,+ ("launchFile" Data..=) Prelude.<$> launchFile,+ ("packageName" Data..=) Prelude.<$> packageName,+ ("portForwardingConfig" Data..=)+ Prelude.<$> portForwardingConfig,+ ("streamUI" Data..=) Prelude.<$> streamUI+ ]+ )
+ gen/Amazonka/RobOMaker/Types/LoggingConfig.hs view
@@ -0,0 +1,87 @@+{-# 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.RobOMaker.Types.LoggingConfig+-- 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.RobOMaker.Types.LoggingConfig 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 logging configuration.+--+-- /See:/ 'newLoggingConfig' smart constructor.+data LoggingConfig = LoggingConfig'+ { -- | A boolean indicating whether to record all ROS topics.+ --+ -- This API is no longer supported and will throw an error if used.+ recordAllRosTopics :: Prelude.Maybe Prelude.Bool+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'LoggingConfig' 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:+--+-- 'recordAllRosTopics', 'loggingConfig_recordAllRosTopics' - A boolean indicating whether to record all ROS topics.+--+-- This API is no longer supported and will throw an error if used.+newLoggingConfig ::+ LoggingConfig+newLoggingConfig =+ LoggingConfig'+ { recordAllRosTopics =+ Prelude.Nothing+ }++-- | A boolean indicating whether to record all ROS topics.+--+-- This API is no longer supported and will throw an error if used.+loggingConfig_recordAllRosTopics :: Lens.Lens' LoggingConfig (Prelude.Maybe Prelude.Bool)+loggingConfig_recordAllRosTopics = Lens.lens (\LoggingConfig' {recordAllRosTopics} -> recordAllRosTopics) (\s@LoggingConfig' {} a -> s {recordAllRosTopics = a} :: LoggingConfig)++instance Data.FromJSON LoggingConfig where+ parseJSON =+ Data.withObject+ "LoggingConfig"+ ( \x ->+ LoggingConfig'+ Prelude.<$> (x Data..:? "recordAllRosTopics")+ )++instance Prelude.Hashable LoggingConfig where+ hashWithSalt _salt LoggingConfig' {..} =+ _salt `Prelude.hashWithSalt` recordAllRosTopics++instance Prelude.NFData LoggingConfig where+ rnf LoggingConfig' {..} =+ Prelude.rnf recordAllRosTopics++instance Data.ToJSON LoggingConfig where+ toJSON LoggingConfig' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("recordAllRosTopics" Data..=)+ Prelude.<$> recordAllRosTopics+ ]+ )
+ gen/Amazonka/RobOMaker/Types/NetworkInterface.hs view
@@ -0,0 +1,97 @@+{-# 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.RobOMaker.Types.NetworkInterface+-- 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.RobOMaker.Types.NetworkInterface 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++-- | Describes a network interface.+--+-- /See:/ 'newNetworkInterface' smart constructor.+data NetworkInterface = NetworkInterface'+ { -- | The ID of the network interface.+ networkInterfaceId :: Prelude.Maybe Prelude.Text,+ -- | The IPv4 address of the network interface within the subnet.+ privateIpAddress :: Prelude.Maybe Prelude.Text,+ -- | The IPv4 public address of the network interface.+ publicIpAddress :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'NetworkInterface' 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:+--+-- 'networkInterfaceId', 'networkInterface_networkInterfaceId' - The ID of the network interface.+--+-- 'privateIpAddress', 'networkInterface_privateIpAddress' - The IPv4 address of the network interface within the subnet.+--+-- 'publicIpAddress', 'networkInterface_publicIpAddress' - The IPv4 public address of the network interface.+newNetworkInterface ::+ NetworkInterface+newNetworkInterface =+ NetworkInterface'+ { networkInterfaceId =+ Prelude.Nothing,+ privateIpAddress = Prelude.Nothing,+ publicIpAddress = Prelude.Nothing+ }++-- | The ID of the network interface.+networkInterface_networkInterfaceId :: Lens.Lens' NetworkInterface (Prelude.Maybe Prelude.Text)+networkInterface_networkInterfaceId = Lens.lens (\NetworkInterface' {networkInterfaceId} -> networkInterfaceId) (\s@NetworkInterface' {} a -> s {networkInterfaceId = a} :: NetworkInterface)++-- | The IPv4 address of the network interface within the subnet.+networkInterface_privateIpAddress :: Lens.Lens' NetworkInterface (Prelude.Maybe Prelude.Text)+networkInterface_privateIpAddress = Lens.lens (\NetworkInterface' {privateIpAddress} -> privateIpAddress) (\s@NetworkInterface' {} a -> s {privateIpAddress = a} :: NetworkInterface)++-- | The IPv4 public address of the network interface.+networkInterface_publicIpAddress :: Lens.Lens' NetworkInterface (Prelude.Maybe Prelude.Text)+networkInterface_publicIpAddress = Lens.lens (\NetworkInterface' {publicIpAddress} -> publicIpAddress) (\s@NetworkInterface' {} a -> s {publicIpAddress = a} :: NetworkInterface)++instance Data.FromJSON NetworkInterface where+ parseJSON =+ Data.withObject+ "NetworkInterface"+ ( \x ->+ NetworkInterface'+ Prelude.<$> (x Data..:? "networkInterfaceId")+ Prelude.<*> (x Data..:? "privateIpAddress")+ Prelude.<*> (x Data..:? "publicIpAddress")+ )++instance Prelude.Hashable NetworkInterface where+ hashWithSalt _salt NetworkInterface' {..} =+ _salt+ `Prelude.hashWithSalt` networkInterfaceId+ `Prelude.hashWithSalt` privateIpAddress+ `Prelude.hashWithSalt` publicIpAddress++instance Prelude.NFData NetworkInterface where+ rnf NetworkInterface' {..} =+ Prelude.rnf networkInterfaceId+ `Prelude.seq` Prelude.rnf privateIpAddress+ `Prelude.seq` Prelude.rnf publicIpAddress
+ gen/Amazonka/RobOMaker/Types/OutputLocation.hs view
@@ -0,0 +1,93 @@+{-# 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.RobOMaker.Types.OutputLocation+-- 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.RobOMaker.Types.OutputLocation 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 output location.+--+-- /See:/ 'newOutputLocation' smart constructor.+data OutputLocation = OutputLocation'+ { -- | The S3 bucket for output.+ s3Bucket :: Prelude.Maybe Prelude.Text,+ -- | The S3 folder in the @s3Bucket@ where output files will be placed.+ s3Prefix :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'OutputLocation' 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:+--+-- 's3Bucket', 'outputLocation_s3Bucket' - The S3 bucket for output.+--+-- 's3Prefix', 'outputLocation_s3Prefix' - The S3 folder in the @s3Bucket@ where output files will be placed.+newOutputLocation ::+ OutputLocation+newOutputLocation =+ OutputLocation'+ { s3Bucket = Prelude.Nothing,+ s3Prefix = Prelude.Nothing+ }++-- | The S3 bucket for output.+outputLocation_s3Bucket :: Lens.Lens' OutputLocation (Prelude.Maybe Prelude.Text)+outputLocation_s3Bucket = Lens.lens (\OutputLocation' {s3Bucket} -> s3Bucket) (\s@OutputLocation' {} a -> s {s3Bucket = a} :: OutputLocation)++-- | The S3 folder in the @s3Bucket@ where output files will be placed.+outputLocation_s3Prefix :: Lens.Lens' OutputLocation (Prelude.Maybe Prelude.Text)+outputLocation_s3Prefix = Lens.lens (\OutputLocation' {s3Prefix} -> s3Prefix) (\s@OutputLocation' {} a -> s {s3Prefix = a} :: OutputLocation)++instance Data.FromJSON OutputLocation where+ parseJSON =+ Data.withObject+ "OutputLocation"+ ( \x ->+ OutputLocation'+ Prelude.<$> (x Data..:? "s3Bucket")+ Prelude.<*> (x Data..:? "s3Prefix")+ )++instance Prelude.Hashable OutputLocation where+ hashWithSalt _salt OutputLocation' {..} =+ _salt+ `Prelude.hashWithSalt` s3Bucket+ `Prelude.hashWithSalt` s3Prefix++instance Prelude.NFData OutputLocation where+ rnf OutputLocation' {..} =+ Prelude.rnf s3Bucket+ `Prelude.seq` Prelude.rnf s3Prefix++instance Data.ToJSON OutputLocation where+ toJSON OutputLocation' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("s3Bucket" Data..=) Prelude.<$> s3Bucket,+ ("s3Prefix" Data..=) Prelude.<$> s3Prefix+ ]+ )
+ gen/Amazonka/RobOMaker/Types/PortForwardingConfig.hs view
@@ -0,0 +1,80 @@+{-# 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.RobOMaker.Types.PortForwardingConfig+-- 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.RobOMaker.Types.PortForwardingConfig where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import Amazonka.RobOMaker.Types.PortMapping++-- | Configuration information for port forwarding.+--+-- /See:/ 'newPortForwardingConfig' smart constructor.+data PortForwardingConfig = PortForwardingConfig'+ { -- | The port mappings for the configuration.+ portMappings :: Prelude.Maybe [PortMapping]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PortForwardingConfig' 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:+--+-- 'portMappings', 'portForwardingConfig_portMappings' - The port mappings for the configuration.+newPortForwardingConfig ::+ PortForwardingConfig+newPortForwardingConfig =+ PortForwardingConfig'+ { portMappings =+ Prelude.Nothing+ }++-- | The port mappings for the configuration.+portForwardingConfig_portMappings :: Lens.Lens' PortForwardingConfig (Prelude.Maybe [PortMapping])+portForwardingConfig_portMappings = Lens.lens (\PortForwardingConfig' {portMappings} -> portMappings) (\s@PortForwardingConfig' {} a -> s {portMappings = a} :: PortForwardingConfig) Prelude.. Lens.mapping Lens.coerced++instance Data.FromJSON PortForwardingConfig where+ parseJSON =+ Data.withObject+ "PortForwardingConfig"+ ( \x ->+ PortForwardingConfig'+ Prelude.<$> (x Data..:? "portMappings" Data..!= Prelude.mempty)+ )++instance Prelude.Hashable PortForwardingConfig where+ hashWithSalt _salt PortForwardingConfig' {..} =+ _salt `Prelude.hashWithSalt` portMappings++instance Prelude.NFData PortForwardingConfig where+ rnf PortForwardingConfig' {..} =+ Prelude.rnf portMappings++instance Data.ToJSON PortForwardingConfig where+ toJSON PortForwardingConfig' {..} =+ Data.object+ ( Prelude.catMaybes+ [("portMappings" Data..=) Prelude.<$> portMappings]+ )
+ gen/Amazonka/RobOMaker/Types/PortMapping.hs view
@@ -0,0 +1,115 @@+{-# 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.RobOMaker.Types.PortMapping+-- 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.RobOMaker.Types.PortMapping 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++-- | An object representing a port mapping.+--+-- /See:/ 'newPortMapping' smart constructor.+data PortMapping = PortMapping'+ { -- | A Boolean indicating whether to enable this port mapping on public IP.+ enableOnPublicIp :: Prelude.Maybe Prelude.Bool,+ -- | The port number on the simulation job instance to use as a remote+ -- connection point.+ jobPort :: Prelude.Natural,+ -- | The port number on the application.+ applicationPort :: Prelude.Natural+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PortMapping' 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:+--+-- 'enableOnPublicIp', 'portMapping_enableOnPublicIp' - A Boolean indicating whether to enable this port mapping on public IP.+--+-- 'jobPort', 'portMapping_jobPort' - The port number on the simulation job instance to use as a remote+-- connection point.+--+-- 'applicationPort', 'portMapping_applicationPort' - The port number on the application.+newPortMapping ::+ -- | 'jobPort'+ Prelude.Natural ->+ -- | 'applicationPort'+ Prelude.Natural ->+ PortMapping+newPortMapping pJobPort_ pApplicationPort_ =+ PortMapping'+ { enableOnPublicIp = Prelude.Nothing,+ jobPort = pJobPort_,+ applicationPort = pApplicationPort_+ }++-- | A Boolean indicating whether to enable this port mapping on public IP.+portMapping_enableOnPublicIp :: Lens.Lens' PortMapping (Prelude.Maybe Prelude.Bool)+portMapping_enableOnPublicIp = Lens.lens (\PortMapping' {enableOnPublicIp} -> enableOnPublicIp) (\s@PortMapping' {} a -> s {enableOnPublicIp = a} :: PortMapping)++-- | The port number on the simulation job instance to use as a remote+-- connection point.+portMapping_jobPort :: Lens.Lens' PortMapping Prelude.Natural+portMapping_jobPort = Lens.lens (\PortMapping' {jobPort} -> jobPort) (\s@PortMapping' {} a -> s {jobPort = a} :: PortMapping)++-- | The port number on the application.+portMapping_applicationPort :: Lens.Lens' PortMapping Prelude.Natural+portMapping_applicationPort = Lens.lens (\PortMapping' {applicationPort} -> applicationPort) (\s@PortMapping' {} a -> s {applicationPort = a} :: PortMapping)++instance Data.FromJSON PortMapping where+ parseJSON =+ Data.withObject+ "PortMapping"+ ( \x ->+ PortMapping'+ Prelude.<$> (x Data..:? "enableOnPublicIp")+ Prelude.<*> (x Data..: "jobPort")+ Prelude.<*> (x Data..: "applicationPort")+ )++instance Prelude.Hashable PortMapping where+ hashWithSalt _salt PortMapping' {..} =+ _salt+ `Prelude.hashWithSalt` enableOnPublicIp+ `Prelude.hashWithSalt` jobPort+ `Prelude.hashWithSalt` applicationPort++instance Prelude.NFData PortMapping where+ rnf PortMapping' {..} =+ Prelude.rnf enableOnPublicIp+ `Prelude.seq` Prelude.rnf jobPort+ `Prelude.seq` Prelude.rnf applicationPort++instance Data.ToJSON PortMapping where+ toJSON PortMapping' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("enableOnPublicIp" Data..=)+ Prelude.<$> enableOnPublicIp,+ Prelude.Just ("jobPort" Data..= jobPort),+ Prelude.Just+ ("applicationPort" Data..= applicationPort)+ ]+ )
+ gen/Amazonka/RobOMaker/Types/RenderingEngine.hs view
@@ -0,0 +1,93 @@+{-# 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.RobOMaker.Types.RenderingEngine+-- 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.RobOMaker.Types.RenderingEngine where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import Amazonka.RobOMaker.Types.RenderingEngineType++-- | Information about a rendering engine.+--+-- /See:/ 'newRenderingEngine' smart constructor.+data RenderingEngine = RenderingEngine'+ { -- | The name of the rendering engine.+ name :: Prelude.Maybe RenderingEngineType,+ -- | The version of the rendering engine.+ version :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RenderingEngine' 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:+--+-- 'name', 'renderingEngine_name' - The name of the rendering engine.+--+-- 'version', 'renderingEngine_version' - The version of the rendering engine.+newRenderingEngine ::+ RenderingEngine+newRenderingEngine =+ RenderingEngine'+ { name = Prelude.Nothing,+ version = Prelude.Nothing+ }++-- | The name of the rendering engine.+renderingEngine_name :: Lens.Lens' RenderingEngine (Prelude.Maybe RenderingEngineType)+renderingEngine_name = Lens.lens (\RenderingEngine' {name} -> name) (\s@RenderingEngine' {} a -> s {name = a} :: RenderingEngine)++-- | The version of the rendering engine.+renderingEngine_version :: Lens.Lens' RenderingEngine (Prelude.Maybe Prelude.Text)+renderingEngine_version = Lens.lens (\RenderingEngine' {version} -> version) (\s@RenderingEngine' {} a -> s {version = a} :: RenderingEngine)++instance Data.FromJSON RenderingEngine where+ parseJSON =+ Data.withObject+ "RenderingEngine"+ ( \x ->+ RenderingEngine'+ Prelude.<$> (x Data..:? "name")+ Prelude.<*> (x Data..:? "version")+ )++instance Prelude.Hashable RenderingEngine where+ hashWithSalt _salt RenderingEngine' {..} =+ _salt+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` version++instance Prelude.NFData RenderingEngine where+ rnf RenderingEngine' {..} =+ Prelude.rnf name `Prelude.seq` Prelude.rnf version++instance Data.ToJSON RenderingEngine where+ toJSON RenderingEngine' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("name" Data..=) Prelude.<$> name,+ ("version" Data..=) Prelude.<$> version+ ]+ )
+ gen/Amazonka/RobOMaker/Types/RenderingEngineType.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.RobOMaker.Types.RenderingEngineType+-- 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.RobOMaker.Types.RenderingEngineType+ ( RenderingEngineType+ ( ..,+ RenderingEngineType_OGRE+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype RenderingEngineType = RenderingEngineType'+ { fromRenderingEngineType ::+ 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 RenderingEngineType_OGRE :: RenderingEngineType+pattern RenderingEngineType_OGRE = RenderingEngineType' "OGRE"++{-# COMPLETE+ RenderingEngineType_OGRE,+ RenderingEngineType'+ #-}
+ gen/Amazonka/RobOMaker/Types/RobotApplicationConfig.hs view
@@ -0,0 +1,205 @@+{-# 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.RobOMaker.Types.RobotApplicationConfig+-- 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.RobOMaker.Types.RobotApplicationConfig where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import Amazonka.RobOMaker.Types.LaunchConfig+import Amazonka.RobOMaker.Types.Tool+import Amazonka.RobOMaker.Types.UploadConfiguration++-- | Application configuration information for a robot.+--+-- /See:/ 'newRobotApplicationConfig' smart constructor.+data RobotApplicationConfig = RobotApplicationConfig'+ { -- | The version of the robot application.+ applicationVersion :: Prelude.Maybe Prelude.Text,+ -- | Information about tools configured for the robot application.+ tools :: Prelude.Maybe [Tool],+ -- | The upload configurations for the robot application.+ uploadConfigurations :: Prelude.Maybe [UploadConfiguration],+ -- | A Boolean indicating whether to use default robot application tools. The+ -- default tools are rviz, rqt, terminal and rosbag record. The default is+ -- @False@.+ --+ -- This API is no longer supported and will throw an error if used.+ useDefaultTools :: Prelude.Maybe Prelude.Bool,+ -- | A Boolean indicating whether to use default upload configurations. By+ -- default, @.ros@ and @.gazebo@ files are uploaded when the application+ -- terminates and all ROS topics will be recorded.+ --+ -- If you set this value, you must specify an @outputLocation@.+ --+ -- This API is no longer supported and will throw an error if used.+ useDefaultUploadConfigurations :: Prelude.Maybe Prelude.Bool,+ -- | The application information for the robot application.+ application :: Prelude.Text,+ -- | The launch configuration for the robot application.+ launchConfig :: LaunchConfig+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RobotApplicationConfig' 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:+--+-- 'applicationVersion', 'robotApplicationConfig_applicationVersion' - The version of the robot application.+--+-- 'tools', 'robotApplicationConfig_tools' - Information about tools configured for the robot application.+--+-- 'uploadConfigurations', 'robotApplicationConfig_uploadConfigurations' - The upload configurations for the robot application.+--+-- 'useDefaultTools', 'robotApplicationConfig_useDefaultTools' - A Boolean indicating whether to use default robot application tools. The+-- default tools are rviz, rqt, terminal and rosbag record. The default is+-- @False@.+--+-- This API is no longer supported and will throw an error if used.+--+-- 'useDefaultUploadConfigurations', 'robotApplicationConfig_useDefaultUploadConfigurations' - A Boolean indicating whether to use default upload configurations. By+-- default, @.ros@ and @.gazebo@ files are uploaded when the application+-- terminates and all ROS topics will be recorded.+--+-- If you set this value, you must specify an @outputLocation@.+--+-- This API is no longer supported and will throw an error if used.+--+-- 'application', 'robotApplicationConfig_application' - The application information for the robot application.+--+-- 'launchConfig', 'robotApplicationConfig_launchConfig' - The launch configuration for the robot application.+newRobotApplicationConfig ::+ -- | 'application'+ Prelude.Text ->+ -- | 'launchConfig'+ LaunchConfig ->+ RobotApplicationConfig+newRobotApplicationConfig+ pApplication_+ pLaunchConfig_ =+ RobotApplicationConfig'+ { applicationVersion =+ Prelude.Nothing,+ tools = Prelude.Nothing,+ uploadConfigurations = Prelude.Nothing,+ useDefaultTools = Prelude.Nothing,+ useDefaultUploadConfigurations = Prelude.Nothing,+ application = pApplication_,+ launchConfig = pLaunchConfig_+ }++-- | The version of the robot application.+robotApplicationConfig_applicationVersion :: Lens.Lens' RobotApplicationConfig (Prelude.Maybe Prelude.Text)+robotApplicationConfig_applicationVersion = Lens.lens (\RobotApplicationConfig' {applicationVersion} -> applicationVersion) (\s@RobotApplicationConfig' {} a -> s {applicationVersion = a} :: RobotApplicationConfig)++-- | Information about tools configured for the robot application.+robotApplicationConfig_tools :: Lens.Lens' RobotApplicationConfig (Prelude.Maybe [Tool])+robotApplicationConfig_tools = Lens.lens (\RobotApplicationConfig' {tools} -> tools) (\s@RobotApplicationConfig' {} a -> s {tools = a} :: RobotApplicationConfig) Prelude.. Lens.mapping Lens.coerced++-- | The upload configurations for the robot application.+robotApplicationConfig_uploadConfigurations :: Lens.Lens' RobotApplicationConfig (Prelude.Maybe [UploadConfiguration])+robotApplicationConfig_uploadConfigurations = Lens.lens (\RobotApplicationConfig' {uploadConfigurations} -> uploadConfigurations) (\s@RobotApplicationConfig' {} a -> s {uploadConfigurations = a} :: RobotApplicationConfig) Prelude.. Lens.mapping Lens.coerced++-- | A Boolean indicating whether to use default robot application tools. The+-- default tools are rviz, rqt, terminal and rosbag record. The default is+-- @False@.+--+-- This API is no longer supported and will throw an error if used.+robotApplicationConfig_useDefaultTools :: Lens.Lens' RobotApplicationConfig (Prelude.Maybe Prelude.Bool)+robotApplicationConfig_useDefaultTools = Lens.lens (\RobotApplicationConfig' {useDefaultTools} -> useDefaultTools) (\s@RobotApplicationConfig' {} a -> s {useDefaultTools = a} :: RobotApplicationConfig)++-- | A Boolean indicating whether to use default upload configurations. By+-- default, @.ros@ and @.gazebo@ files are uploaded when the application+-- terminates and all ROS topics will be recorded.+--+-- If you set this value, you must specify an @outputLocation@.+--+-- This API is no longer supported and will throw an error if used.+robotApplicationConfig_useDefaultUploadConfigurations :: Lens.Lens' RobotApplicationConfig (Prelude.Maybe Prelude.Bool)+robotApplicationConfig_useDefaultUploadConfigurations = Lens.lens (\RobotApplicationConfig' {useDefaultUploadConfigurations} -> useDefaultUploadConfigurations) (\s@RobotApplicationConfig' {} a -> s {useDefaultUploadConfigurations = a} :: RobotApplicationConfig)++-- | The application information for the robot application.+robotApplicationConfig_application :: Lens.Lens' RobotApplicationConfig Prelude.Text+robotApplicationConfig_application = Lens.lens (\RobotApplicationConfig' {application} -> application) (\s@RobotApplicationConfig' {} a -> s {application = a} :: RobotApplicationConfig)++-- | The launch configuration for the robot application.+robotApplicationConfig_launchConfig :: Lens.Lens' RobotApplicationConfig LaunchConfig+robotApplicationConfig_launchConfig = Lens.lens (\RobotApplicationConfig' {launchConfig} -> launchConfig) (\s@RobotApplicationConfig' {} a -> s {launchConfig = a} :: RobotApplicationConfig)++instance Data.FromJSON RobotApplicationConfig where+ parseJSON =+ Data.withObject+ "RobotApplicationConfig"+ ( \x ->+ RobotApplicationConfig'+ Prelude.<$> (x Data..:? "applicationVersion")+ Prelude.<*> (x Data..:? "tools" Data..!= Prelude.mempty)+ Prelude.<*> ( x+ Data..:? "uploadConfigurations"+ Data..!= Prelude.mempty+ )+ Prelude.<*> (x Data..:? "useDefaultTools")+ Prelude.<*> (x Data..:? "useDefaultUploadConfigurations")+ Prelude.<*> (x Data..: "application")+ Prelude.<*> (x Data..: "launchConfig")+ )++instance Prelude.Hashable RobotApplicationConfig where+ hashWithSalt _salt RobotApplicationConfig' {..} =+ _salt+ `Prelude.hashWithSalt` applicationVersion+ `Prelude.hashWithSalt` tools+ `Prelude.hashWithSalt` uploadConfigurations+ `Prelude.hashWithSalt` useDefaultTools+ `Prelude.hashWithSalt` useDefaultUploadConfigurations+ `Prelude.hashWithSalt` application+ `Prelude.hashWithSalt` launchConfig++instance Prelude.NFData RobotApplicationConfig where+ rnf RobotApplicationConfig' {..} =+ Prelude.rnf applicationVersion+ `Prelude.seq` Prelude.rnf tools+ `Prelude.seq` Prelude.rnf uploadConfigurations+ `Prelude.seq` Prelude.rnf useDefaultTools+ `Prelude.seq` Prelude.rnf useDefaultUploadConfigurations+ `Prelude.seq` Prelude.rnf application+ `Prelude.seq` Prelude.rnf launchConfig++instance Data.ToJSON RobotApplicationConfig where+ toJSON RobotApplicationConfig' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("applicationVersion" Data..=)+ Prelude.<$> applicationVersion,+ ("tools" Data..=) Prelude.<$> tools,+ ("uploadConfigurations" Data..=)+ Prelude.<$> uploadConfigurations,+ ("useDefaultTools" Data..=)+ Prelude.<$> useDefaultTools,+ ("useDefaultUploadConfigurations" Data..=)+ Prelude.<$> useDefaultUploadConfigurations,+ Prelude.Just ("application" Data..= application),+ Prelude.Just ("launchConfig" Data..= launchConfig)+ ]+ )
+ gen/Amazonka/RobOMaker/Types/RobotApplicationSummary.hs view
@@ -0,0 +1,124 @@+{-# 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.RobOMaker.Types.RobotApplicationSummary+-- 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.RobOMaker.Types.RobotApplicationSummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import Amazonka.RobOMaker.Types.RobotSoftwareSuite++-- | Summary information for a robot application.+--+-- /See:/ 'newRobotApplicationSummary' smart constructor.+data RobotApplicationSummary = RobotApplicationSummary'+ { -- | The Amazon Resource Name (ARN) of the robot.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The time, in milliseconds since the epoch, when the robot application+ -- was last updated.+ lastUpdatedAt :: Prelude.Maybe Data.POSIX,+ -- | The name of the robot application.+ name :: Prelude.Maybe Prelude.Text,+ -- | Information about a robot software suite (ROS distribution).+ robotSoftwareSuite :: Prelude.Maybe RobotSoftwareSuite,+ -- | The version of the robot application.+ version :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RobotApplicationSummary' 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', 'robotApplicationSummary_arn' - The Amazon Resource Name (ARN) of the robot.+--+-- 'lastUpdatedAt', 'robotApplicationSummary_lastUpdatedAt' - The time, in milliseconds since the epoch, when the robot application+-- was last updated.+--+-- 'name', 'robotApplicationSummary_name' - The name of the robot application.+--+-- 'robotSoftwareSuite', 'robotApplicationSummary_robotSoftwareSuite' - Information about a robot software suite (ROS distribution).+--+-- 'version', 'robotApplicationSummary_version' - The version of the robot application.+newRobotApplicationSummary ::+ RobotApplicationSummary+newRobotApplicationSummary =+ RobotApplicationSummary'+ { arn = Prelude.Nothing,+ lastUpdatedAt = Prelude.Nothing,+ name = Prelude.Nothing,+ robotSoftwareSuite = Prelude.Nothing,+ version = Prelude.Nothing+ }++-- | The Amazon Resource Name (ARN) of the robot.+robotApplicationSummary_arn :: Lens.Lens' RobotApplicationSummary (Prelude.Maybe Prelude.Text)+robotApplicationSummary_arn = Lens.lens (\RobotApplicationSummary' {arn} -> arn) (\s@RobotApplicationSummary' {} a -> s {arn = a} :: RobotApplicationSummary)++-- | The time, in milliseconds since the epoch, when the robot application+-- was last updated.+robotApplicationSummary_lastUpdatedAt :: Lens.Lens' RobotApplicationSummary (Prelude.Maybe Prelude.UTCTime)+robotApplicationSummary_lastUpdatedAt = Lens.lens (\RobotApplicationSummary' {lastUpdatedAt} -> lastUpdatedAt) (\s@RobotApplicationSummary' {} a -> s {lastUpdatedAt = a} :: RobotApplicationSummary) Prelude.. Lens.mapping Data._Time++-- | The name of the robot application.+robotApplicationSummary_name :: Lens.Lens' RobotApplicationSummary (Prelude.Maybe Prelude.Text)+robotApplicationSummary_name = Lens.lens (\RobotApplicationSummary' {name} -> name) (\s@RobotApplicationSummary' {} a -> s {name = a} :: RobotApplicationSummary)++-- | Information about a robot software suite (ROS distribution).+robotApplicationSummary_robotSoftwareSuite :: Lens.Lens' RobotApplicationSummary (Prelude.Maybe RobotSoftwareSuite)+robotApplicationSummary_robotSoftwareSuite = Lens.lens (\RobotApplicationSummary' {robotSoftwareSuite} -> robotSoftwareSuite) (\s@RobotApplicationSummary' {} a -> s {robotSoftwareSuite = a} :: RobotApplicationSummary)++-- | The version of the robot application.+robotApplicationSummary_version :: Lens.Lens' RobotApplicationSummary (Prelude.Maybe Prelude.Text)+robotApplicationSummary_version = Lens.lens (\RobotApplicationSummary' {version} -> version) (\s@RobotApplicationSummary' {} a -> s {version = a} :: RobotApplicationSummary)++instance Data.FromJSON RobotApplicationSummary where+ parseJSON =+ Data.withObject+ "RobotApplicationSummary"+ ( \x ->+ RobotApplicationSummary'+ Prelude.<$> (x Data..:? "arn")+ Prelude.<*> (x Data..:? "lastUpdatedAt")+ Prelude.<*> (x Data..:? "name")+ Prelude.<*> (x Data..:? "robotSoftwareSuite")+ Prelude.<*> (x Data..:? "version")+ )++instance Prelude.Hashable RobotApplicationSummary where+ hashWithSalt _salt RobotApplicationSummary' {..} =+ _salt+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` lastUpdatedAt+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` robotSoftwareSuite+ `Prelude.hashWithSalt` version++instance Prelude.NFData RobotApplicationSummary where+ rnf RobotApplicationSummary' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf lastUpdatedAt+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf robotSoftwareSuite+ `Prelude.seq` Prelude.rnf version
+ gen/Amazonka/RobOMaker/Types/RobotSoftwareSuite.hs view
@@ -0,0 +1,94 @@+{-# 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.RobOMaker.Types.RobotSoftwareSuite+-- 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.RobOMaker.Types.RobotSoftwareSuite where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import Amazonka.RobOMaker.Types.RobotSoftwareSuiteType+import Amazonka.RobOMaker.Types.RobotSoftwareSuiteVersionType++-- | Information about a robot software suite (ROS distribution).+--+-- /See:/ 'newRobotSoftwareSuite' smart constructor.+data RobotSoftwareSuite = RobotSoftwareSuite'+ { -- | The name of the robot software suite (ROS distribution).+ name :: Prelude.Maybe RobotSoftwareSuiteType,+ -- | The version of the robot software suite (ROS distribution).+ version :: Prelude.Maybe RobotSoftwareSuiteVersionType+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RobotSoftwareSuite' 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:+--+-- 'name', 'robotSoftwareSuite_name' - The name of the robot software suite (ROS distribution).+--+-- 'version', 'robotSoftwareSuite_version' - The version of the robot software suite (ROS distribution).+newRobotSoftwareSuite ::+ RobotSoftwareSuite+newRobotSoftwareSuite =+ RobotSoftwareSuite'+ { name = Prelude.Nothing,+ version = Prelude.Nothing+ }++-- | The name of the robot software suite (ROS distribution).+robotSoftwareSuite_name :: Lens.Lens' RobotSoftwareSuite (Prelude.Maybe RobotSoftwareSuiteType)+robotSoftwareSuite_name = Lens.lens (\RobotSoftwareSuite' {name} -> name) (\s@RobotSoftwareSuite' {} a -> s {name = a} :: RobotSoftwareSuite)++-- | The version of the robot software suite (ROS distribution).+robotSoftwareSuite_version :: Lens.Lens' RobotSoftwareSuite (Prelude.Maybe RobotSoftwareSuiteVersionType)+robotSoftwareSuite_version = Lens.lens (\RobotSoftwareSuite' {version} -> version) (\s@RobotSoftwareSuite' {} a -> s {version = a} :: RobotSoftwareSuite)++instance Data.FromJSON RobotSoftwareSuite where+ parseJSON =+ Data.withObject+ "RobotSoftwareSuite"+ ( \x ->+ RobotSoftwareSuite'+ Prelude.<$> (x Data..:? "name")+ Prelude.<*> (x Data..:? "version")+ )++instance Prelude.Hashable RobotSoftwareSuite where+ hashWithSalt _salt RobotSoftwareSuite' {..} =+ _salt+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` version++instance Prelude.NFData RobotSoftwareSuite where+ rnf RobotSoftwareSuite' {..} =+ Prelude.rnf name `Prelude.seq` Prelude.rnf version++instance Data.ToJSON RobotSoftwareSuite where+ toJSON RobotSoftwareSuite' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("name" Data..=) Prelude.<$> name,+ ("version" Data..=) Prelude.<$> version+ ]+ )
+ gen/Amazonka/RobOMaker/Types/RobotSoftwareSuiteType.hs view
@@ -0,0 +1,76 @@+{-# 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.RobOMaker.Types.RobotSoftwareSuiteType+-- 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.RobOMaker.Types.RobotSoftwareSuiteType+ ( RobotSoftwareSuiteType+ ( ..,+ RobotSoftwareSuiteType_General,+ RobotSoftwareSuiteType_ROS,+ RobotSoftwareSuiteType_ROS2+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype RobotSoftwareSuiteType = RobotSoftwareSuiteType'+ { fromRobotSoftwareSuiteType ::+ 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 RobotSoftwareSuiteType_General :: RobotSoftwareSuiteType+pattern RobotSoftwareSuiteType_General = RobotSoftwareSuiteType' "General"++pattern RobotSoftwareSuiteType_ROS :: RobotSoftwareSuiteType+pattern RobotSoftwareSuiteType_ROS = RobotSoftwareSuiteType' "ROS"++pattern RobotSoftwareSuiteType_ROS2 :: RobotSoftwareSuiteType+pattern RobotSoftwareSuiteType_ROS2 = RobotSoftwareSuiteType' "ROS2"++{-# COMPLETE+ RobotSoftwareSuiteType_General,+ RobotSoftwareSuiteType_ROS,+ RobotSoftwareSuiteType_ROS2,+ RobotSoftwareSuiteType'+ #-}
+ gen/Amazonka/RobOMaker/Types/RobotSoftwareSuiteVersionType.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.RobOMaker.Types.RobotSoftwareSuiteVersionType+-- 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.RobOMaker.Types.RobotSoftwareSuiteVersionType+ ( RobotSoftwareSuiteVersionType+ ( ..,+ RobotSoftwareSuiteVersionType_Dashing,+ RobotSoftwareSuiteVersionType_Foxy,+ RobotSoftwareSuiteVersionType_Kinetic,+ RobotSoftwareSuiteVersionType_Melodic+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype RobotSoftwareSuiteVersionType = RobotSoftwareSuiteVersionType'+ { fromRobotSoftwareSuiteVersionType ::+ 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 RobotSoftwareSuiteVersionType_Dashing :: RobotSoftwareSuiteVersionType+pattern RobotSoftwareSuiteVersionType_Dashing = RobotSoftwareSuiteVersionType' "Dashing"++pattern RobotSoftwareSuiteVersionType_Foxy :: RobotSoftwareSuiteVersionType+pattern RobotSoftwareSuiteVersionType_Foxy = RobotSoftwareSuiteVersionType' "Foxy"++pattern RobotSoftwareSuiteVersionType_Kinetic :: RobotSoftwareSuiteVersionType+pattern RobotSoftwareSuiteVersionType_Kinetic = RobotSoftwareSuiteVersionType' "Kinetic"++pattern RobotSoftwareSuiteVersionType_Melodic :: RobotSoftwareSuiteVersionType+pattern RobotSoftwareSuiteVersionType_Melodic = RobotSoftwareSuiteVersionType' "Melodic"++{-# COMPLETE+ RobotSoftwareSuiteVersionType_Dashing,+ RobotSoftwareSuiteVersionType_Foxy,+ RobotSoftwareSuiteVersionType_Kinetic,+ RobotSoftwareSuiteVersionType_Melodic,+ RobotSoftwareSuiteVersionType'+ #-}
+ gen/Amazonka/RobOMaker/Types/S3KeyOutput.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.RobOMaker.Types.S3KeyOutput+-- 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.RobOMaker.Types.S3KeyOutput 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++-- | Information about S3 keys.+--+-- /See:/ 'newS3KeyOutput' smart constructor.+data S3KeyOutput = S3KeyOutput'+ { -- | The etag for the object.+ etag :: Prelude.Maybe Prelude.Text,+ -- | The S3 key.+ s3Key :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'S3KeyOutput' 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:+--+-- 'etag', 's3KeyOutput_etag' - The etag for the object.+--+-- 's3Key', 's3KeyOutput_s3Key' - The S3 key.+newS3KeyOutput ::+ S3KeyOutput+newS3KeyOutput =+ S3KeyOutput'+ { etag = Prelude.Nothing,+ s3Key = Prelude.Nothing+ }++-- | The etag for the object.+s3KeyOutput_etag :: Lens.Lens' S3KeyOutput (Prelude.Maybe Prelude.Text)+s3KeyOutput_etag = Lens.lens (\S3KeyOutput' {etag} -> etag) (\s@S3KeyOutput' {} a -> s {etag = a} :: S3KeyOutput)++-- | The S3 key.+s3KeyOutput_s3Key :: Lens.Lens' S3KeyOutput (Prelude.Maybe Prelude.Text)+s3KeyOutput_s3Key = Lens.lens (\S3KeyOutput' {s3Key} -> s3Key) (\s@S3KeyOutput' {} a -> s {s3Key = a} :: S3KeyOutput)++instance Data.FromJSON S3KeyOutput where+ parseJSON =+ Data.withObject+ "S3KeyOutput"+ ( \x ->+ S3KeyOutput'+ Prelude.<$> (x Data..:? "etag")+ Prelude.<*> (x Data..:? "s3Key")+ )++instance Prelude.Hashable S3KeyOutput where+ hashWithSalt _salt S3KeyOutput' {..} =+ _salt+ `Prelude.hashWithSalt` etag+ `Prelude.hashWithSalt` s3Key++instance Prelude.NFData S3KeyOutput where+ rnf S3KeyOutput' {..} =+ Prelude.rnf etag `Prelude.seq` Prelude.rnf s3Key
+ gen/Amazonka/RobOMaker/Types/SimulationApplicationConfig.hs view
@@ -0,0 +1,220 @@+{-# 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.RobOMaker.Types.SimulationApplicationConfig+-- 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.RobOMaker.Types.SimulationApplicationConfig where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import Amazonka.RobOMaker.Types.LaunchConfig+import Amazonka.RobOMaker.Types.Tool+import Amazonka.RobOMaker.Types.UploadConfiguration+import Amazonka.RobOMaker.Types.WorldConfig++-- | Information about a simulation application configuration.+--+-- /See:/ 'newSimulationApplicationConfig' smart constructor.+data SimulationApplicationConfig = SimulationApplicationConfig'+ { -- | The version of the simulation application.+ applicationVersion :: Prelude.Maybe Prelude.Text,+ -- | Information about tools configured for the simulation application.+ tools :: Prelude.Maybe [Tool],+ -- | Information about upload configurations for the simulation application.+ uploadConfigurations :: Prelude.Maybe [UploadConfiguration],+ -- | A Boolean indicating whether to use default simulation application+ -- tools. The default tools are rviz, rqt, terminal and rosbag record. The+ -- default is @False@.+ --+ -- This API is no longer supported and will throw an error if used.+ useDefaultTools :: Prelude.Maybe Prelude.Bool,+ -- | A Boolean indicating whether to use default upload configurations. By+ -- default, @.ros@ and @.gazebo@ files are uploaded when the application+ -- terminates and all ROS topics will be recorded.+ --+ -- If you set this value, you must specify an @outputLocation@.+ --+ -- This API is no longer supported and will throw an error if used.+ useDefaultUploadConfigurations :: Prelude.Maybe Prelude.Bool,+ -- | A list of world configurations.+ worldConfigs :: Prelude.Maybe [WorldConfig],+ -- | The application information for the simulation application.+ application :: Prelude.Text,+ -- | The launch configuration for the simulation application.+ launchConfig :: LaunchConfig+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SimulationApplicationConfig' 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:+--+-- 'applicationVersion', 'simulationApplicationConfig_applicationVersion' - The version of the simulation application.+--+-- 'tools', 'simulationApplicationConfig_tools' - Information about tools configured for the simulation application.+--+-- 'uploadConfigurations', 'simulationApplicationConfig_uploadConfigurations' - Information about upload configurations for the simulation application.+--+-- 'useDefaultTools', 'simulationApplicationConfig_useDefaultTools' - A Boolean indicating whether to use default simulation application+-- tools. The default tools are rviz, rqt, terminal and rosbag record. The+-- default is @False@.+--+-- This API is no longer supported and will throw an error if used.+--+-- 'useDefaultUploadConfigurations', 'simulationApplicationConfig_useDefaultUploadConfigurations' - A Boolean indicating whether to use default upload configurations. By+-- default, @.ros@ and @.gazebo@ files are uploaded when the application+-- terminates and all ROS topics will be recorded.+--+-- If you set this value, you must specify an @outputLocation@.+--+-- This API is no longer supported and will throw an error if used.+--+-- 'worldConfigs', 'simulationApplicationConfig_worldConfigs' - A list of world configurations.+--+-- 'application', 'simulationApplicationConfig_application' - The application information for the simulation application.+--+-- 'launchConfig', 'simulationApplicationConfig_launchConfig' - The launch configuration for the simulation application.+newSimulationApplicationConfig ::+ -- | 'application'+ Prelude.Text ->+ -- | 'launchConfig'+ LaunchConfig ->+ SimulationApplicationConfig+newSimulationApplicationConfig+ pApplication_+ pLaunchConfig_ =+ SimulationApplicationConfig'+ { applicationVersion =+ Prelude.Nothing,+ tools = Prelude.Nothing,+ uploadConfigurations = Prelude.Nothing,+ useDefaultTools = Prelude.Nothing,+ useDefaultUploadConfigurations =+ Prelude.Nothing,+ worldConfigs = Prelude.Nothing,+ application = pApplication_,+ launchConfig = pLaunchConfig_+ }++-- | The version of the simulation application.+simulationApplicationConfig_applicationVersion :: Lens.Lens' SimulationApplicationConfig (Prelude.Maybe Prelude.Text)+simulationApplicationConfig_applicationVersion = Lens.lens (\SimulationApplicationConfig' {applicationVersion} -> applicationVersion) (\s@SimulationApplicationConfig' {} a -> s {applicationVersion = a} :: SimulationApplicationConfig)++-- | Information about tools configured for the simulation application.+simulationApplicationConfig_tools :: Lens.Lens' SimulationApplicationConfig (Prelude.Maybe [Tool])+simulationApplicationConfig_tools = Lens.lens (\SimulationApplicationConfig' {tools} -> tools) (\s@SimulationApplicationConfig' {} a -> s {tools = a} :: SimulationApplicationConfig) Prelude.. Lens.mapping Lens.coerced++-- | Information about upload configurations for the simulation application.+simulationApplicationConfig_uploadConfigurations :: Lens.Lens' SimulationApplicationConfig (Prelude.Maybe [UploadConfiguration])+simulationApplicationConfig_uploadConfigurations = Lens.lens (\SimulationApplicationConfig' {uploadConfigurations} -> uploadConfigurations) (\s@SimulationApplicationConfig' {} a -> s {uploadConfigurations = a} :: SimulationApplicationConfig) Prelude.. Lens.mapping Lens.coerced++-- | A Boolean indicating whether to use default simulation application+-- tools. The default tools are rviz, rqt, terminal and rosbag record. The+-- default is @False@.+--+-- This API is no longer supported and will throw an error if used.+simulationApplicationConfig_useDefaultTools :: Lens.Lens' SimulationApplicationConfig (Prelude.Maybe Prelude.Bool)+simulationApplicationConfig_useDefaultTools = Lens.lens (\SimulationApplicationConfig' {useDefaultTools} -> useDefaultTools) (\s@SimulationApplicationConfig' {} a -> s {useDefaultTools = a} :: SimulationApplicationConfig)++-- | A Boolean indicating whether to use default upload configurations. By+-- default, @.ros@ and @.gazebo@ files are uploaded when the application+-- terminates and all ROS topics will be recorded.+--+-- If you set this value, you must specify an @outputLocation@.+--+-- This API is no longer supported and will throw an error if used.+simulationApplicationConfig_useDefaultUploadConfigurations :: Lens.Lens' SimulationApplicationConfig (Prelude.Maybe Prelude.Bool)+simulationApplicationConfig_useDefaultUploadConfigurations = Lens.lens (\SimulationApplicationConfig' {useDefaultUploadConfigurations} -> useDefaultUploadConfigurations) (\s@SimulationApplicationConfig' {} a -> s {useDefaultUploadConfigurations = a} :: SimulationApplicationConfig)++-- | A list of world configurations.+simulationApplicationConfig_worldConfigs :: Lens.Lens' SimulationApplicationConfig (Prelude.Maybe [WorldConfig])+simulationApplicationConfig_worldConfigs = Lens.lens (\SimulationApplicationConfig' {worldConfigs} -> worldConfigs) (\s@SimulationApplicationConfig' {} a -> s {worldConfigs = a} :: SimulationApplicationConfig) Prelude.. Lens.mapping Lens.coerced++-- | The application information for the simulation application.+simulationApplicationConfig_application :: Lens.Lens' SimulationApplicationConfig Prelude.Text+simulationApplicationConfig_application = Lens.lens (\SimulationApplicationConfig' {application} -> application) (\s@SimulationApplicationConfig' {} a -> s {application = a} :: SimulationApplicationConfig)++-- | The launch configuration for the simulation application.+simulationApplicationConfig_launchConfig :: Lens.Lens' SimulationApplicationConfig LaunchConfig+simulationApplicationConfig_launchConfig = Lens.lens (\SimulationApplicationConfig' {launchConfig} -> launchConfig) (\s@SimulationApplicationConfig' {} a -> s {launchConfig = a} :: SimulationApplicationConfig)++instance Data.FromJSON SimulationApplicationConfig where+ parseJSON =+ Data.withObject+ "SimulationApplicationConfig"+ ( \x ->+ SimulationApplicationConfig'+ Prelude.<$> (x Data..:? "applicationVersion")+ Prelude.<*> (x Data..:? "tools" Data..!= Prelude.mempty)+ Prelude.<*> ( x+ Data..:? "uploadConfigurations"+ Data..!= Prelude.mempty+ )+ Prelude.<*> (x Data..:? "useDefaultTools")+ Prelude.<*> (x Data..:? "useDefaultUploadConfigurations")+ Prelude.<*> (x Data..:? "worldConfigs" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..: "application")+ Prelude.<*> (x Data..: "launchConfig")+ )++instance Prelude.Hashable SimulationApplicationConfig where+ hashWithSalt _salt SimulationApplicationConfig' {..} =+ _salt+ `Prelude.hashWithSalt` applicationVersion+ `Prelude.hashWithSalt` tools+ `Prelude.hashWithSalt` uploadConfigurations+ `Prelude.hashWithSalt` useDefaultTools+ `Prelude.hashWithSalt` useDefaultUploadConfigurations+ `Prelude.hashWithSalt` worldConfigs+ `Prelude.hashWithSalt` application+ `Prelude.hashWithSalt` launchConfig++instance Prelude.NFData SimulationApplicationConfig where+ rnf SimulationApplicationConfig' {..} =+ Prelude.rnf applicationVersion+ `Prelude.seq` Prelude.rnf tools+ `Prelude.seq` Prelude.rnf uploadConfigurations+ `Prelude.seq` Prelude.rnf useDefaultTools+ `Prelude.seq` Prelude.rnf useDefaultUploadConfigurations+ `Prelude.seq` Prelude.rnf worldConfigs+ `Prelude.seq` Prelude.rnf application+ `Prelude.seq` Prelude.rnf launchConfig++instance Data.ToJSON SimulationApplicationConfig where+ toJSON SimulationApplicationConfig' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("applicationVersion" Data..=)+ Prelude.<$> applicationVersion,+ ("tools" Data..=) Prelude.<$> tools,+ ("uploadConfigurations" Data..=)+ Prelude.<$> uploadConfigurations,+ ("useDefaultTools" Data..=)+ Prelude.<$> useDefaultTools,+ ("useDefaultUploadConfigurations" Data..=)+ Prelude.<$> useDefaultUploadConfigurations,+ ("worldConfigs" Data..=) Prelude.<$> worldConfigs,+ Prelude.Just ("application" Data..= application),+ Prelude.Just ("launchConfig" Data..= launchConfig)+ ]+ )
+ gen/Amazonka/RobOMaker/Types/SimulationApplicationSummary.hs view
@@ -0,0 +1,141 @@+{-# 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.RobOMaker.Types.SimulationApplicationSummary+-- 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.RobOMaker.Types.SimulationApplicationSummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import Amazonka.RobOMaker.Types.RobotSoftwareSuite+import Amazonka.RobOMaker.Types.SimulationSoftwareSuite++-- | Summary information for a simulation application.+--+-- /See:/ 'newSimulationApplicationSummary' smart constructor.+data SimulationApplicationSummary = SimulationApplicationSummary'+ { -- | The Amazon Resource Name (ARN) of the simulation application.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The time, in milliseconds since the epoch, when the simulation+ -- application was last updated.+ lastUpdatedAt :: Prelude.Maybe Data.POSIX,+ -- | The name of the simulation application.+ name :: Prelude.Maybe Prelude.Text,+ -- | Information about a robot software suite (ROS distribution).+ robotSoftwareSuite :: Prelude.Maybe RobotSoftwareSuite,+ -- | Information about a simulation software suite.+ simulationSoftwareSuite :: Prelude.Maybe SimulationSoftwareSuite,+ -- | The version of the simulation application.+ version :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SimulationApplicationSummary' 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', 'simulationApplicationSummary_arn' - The Amazon Resource Name (ARN) of the simulation application.+--+-- 'lastUpdatedAt', 'simulationApplicationSummary_lastUpdatedAt' - The time, in milliseconds since the epoch, when the simulation+-- application was last updated.+--+-- 'name', 'simulationApplicationSummary_name' - The name of the simulation application.+--+-- 'robotSoftwareSuite', 'simulationApplicationSummary_robotSoftwareSuite' - Information about a robot software suite (ROS distribution).+--+-- 'simulationSoftwareSuite', 'simulationApplicationSummary_simulationSoftwareSuite' - Information about a simulation software suite.+--+-- 'version', 'simulationApplicationSummary_version' - The version of the simulation application.+newSimulationApplicationSummary ::+ SimulationApplicationSummary+newSimulationApplicationSummary =+ SimulationApplicationSummary'+ { arn =+ Prelude.Nothing,+ lastUpdatedAt = Prelude.Nothing,+ name = Prelude.Nothing,+ robotSoftwareSuite = Prelude.Nothing,+ simulationSoftwareSuite = Prelude.Nothing,+ version = Prelude.Nothing+ }++-- | The Amazon Resource Name (ARN) of the simulation application.+simulationApplicationSummary_arn :: Lens.Lens' SimulationApplicationSummary (Prelude.Maybe Prelude.Text)+simulationApplicationSummary_arn = Lens.lens (\SimulationApplicationSummary' {arn} -> arn) (\s@SimulationApplicationSummary' {} a -> s {arn = a} :: SimulationApplicationSummary)++-- | The time, in milliseconds since the epoch, when the simulation+-- application was last updated.+simulationApplicationSummary_lastUpdatedAt :: Lens.Lens' SimulationApplicationSummary (Prelude.Maybe Prelude.UTCTime)+simulationApplicationSummary_lastUpdatedAt = Lens.lens (\SimulationApplicationSummary' {lastUpdatedAt} -> lastUpdatedAt) (\s@SimulationApplicationSummary' {} a -> s {lastUpdatedAt = a} :: SimulationApplicationSummary) Prelude.. Lens.mapping Data._Time++-- | The name of the simulation application.+simulationApplicationSummary_name :: Lens.Lens' SimulationApplicationSummary (Prelude.Maybe Prelude.Text)+simulationApplicationSummary_name = Lens.lens (\SimulationApplicationSummary' {name} -> name) (\s@SimulationApplicationSummary' {} a -> s {name = a} :: SimulationApplicationSummary)++-- | Information about a robot software suite (ROS distribution).+simulationApplicationSummary_robotSoftwareSuite :: Lens.Lens' SimulationApplicationSummary (Prelude.Maybe RobotSoftwareSuite)+simulationApplicationSummary_robotSoftwareSuite = Lens.lens (\SimulationApplicationSummary' {robotSoftwareSuite} -> robotSoftwareSuite) (\s@SimulationApplicationSummary' {} a -> s {robotSoftwareSuite = a} :: SimulationApplicationSummary)++-- | Information about a simulation software suite.+simulationApplicationSummary_simulationSoftwareSuite :: Lens.Lens' SimulationApplicationSummary (Prelude.Maybe SimulationSoftwareSuite)+simulationApplicationSummary_simulationSoftwareSuite = Lens.lens (\SimulationApplicationSummary' {simulationSoftwareSuite} -> simulationSoftwareSuite) (\s@SimulationApplicationSummary' {} a -> s {simulationSoftwareSuite = a} :: SimulationApplicationSummary)++-- | The version of the simulation application.+simulationApplicationSummary_version :: Lens.Lens' SimulationApplicationSummary (Prelude.Maybe Prelude.Text)+simulationApplicationSummary_version = Lens.lens (\SimulationApplicationSummary' {version} -> version) (\s@SimulationApplicationSummary' {} a -> s {version = a} :: SimulationApplicationSummary)++instance Data.FromJSON SimulationApplicationSummary where+ parseJSON =+ Data.withObject+ "SimulationApplicationSummary"+ ( \x ->+ SimulationApplicationSummary'+ Prelude.<$> (x Data..:? "arn")+ Prelude.<*> (x Data..:? "lastUpdatedAt")+ Prelude.<*> (x Data..:? "name")+ Prelude.<*> (x Data..:? "robotSoftwareSuite")+ Prelude.<*> (x Data..:? "simulationSoftwareSuite")+ Prelude.<*> (x Data..:? "version")+ )++instance+ Prelude.Hashable+ SimulationApplicationSummary+ where+ hashWithSalt _salt SimulationApplicationSummary' {..} =+ _salt+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` lastUpdatedAt+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` robotSoftwareSuite+ `Prelude.hashWithSalt` simulationSoftwareSuite+ `Prelude.hashWithSalt` version++instance Prelude.NFData SimulationApplicationSummary where+ rnf SimulationApplicationSummary' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf lastUpdatedAt+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf robotSoftwareSuite+ `Prelude.seq` Prelude.rnf simulationSoftwareSuite+ `Prelude.seq` Prelude.rnf version
+ gen/Amazonka/RobOMaker/Types/SimulationJob.hs view
@@ -0,0 +1,362 @@+{-# 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.RobOMaker.Types.SimulationJob+-- 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.RobOMaker.Types.SimulationJob where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import Amazonka.RobOMaker.Types.ComputeResponse+import Amazonka.RobOMaker.Types.DataSource+import Amazonka.RobOMaker.Types.FailureBehavior+import Amazonka.RobOMaker.Types.LoggingConfig+import Amazonka.RobOMaker.Types.NetworkInterface+import Amazonka.RobOMaker.Types.OutputLocation+import Amazonka.RobOMaker.Types.RobotApplicationConfig+import Amazonka.RobOMaker.Types.SimulationApplicationConfig+import Amazonka.RobOMaker.Types.SimulationJobErrorCode+import Amazonka.RobOMaker.Types.SimulationJobStatus+import Amazonka.RobOMaker.Types.VPCConfigResponse++-- | Information about a simulation job.+--+-- /See:/ 'newSimulationJob' smart constructor.+data SimulationJob = SimulationJob'+ { -- | The Amazon Resource Name (ARN) of the simulation job.+ arn :: Prelude.Maybe Prelude.Text,+ -- | A unique identifier for this @SimulationJob@ request.+ clientRequestToken :: Prelude.Maybe Prelude.Text,+ -- | Compute information for the simulation job+ compute :: Prelude.Maybe ComputeResponse,+ -- | The data sources for the simulation job.+ dataSources :: Prelude.Maybe [DataSource],+ -- | The failure behavior the simulation job.+ --+ -- [Continue]+ -- Leaves the host running for its maximum timeout duration after a+ -- @4XX@ error code.+ --+ -- [Fail]+ -- Stop the simulation job and terminate the instance.+ failureBehavior :: Prelude.Maybe FailureBehavior,+ -- | The failure code of the simulation job if it failed.+ failureCode :: Prelude.Maybe SimulationJobErrorCode,+ -- | The reason why the simulation job failed.+ failureReason :: Prelude.Maybe Prelude.Text,+ -- | The IAM role that allows the simulation instance to call the AWS APIs+ -- that are specified in its associated policies on your behalf. This is+ -- how credentials are passed in to your simulation job.+ iamRole :: Prelude.Maybe Prelude.Text,+ -- | The time, in milliseconds since the epoch, when the simulation job was+ -- last started.+ lastStartedAt :: Prelude.Maybe Data.POSIX,+ -- | The time, in milliseconds since the epoch, when the simulation job was+ -- last updated.+ lastUpdatedAt :: Prelude.Maybe Data.POSIX,+ -- | The logging configuration.+ loggingConfig :: Prelude.Maybe LoggingConfig,+ -- | The maximum simulation job duration in seconds. The value must be 8 days+ -- (691,200 seconds) or less.+ maxJobDurationInSeconds :: Prelude.Maybe Prelude.Integer,+ -- | The name of the simulation job.+ name :: Prelude.Maybe Prelude.Text,+ -- | Information about a network interface.+ networkInterface :: Prelude.Maybe NetworkInterface,+ -- | Location for output files generated by the simulation job.+ outputLocation :: Prelude.Maybe OutputLocation,+ -- | A list of robot applications.+ robotApplications :: Prelude.Maybe (Prelude.NonEmpty RobotApplicationConfig),+ -- | A list of simulation applications.+ simulationApplications :: Prelude.Maybe (Prelude.NonEmpty SimulationApplicationConfig),+ -- | The simulation job execution duration in milliseconds.+ simulationTimeMillis :: Prelude.Maybe Prelude.Integer,+ -- | Status of the simulation job.+ status :: Prelude.Maybe SimulationJobStatus,+ -- | A map that contains tag keys and tag values that are attached to the+ -- simulation job.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | VPC configuration information.+ vpcConfig :: Prelude.Maybe VPCConfigResponse+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SimulationJob' 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', 'simulationJob_arn' - The Amazon Resource Name (ARN) of the simulation job.+--+-- 'clientRequestToken', 'simulationJob_clientRequestToken' - A unique identifier for this @SimulationJob@ request.+--+-- 'compute', 'simulationJob_compute' - Compute information for the simulation job+--+-- 'dataSources', 'simulationJob_dataSources' - The data sources for the simulation job.+--+-- 'failureBehavior', 'simulationJob_failureBehavior' - The failure behavior the simulation job.+--+-- [Continue]+-- Leaves the host running for its maximum timeout duration after a+-- @4XX@ error code.+--+-- [Fail]+-- Stop the simulation job and terminate the instance.+--+-- 'failureCode', 'simulationJob_failureCode' - The failure code of the simulation job if it failed.+--+-- 'failureReason', 'simulationJob_failureReason' - The reason why the simulation job failed.+--+-- 'iamRole', 'simulationJob_iamRole' - The IAM role that allows the simulation instance to call the AWS APIs+-- that are specified in its associated policies on your behalf. This is+-- how credentials are passed in to your simulation job.+--+-- 'lastStartedAt', 'simulationJob_lastStartedAt' - The time, in milliseconds since the epoch, when the simulation job was+-- last started.+--+-- 'lastUpdatedAt', 'simulationJob_lastUpdatedAt' - The time, in milliseconds since the epoch, when the simulation job was+-- last updated.+--+-- 'loggingConfig', 'simulationJob_loggingConfig' - The logging configuration.+--+-- 'maxJobDurationInSeconds', 'simulationJob_maxJobDurationInSeconds' - The maximum simulation job duration in seconds. The value must be 8 days+-- (691,200 seconds) or less.+--+-- 'name', 'simulationJob_name' - The name of the simulation job.+--+-- 'networkInterface', 'simulationJob_networkInterface' - Information about a network interface.+--+-- 'outputLocation', 'simulationJob_outputLocation' - Location for output files generated by the simulation job.+--+-- 'robotApplications', 'simulationJob_robotApplications' - A list of robot applications.+--+-- 'simulationApplications', 'simulationJob_simulationApplications' - A list of simulation applications.+--+-- 'simulationTimeMillis', 'simulationJob_simulationTimeMillis' - The simulation job execution duration in milliseconds.+--+-- 'status', 'simulationJob_status' - Status of the simulation job.+--+-- 'tags', 'simulationJob_tags' - A map that contains tag keys and tag values that are attached to the+-- simulation job.+--+-- 'vpcConfig', 'simulationJob_vpcConfig' - VPC configuration information.+newSimulationJob ::+ SimulationJob+newSimulationJob =+ SimulationJob'+ { arn = Prelude.Nothing,+ clientRequestToken = Prelude.Nothing,+ compute = Prelude.Nothing,+ dataSources = Prelude.Nothing,+ failureBehavior = Prelude.Nothing,+ failureCode = Prelude.Nothing,+ failureReason = Prelude.Nothing,+ iamRole = Prelude.Nothing,+ lastStartedAt = Prelude.Nothing,+ lastUpdatedAt = Prelude.Nothing,+ loggingConfig = Prelude.Nothing,+ maxJobDurationInSeconds = Prelude.Nothing,+ name = Prelude.Nothing,+ networkInterface = Prelude.Nothing,+ outputLocation = Prelude.Nothing,+ robotApplications = Prelude.Nothing,+ simulationApplications = Prelude.Nothing,+ simulationTimeMillis = Prelude.Nothing,+ status = Prelude.Nothing,+ tags = Prelude.Nothing,+ vpcConfig = Prelude.Nothing+ }++-- | The Amazon Resource Name (ARN) of the simulation job.+simulationJob_arn :: Lens.Lens' SimulationJob (Prelude.Maybe Prelude.Text)+simulationJob_arn = Lens.lens (\SimulationJob' {arn} -> arn) (\s@SimulationJob' {} a -> s {arn = a} :: SimulationJob)++-- | A unique identifier for this @SimulationJob@ request.+simulationJob_clientRequestToken :: Lens.Lens' SimulationJob (Prelude.Maybe Prelude.Text)+simulationJob_clientRequestToken = Lens.lens (\SimulationJob' {clientRequestToken} -> clientRequestToken) (\s@SimulationJob' {} a -> s {clientRequestToken = a} :: SimulationJob)++-- | Compute information for the simulation job+simulationJob_compute :: Lens.Lens' SimulationJob (Prelude.Maybe ComputeResponse)+simulationJob_compute = Lens.lens (\SimulationJob' {compute} -> compute) (\s@SimulationJob' {} a -> s {compute = a} :: SimulationJob)++-- | The data sources for the simulation job.+simulationJob_dataSources :: Lens.Lens' SimulationJob (Prelude.Maybe [DataSource])+simulationJob_dataSources = Lens.lens (\SimulationJob' {dataSources} -> dataSources) (\s@SimulationJob' {} a -> s {dataSources = a} :: SimulationJob) Prelude.. Lens.mapping Lens.coerced++-- | The failure behavior the simulation job.+--+-- [Continue]+-- Leaves the host running for its maximum timeout duration after a+-- @4XX@ error code.+--+-- [Fail]+-- Stop the simulation job and terminate the instance.+simulationJob_failureBehavior :: Lens.Lens' SimulationJob (Prelude.Maybe FailureBehavior)+simulationJob_failureBehavior = Lens.lens (\SimulationJob' {failureBehavior} -> failureBehavior) (\s@SimulationJob' {} a -> s {failureBehavior = a} :: SimulationJob)++-- | The failure code of the simulation job if it failed.+simulationJob_failureCode :: Lens.Lens' SimulationJob (Prelude.Maybe SimulationJobErrorCode)+simulationJob_failureCode = Lens.lens (\SimulationJob' {failureCode} -> failureCode) (\s@SimulationJob' {} a -> s {failureCode = a} :: SimulationJob)++-- | The reason why the simulation job failed.+simulationJob_failureReason :: Lens.Lens' SimulationJob (Prelude.Maybe Prelude.Text)+simulationJob_failureReason = Lens.lens (\SimulationJob' {failureReason} -> failureReason) (\s@SimulationJob' {} a -> s {failureReason = a} :: SimulationJob)++-- | The IAM role that allows the simulation instance to call the AWS APIs+-- that are specified in its associated policies on your behalf. This is+-- how credentials are passed in to your simulation job.+simulationJob_iamRole :: Lens.Lens' SimulationJob (Prelude.Maybe Prelude.Text)+simulationJob_iamRole = Lens.lens (\SimulationJob' {iamRole} -> iamRole) (\s@SimulationJob' {} a -> s {iamRole = a} :: SimulationJob)++-- | The time, in milliseconds since the epoch, when the simulation job was+-- last started.+simulationJob_lastStartedAt :: Lens.Lens' SimulationJob (Prelude.Maybe Prelude.UTCTime)+simulationJob_lastStartedAt = Lens.lens (\SimulationJob' {lastStartedAt} -> lastStartedAt) (\s@SimulationJob' {} a -> s {lastStartedAt = a} :: SimulationJob) Prelude.. Lens.mapping Data._Time++-- | The time, in milliseconds since the epoch, when the simulation job was+-- last updated.+simulationJob_lastUpdatedAt :: Lens.Lens' SimulationJob (Prelude.Maybe Prelude.UTCTime)+simulationJob_lastUpdatedAt = Lens.lens (\SimulationJob' {lastUpdatedAt} -> lastUpdatedAt) (\s@SimulationJob' {} a -> s {lastUpdatedAt = a} :: SimulationJob) Prelude.. Lens.mapping Data._Time++-- | The logging configuration.+simulationJob_loggingConfig :: Lens.Lens' SimulationJob (Prelude.Maybe LoggingConfig)+simulationJob_loggingConfig = Lens.lens (\SimulationJob' {loggingConfig} -> loggingConfig) (\s@SimulationJob' {} a -> s {loggingConfig = a} :: SimulationJob)++-- | The maximum simulation job duration in seconds. The value must be 8 days+-- (691,200 seconds) or less.+simulationJob_maxJobDurationInSeconds :: Lens.Lens' SimulationJob (Prelude.Maybe Prelude.Integer)+simulationJob_maxJobDurationInSeconds = Lens.lens (\SimulationJob' {maxJobDurationInSeconds} -> maxJobDurationInSeconds) (\s@SimulationJob' {} a -> s {maxJobDurationInSeconds = a} :: SimulationJob)++-- | The name of the simulation job.+simulationJob_name :: Lens.Lens' SimulationJob (Prelude.Maybe Prelude.Text)+simulationJob_name = Lens.lens (\SimulationJob' {name} -> name) (\s@SimulationJob' {} a -> s {name = a} :: SimulationJob)++-- | Information about a network interface.+simulationJob_networkInterface :: Lens.Lens' SimulationJob (Prelude.Maybe NetworkInterface)+simulationJob_networkInterface = Lens.lens (\SimulationJob' {networkInterface} -> networkInterface) (\s@SimulationJob' {} a -> s {networkInterface = a} :: SimulationJob)++-- | Location for output files generated by the simulation job.+simulationJob_outputLocation :: Lens.Lens' SimulationJob (Prelude.Maybe OutputLocation)+simulationJob_outputLocation = Lens.lens (\SimulationJob' {outputLocation} -> outputLocation) (\s@SimulationJob' {} a -> s {outputLocation = a} :: SimulationJob)++-- | A list of robot applications.+simulationJob_robotApplications :: Lens.Lens' SimulationJob (Prelude.Maybe (Prelude.NonEmpty RobotApplicationConfig))+simulationJob_robotApplications = Lens.lens (\SimulationJob' {robotApplications} -> robotApplications) (\s@SimulationJob' {} a -> s {robotApplications = a} :: SimulationJob) Prelude.. Lens.mapping Lens.coerced++-- | A list of simulation applications.+simulationJob_simulationApplications :: Lens.Lens' SimulationJob (Prelude.Maybe (Prelude.NonEmpty SimulationApplicationConfig))+simulationJob_simulationApplications = Lens.lens (\SimulationJob' {simulationApplications} -> simulationApplications) (\s@SimulationJob' {} a -> s {simulationApplications = a} :: SimulationJob) Prelude.. Lens.mapping Lens.coerced++-- | The simulation job execution duration in milliseconds.+simulationJob_simulationTimeMillis :: Lens.Lens' SimulationJob (Prelude.Maybe Prelude.Integer)+simulationJob_simulationTimeMillis = Lens.lens (\SimulationJob' {simulationTimeMillis} -> simulationTimeMillis) (\s@SimulationJob' {} a -> s {simulationTimeMillis = a} :: SimulationJob)++-- | Status of the simulation job.+simulationJob_status :: Lens.Lens' SimulationJob (Prelude.Maybe SimulationJobStatus)+simulationJob_status = Lens.lens (\SimulationJob' {status} -> status) (\s@SimulationJob' {} a -> s {status = a} :: SimulationJob)++-- | A map that contains tag keys and tag values that are attached to the+-- simulation job.+simulationJob_tags :: Lens.Lens' SimulationJob (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+simulationJob_tags = Lens.lens (\SimulationJob' {tags} -> tags) (\s@SimulationJob' {} a -> s {tags = a} :: SimulationJob) Prelude.. Lens.mapping Lens.coerced++-- | VPC configuration information.+simulationJob_vpcConfig :: Lens.Lens' SimulationJob (Prelude.Maybe VPCConfigResponse)+simulationJob_vpcConfig = Lens.lens (\SimulationJob' {vpcConfig} -> vpcConfig) (\s@SimulationJob' {} a -> s {vpcConfig = a} :: SimulationJob)++instance Data.FromJSON SimulationJob where+ parseJSON =+ Data.withObject+ "SimulationJob"+ ( \x ->+ SimulationJob'+ Prelude.<$> (x Data..:? "arn")+ Prelude.<*> (x Data..:? "clientRequestToken")+ Prelude.<*> (x Data..:? "compute")+ Prelude.<*> (x Data..:? "dataSources" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "failureBehavior")+ Prelude.<*> (x Data..:? "failureCode")+ Prelude.<*> (x Data..:? "failureReason")+ Prelude.<*> (x Data..:? "iamRole")+ Prelude.<*> (x Data..:? "lastStartedAt")+ Prelude.<*> (x Data..:? "lastUpdatedAt")+ Prelude.<*> (x Data..:? "loggingConfig")+ Prelude.<*> (x Data..:? "maxJobDurationInSeconds")+ Prelude.<*> (x Data..:? "name")+ Prelude.<*> (x Data..:? "networkInterface")+ Prelude.<*> (x Data..:? "outputLocation")+ Prelude.<*> (x Data..:? "robotApplications")+ Prelude.<*> (x Data..:? "simulationApplications")+ Prelude.<*> (x Data..:? "simulationTimeMillis")+ Prelude.<*> (x Data..:? "status")+ Prelude.<*> (x Data..:? "tags" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "vpcConfig")+ )++instance Prelude.Hashable SimulationJob where+ hashWithSalt _salt SimulationJob' {..} =+ _salt+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` clientRequestToken+ `Prelude.hashWithSalt` compute+ `Prelude.hashWithSalt` dataSources+ `Prelude.hashWithSalt` failureBehavior+ `Prelude.hashWithSalt` failureCode+ `Prelude.hashWithSalt` failureReason+ `Prelude.hashWithSalt` iamRole+ `Prelude.hashWithSalt` lastStartedAt+ `Prelude.hashWithSalt` lastUpdatedAt+ `Prelude.hashWithSalt` loggingConfig+ `Prelude.hashWithSalt` maxJobDurationInSeconds+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` networkInterface+ `Prelude.hashWithSalt` outputLocation+ `Prelude.hashWithSalt` robotApplications+ `Prelude.hashWithSalt` simulationApplications+ `Prelude.hashWithSalt` simulationTimeMillis+ `Prelude.hashWithSalt` status+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` vpcConfig++instance Prelude.NFData SimulationJob where+ rnf SimulationJob' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf clientRequestToken+ `Prelude.seq` Prelude.rnf compute+ `Prelude.seq` Prelude.rnf dataSources+ `Prelude.seq` Prelude.rnf failureBehavior+ `Prelude.seq` Prelude.rnf failureCode+ `Prelude.seq` Prelude.rnf failureReason+ `Prelude.seq` Prelude.rnf iamRole+ `Prelude.seq` Prelude.rnf lastStartedAt+ `Prelude.seq` Prelude.rnf lastUpdatedAt+ `Prelude.seq` Prelude.rnf loggingConfig+ `Prelude.seq` Prelude.rnf maxJobDurationInSeconds+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf networkInterface+ `Prelude.seq` Prelude.rnf outputLocation+ `Prelude.seq` Prelude.rnf robotApplications+ `Prelude.seq` Prelude.rnf simulationApplications+ `Prelude.seq` Prelude.rnf simulationTimeMillis+ `Prelude.seq` Prelude.rnf status+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf vpcConfig
+ gen/Amazonka/RobOMaker/Types/SimulationJobBatchErrorCode.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.RobOMaker.Types.SimulationJobBatchErrorCode+-- 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.RobOMaker.Types.SimulationJobBatchErrorCode+ ( SimulationJobBatchErrorCode+ ( ..,+ SimulationJobBatchErrorCode_InternalServiceError+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype SimulationJobBatchErrorCode = SimulationJobBatchErrorCode'+ { fromSimulationJobBatchErrorCode ::+ 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 SimulationJobBatchErrorCode_InternalServiceError :: SimulationJobBatchErrorCode+pattern SimulationJobBatchErrorCode_InternalServiceError = SimulationJobBatchErrorCode' "InternalServiceError"++{-# COMPLETE+ SimulationJobBatchErrorCode_InternalServiceError,+ SimulationJobBatchErrorCode'+ #-}
+ gen/Amazonka/RobOMaker/Types/SimulationJobBatchStatus.hs view
@@ -0,0 +1,106 @@+{-# 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.RobOMaker.Types.SimulationJobBatchStatus+-- 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.RobOMaker.Types.SimulationJobBatchStatus+ ( SimulationJobBatchStatus+ ( ..,+ SimulationJobBatchStatus_Canceled,+ SimulationJobBatchStatus_Canceling,+ SimulationJobBatchStatus_Completed,+ SimulationJobBatchStatus_Completing,+ SimulationJobBatchStatus_Failed,+ SimulationJobBatchStatus_InProgress,+ SimulationJobBatchStatus_Pending,+ SimulationJobBatchStatus_TimedOut,+ SimulationJobBatchStatus_TimingOut+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype SimulationJobBatchStatus = SimulationJobBatchStatus'+ { fromSimulationJobBatchStatus ::+ 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 SimulationJobBatchStatus_Canceled :: SimulationJobBatchStatus+pattern SimulationJobBatchStatus_Canceled = SimulationJobBatchStatus' "Canceled"++pattern SimulationJobBatchStatus_Canceling :: SimulationJobBatchStatus+pattern SimulationJobBatchStatus_Canceling = SimulationJobBatchStatus' "Canceling"++pattern SimulationJobBatchStatus_Completed :: SimulationJobBatchStatus+pattern SimulationJobBatchStatus_Completed = SimulationJobBatchStatus' "Completed"++pattern SimulationJobBatchStatus_Completing :: SimulationJobBatchStatus+pattern SimulationJobBatchStatus_Completing = SimulationJobBatchStatus' "Completing"++pattern SimulationJobBatchStatus_Failed :: SimulationJobBatchStatus+pattern SimulationJobBatchStatus_Failed = SimulationJobBatchStatus' "Failed"++pattern SimulationJobBatchStatus_InProgress :: SimulationJobBatchStatus+pattern SimulationJobBatchStatus_InProgress = SimulationJobBatchStatus' "InProgress"++pattern SimulationJobBatchStatus_Pending :: SimulationJobBatchStatus+pattern SimulationJobBatchStatus_Pending = SimulationJobBatchStatus' "Pending"++pattern SimulationJobBatchStatus_TimedOut :: SimulationJobBatchStatus+pattern SimulationJobBatchStatus_TimedOut = SimulationJobBatchStatus' "TimedOut"++pattern SimulationJobBatchStatus_TimingOut :: SimulationJobBatchStatus+pattern SimulationJobBatchStatus_TimingOut = SimulationJobBatchStatus' "TimingOut"++{-# COMPLETE+ SimulationJobBatchStatus_Canceled,+ SimulationJobBatchStatus_Canceling,+ SimulationJobBatchStatus_Completed,+ SimulationJobBatchStatus_Completing,+ SimulationJobBatchStatus_Failed,+ SimulationJobBatchStatus_InProgress,+ SimulationJobBatchStatus_Pending,+ SimulationJobBatchStatus_TimedOut,+ SimulationJobBatchStatus_TimingOut,+ SimulationJobBatchStatus'+ #-}
+ gen/Amazonka/RobOMaker/Types/SimulationJobBatchSummary.hs view
@@ -0,0 +1,268 @@+{-# 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.RobOMaker.Types.SimulationJobBatchSummary+-- 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.RobOMaker.Types.SimulationJobBatchSummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import Amazonka.RobOMaker.Types.SimulationJobBatchStatus++-- | Information about a simulation job batch.+--+-- /See:/ 'newSimulationJobBatchSummary' smart constructor.+data SimulationJobBatchSummary = SimulationJobBatchSummary'+ { -- | The Amazon Resource Name (ARN) of the batch.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The time, in milliseconds since the epoch, when the simulation job batch+ -- was created.+ createdAt :: Prelude.Maybe Data.POSIX,+ -- | The number of created simulation job requests.+ createdRequestCount :: Prelude.Maybe Prelude.Int,+ -- | The number of failed simulation job requests.+ failedRequestCount :: Prelude.Maybe Prelude.Int,+ -- | The time, in milliseconds since the epoch, when the simulation job batch+ -- was last updated.+ lastUpdatedAt :: Prelude.Maybe Data.POSIX,+ -- | The number of pending simulation job requests.+ pendingRequestCount :: Prelude.Maybe Prelude.Int,+ -- | The status of the simulation job batch.+ --+ -- [Pending]+ -- The simulation job batch request is pending.+ --+ -- [InProgress]+ -- The simulation job batch is in progress.+ --+ -- [Failed]+ -- The simulation job batch failed. One or more simulation job requests+ -- could not be completed due to an internal failure (like+ -- @InternalServiceError@). See @failureCode@ and @failureReason@ for+ -- more information.+ --+ -- [Completed]+ -- The simulation batch job completed. A batch is complete when (1)+ -- there are no pending simulation job requests in the batch and none+ -- of the failed simulation job requests are due to+ -- @InternalServiceError@ and (2) when all created simulation jobs have+ -- reached a terminal state (for example, @Completed@ or @Failed@).+ --+ -- [Canceled]+ -- The simulation batch job was cancelled.+ --+ -- [Canceling]+ -- The simulation batch job is being cancelled.+ --+ -- [Completing]+ -- The simulation batch job is completing.+ --+ -- [TimingOut]+ -- The simulation job batch is timing out.+ --+ -- If a batch timing out, and there are pending requests that were+ -- failing due to an internal failure (like @InternalServiceError@),+ -- the batch status will be @Failed@. If there are no such failing+ -- request, the batch status will be @TimedOut@.+ --+ -- [TimedOut]+ -- The simulation batch job timed out.+ status :: Prelude.Maybe SimulationJobBatchStatus+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SimulationJobBatchSummary' 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', 'simulationJobBatchSummary_arn' - The Amazon Resource Name (ARN) of the batch.+--+-- 'createdAt', 'simulationJobBatchSummary_createdAt' - The time, in milliseconds since the epoch, when the simulation job batch+-- was created.+--+-- 'createdRequestCount', 'simulationJobBatchSummary_createdRequestCount' - The number of created simulation job requests.+--+-- 'failedRequestCount', 'simulationJobBatchSummary_failedRequestCount' - The number of failed simulation job requests.+--+-- 'lastUpdatedAt', 'simulationJobBatchSummary_lastUpdatedAt' - The time, in milliseconds since the epoch, when the simulation job batch+-- was last updated.+--+-- 'pendingRequestCount', 'simulationJobBatchSummary_pendingRequestCount' - The number of pending simulation job requests.+--+-- 'status', 'simulationJobBatchSummary_status' - The status of the simulation job batch.+--+-- [Pending]+-- The simulation job batch request is pending.+--+-- [InProgress]+-- The simulation job batch is in progress.+--+-- [Failed]+-- The simulation job batch failed. One or more simulation job requests+-- could not be completed due to an internal failure (like+-- @InternalServiceError@). See @failureCode@ and @failureReason@ for+-- more information.+--+-- [Completed]+-- The simulation batch job completed. A batch is complete when (1)+-- there are no pending simulation job requests in the batch and none+-- of the failed simulation job requests are due to+-- @InternalServiceError@ and (2) when all created simulation jobs have+-- reached a terminal state (for example, @Completed@ or @Failed@).+--+-- [Canceled]+-- The simulation batch job was cancelled.+--+-- [Canceling]+-- The simulation batch job is being cancelled.+--+-- [Completing]+-- The simulation batch job is completing.+--+-- [TimingOut]+-- The simulation job batch is timing out.+--+-- If a batch timing out, and there are pending requests that were+-- failing due to an internal failure (like @InternalServiceError@),+-- the batch status will be @Failed@. If there are no such failing+-- request, the batch status will be @TimedOut@.+--+-- [TimedOut]+-- The simulation batch job timed out.+newSimulationJobBatchSummary ::+ SimulationJobBatchSummary+newSimulationJobBatchSummary =+ SimulationJobBatchSummary'+ { arn = Prelude.Nothing,+ createdAt = Prelude.Nothing,+ createdRequestCount = Prelude.Nothing,+ failedRequestCount = Prelude.Nothing,+ lastUpdatedAt = Prelude.Nothing,+ pendingRequestCount = Prelude.Nothing,+ status = Prelude.Nothing+ }++-- | The Amazon Resource Name (ARN) of the batch.+simulationJobBatchSummary_arn :: Lens.Lens' SimulationJobBatchSummary (Prelude.Maybe Prelude.Text)+simulationJobBatchSummary_arn = Lens.lens (\SimulationJobBatchSummary' {arn} -> arn) (\s@SimulationJobBatchSummary' {} a -> s {arn = a} :: SimulationJobBatchSummary)++-- | The time, in milliseconds since the epoch, when the simulation job batch+-- was created.+simulationJobBatchSummary_createdAt :: Lens.Lens' SimulationJobBatchSummary (Prelude.Maybe Prelude.UTCTime)+simulationJobBatchSummary_createdAt = Lens.lens (\SimulationJobBatchSummary' {createdAt} -> createdAt) (\s@SimulationJobBatchSummary' {} a -> s {createdAt = a} :: SimulationJobBatchSummary) Prelude.. Lens.mapping Data._Time++-- | The number of created simulation job requests.+simulationJobBatchSummary_createdRequestCount :: Lens.Lens' SimulationJobBatchSummary (Prelude.Maybe Prelude.Int)+simulationJobBatchSummary_createdRequestCount = Lens.lens (\SimulationJobBatchSummary' {createdRequestCount} -> createdRequestCount) (\s@SimulationJobBatchSummary' {} a -> s {createdRequestCount = a} :: SimulationJobBatchSummary)++-- | The number of failed simulation job requests.+simulationJobBatchSummary_failedRequestCount :: Lens.Lens' SimulationJobBatchSummary (Prelude.Maybe Prelude.Int)+simulationJobBatchSummary_failedRequestCount = Lens.lens (\SimulationJobBatchSummary' {failedRequestCount} -> failedRequestCount) (\s@SimulationJobBatchSummary' {} a -> s {failedRequestCount = a} :: SimulationJobBatchSummary)++-- | The time, in milliseconds since the epoch, when the simulation job batch+-- was last updated.+simulationJobBatchSummary_lastUpdatedAt :: Lens.Lens' SimulationJobBatchSummary (Prelude.Maybe Prelude.UTCTime)+simulationJobBatchSummary_lastUpdatedAt = Lens.lens (\SimulationJobBatchSummary' {lastUpdatedAt} -> lastUpdatedAt) (\s@SimulationJobBatchSummary' {} a -> s {lastUpdatedAt = a} :: SimulationJobBatchSummary) Prelude.. Lens.mapping Data._Time++-- | The number of pending simulation job requests.+simulationJobBatchSummary_pendingRequestCount :: Lens.Lens' SimulationJobBatchSummary (Prelude.Maybe Prelude.Int)+simulationJobBatchSummary_pendingRequestCount = Lens.lens (\SimulationJobBatchSummary' {pendingRequestCount} -> pendingRequestCount) (\s@SimulationJobBatchSummary' {} a -> s {pendingRequestCount = a} :: SimulationJobBatchSummary)++-- | The status of the simulation job batch.+--+-- [Pending]+-- The simulation job batch request is pending.+--+-- [InProgress]+-- The simulation job batch is in progress.+--+-- [Failed]+-- The simulation job batch failed. One or more simulation job requests+-- could not be completed due to an internal failure (like+-- @InternalServiceError@). See @failureCode@ and @failureReason@ for+-- more information.+--+-- [Completed]+-- The simulation batch job completed. A batch is complete when (1)+-- there are no pending simulation job requests in the batch and none+-- of the failed simulation job requests are due to+-- @InternalServiceError@ and (2) when all created simulation jobs have+-- reached a terminal state (for example, @Completed@ or @Failed@).+--+-- [Canceled]+-- The simulation batch job was cancelled.+--+-- [Canceling]+-- The simulation batch job is being cancelled.+--+-- [Completing]+-- The simulation batch job is completing.+--+-- [TimingOut]+-- The simulation job batch is timing out.+--+-- If a batch timing out, and there are pending requests that were+-- failing due to an internal failure (like @InternalServiceError@),+-- the batch status will be @Failed@. If there are no such failing+-- request, the batch status will be @TimedOut@.+--+-- [TimedOut]+-- The simulation batch job timed out.+simulationJobBatchSummary_status :: Lens.Lens' SimulationJobBatchSummary (Prelude.Maybe SimulationJobBatchStatus)+simulationJobBatchSummary_status = Lens.lens (\SimulationJobBatchSummary' {status} -> status) (\s@SimulationJobBatchSummary' {} a -> s {status = a} :: SimulationJobBatchSummary)++instance Data.FromJSON SimulationJobBatchSummary where+ parseJSON =+ Data.withObject+ "SimulationJobBatchSummary"+ ( \x ->+ SimulationJobBatchSummary'+ Prelude.<$> (x Data..:? "arn")+ Prelude.<*> (x Data..:? "createdAt")+ Prelude.<*> (x Data..:? "createdRequestCount")+ Prelude.<*> (x Data..:? "failedRequestCount")+ Prelude.<*> (x Data..:? "lastUpdatedAt")+ Prelude.<*> (x Data..:? "pendingRequestCount")+ Prelude.<*> (x Data..:? "status")+ )++instance Prelude.Hashable SimulationJobBatchSummary where+ hashWithSalt _salt SimulationJobBatchSummary' {..} =+ _salt+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` createdAt+ `Prelude.hashWithSalt` createdRequestCount+ `Prelude.hashWithSalt` failedRequestCount+ `Prelude.hashWithSalt` lastUpdatedAt+ `Prelude.hashWithSalt` pendingRequestCount+ `Prelude.hashWithSalt` status++instance Prelude.NFData SimulationJobBatchSummary where+ rnf SimulationJobBatchSummary' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf createdAt+ `Prelude.seq` Prelude.rnf createdRequestCount+ `Prelude.seq` Prelude.rnf failedRequestCount+ `Prelude.seq` Prelude.rnf lastUpdatedAt+ `Prelude.seq` Prelude.rnf pendingRequestCount+ `Prelude.seq` Prelude.rnf status
+ gen/Amazonka/RobOMaker/Types/SimulationJobErrorCode.hs view
@@ -0,0 +1,216 @@+{-# 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.RobOMaker.Types.SimulationJobErrorCode+-- 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.RobOMaker.Types.SimulationJobErrorCode+ ( SimulationJobErrorCode+ ( ..,+ SimulationJobErrorCode_BadPermissionsCloudwatchLogs,+ SimulationJobErrorCode_BadPermissionsRobotApplication,+ SimulationJobErrorCode_BadPermissionsS3Object,+ SimulationJobErrorCode_BadPermissionsS3Output,+ SimulationJobErrorCode_BadPermissionsSimulationApplication,+ SimulationJobErrorCode_BadPermissionsUserCredentials,+ SimulationJobErrorCode_BatchCanceled,+ SimulationJobErrorCode_BatchTimedOut,+ SimulationJobErrorCode_ENILimitExceeded,+ SimulationJobErrorCode_InternalServiceError,+ SimulationJobErrorCode_InvalidBundleRobotApplication,+ SimulationJobErrorCode_InvalidBundleSimulationApplication,+ SimulationJobErrorCode_InvalidInput,+ SimulationJobErrorCode_InvalidS3Resource,+ SimulationJobErrorCode_LimitExceeded,+ SimulationJobErrorCode_MismatchedEtag,+ SimulationJobErrorCode_RequestThrottled,+ SimulationJobErrorCode_ResourceNotFound,+ SimulationJobErrorCode_RobotApplicationCrash,+ SimulationJobErrorCode_RobotApplicationHealthCheckFailure,+ SimulationJobErrorCode_RobotApplicationVersionMismatchedEtag,+ SimulationJobErrorCode_SimulationApplicationCrash,+ SimulationJobErrorCode_SimulationApplicationHealthCheckFailure,+ SimulationJobErrorCode_SimulationApplicationVersionMismatchedEtag,+ SimulationJobErrorCode_SubnetIpLimitExceeded,+ SimulationJobErrorCode_ThrottlingError,+ SimulationJobErrorCode_UploadContentMismatchError,+ SimulationJobErrorCode_WrongRegionRobotApplication,+ SimulationJobErrorCode_WrongRegionS3Bucket,+ SimulationJobErrorCode_WrongRegionS3Output,+ SimulationJobErrorCode_WrongRegionSimulationApplication+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype SimulationJobErrorCode = SimulationJobErrorCode'+ { fromSimulationJobErrorCode ::+ 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 SimulationJobErrorCode_BadPermissionsCloudwatchLogs :: SimulationJobErrorCode+pattern SimulationJobErrorCode_BadPermissionsCloudwatchLogs = SimulationJobErrorCode' "BadPermissionsCloudwatchLogs"++pattern SimulationJobErrorCode_BadPermissionsRobotApplication :: SimulationJobErrorCode+pattern SimulationJobErrorCode_BadPermissionsRobotApplication = SimulationJobErrorCode' "BadPermissionsRobotApplication"++pattern SimulationJobErrorCode_BadPermissionsS3Object :: SimulationJobErrorCode+pattern SimulationJobErrorCode_BadPermissionsS3Object = SimulationJobErrorCode' "BadPermissionsS3Object"++pattern SimulationJobErrorCode_BadPermissionsS3Output :: SimulationJobErrorCode+pattern SimulationJobErrorCode_BadPermissionsS3Output = SimulationJobErrorCode' "BadPermissionsS3Output"++pattern SimulationJobErrorCode_BadPermissionsSimulationApplication :: SimulationJobErrorCode+pattern SimulationJobErrorCode_BadPermissionsSimulationApplication = SimulationJobErrorCode' "BadPermissionsSimulationApplication"++pattern SimulationJobErrorCode_BadPermissionsUserCredentials :: SimulationJobErrorCode+pattern SimulationJobErrorCode_BadPermissionsUserCredentials = SimulationJobErrorCode' "BadPermissionsUserCredentials"++pattern SimulationJobErrorCode_BatchCanceled :: SimulationJobErrorCode+pattern SimulationJobErrorCode_BatchCanceled = SimulationJobErrorCode' "BatchCanceled"++pattern SimulationJobErrorCode_BatchTimedOut :: SimulationJobErrorCode+pattern SimulationJobErrorCode_BatchTimedOut = SimulationJobErrorCode' "BatchTimedOut"++pattern SimulationJobErrorCode_ENILimitExceeded :: SimulationJobErrorCode+pattern SimulationJobErrorCode_ENILimitExceeded = SimulationJobErrorCode' "ENILimitExceeded"++pattern SimulationJobErrorCode_InternalServiceError :: SimulationJobErrorCode+pattern SimulationJobErrorCode_InternalServiceError = SimulationJobErrorCode' "InternalServiceError"++pattern SimulationJobErrorCode_InvalidBundleRobotApplication :: SimulationJobErrorCode+pattern SimulationJobErrorCode_InvalidBundleRobotApplication = SimulationJobErrorCode' "InvalidBundleRobotApplication"++pattern SimulationJobErrorCode_InvalidBundleSimulationApplication :: SimulationJobErrorCode+pattern SimulationJobErrorCode_InvalidBundleSimulationApplication = SimulationJobErrorCode' "InvalidBundleSimulationApplication"++pattern SimulationJobErrorCode_InvalidInput :: SimulationJobErrorCode+pattern SimulationJobErrorCode_InvalidInput = SimulationJobErrorCode' "InvalidInput"++pattern SimulationJobErrorCode_InvalidS3Resource :: SimulationJobErrorCode+pattern SimulationJobErrorCode_InvalidS3Resource = SimulationJobErrorCode' "InvalidS3Resource"++pattern SimulationJobErrorCode_LimitExceeded :: SimulationJobErrorCode+pattern SimulationJobErrorCode_LimitExceeded = SimulationJobErrorCode' "LimitExceeded"++pattern SimulationJobErrorCode_MismatchedEtag :: SimulationJobErrorCode+pattern SimulationJobErrorCode_MismatchedEtag = SimulationJobErrorCode' "MismatchedEtag"++pattern SimulationJobErrorCode_RequestThrottled :: SimulationJobErrorCode+pattern SimulationJobErrorCode_RequestThrottled = SimulationJobErrorCode' "RequestThrottled"++pattern SimulationJobErrorCode_ResourceNotFound :: SimulationJobErrorCode+pattern SimulationJobErrorCode_ResourceNotFound = SimulationJobErrorCode' "ResourceNotFound"++pattern SimulationJobErrorCode_RobotApplicationCrash :: SimulationJobErrorCode+pattern SimulationJobErrorCode_RobotApplicationCrash = SimulationJobErrorCode' "RobotApplicationCrash"++pattern SimulationJobErrorCode_RobotApplicationHealthCheckFailure :: SimulationJobErrorCode+pattern SimulationJobErrorCode_RobotApplicationHealthCheckFailure = SimulationJobErrorCode' "RobotApplicationHealthCheckFailure"++pattern SimulationJobErrorCode_RobotApplicationVersionMismatchedEtag :: SimulationJobErrorCode+pattern SimulationJobErrorCode_RobotApplicationVersionMismatchedEtag = SimulationJobErrorCode' "RobotApplicationVersionMismatchedEtag"++pattern SimulationJobErrorCode_SimulationApplicationCrash :: SimulationJobErrorCode+pattern SimulationJobErrorCode_SimulationApplicationCrash = SimulationJobErrorCode' "SimulationApplicationCrash"++pattern SimulationJobErrorCode_SimulationApplicationHealthCheckFailure :: SimulationJobErrorCode+pattern SimulationJobErrorCode_SimulationApplicationHealthCheckFailure = SimulationJobErrorCode' "SimulationApplicationHealthCheckFailure"++pattern SimulationJobErrorCode_SimulationApplicationVersionMismatchedEtag :: SimulationJobErrorCode+pattern SimulationJobErrorCode_SimulationApplicationVersionMismatchedEtag = SimulationJobErrorCode' "SimulationApplicationVersionMismatchedEtag"++pattern SimulationJobErrorCode_SubnetIpLimitExceeded :: SimulationJobErrorCode+pattern SimulationJobErrorCode_SubnetIpLimitExceeded = SimulationJobErrorCode' "SubnetIpLimitExceeded"++pattern SimulationJobErrorCode_ThrottlingError :: SimulationJobErrorCode+pattern SimulationJobErrorCode_ThrottlingError = SimulationJobErrorCode' "ThrottlingError"++pattern SimulationJobErrorCode_UploadContentMismatchError :: SimulationJobErrorCode+pattern SimulationJobErrorCode_UploadContentMismatchError = SimulationJobErrorCode' "UploadContentMismatchError"++pattern SimulationJobErrorCode_WrongRegionRobotApplication :: SimulationJobErrorCode+pattern SimulationJobErrorCode_WrongRegionRobotApplication = SimulationJobErrorCode' "WrongRegionRobotApplication"++pattern SimulationJobErrorCode_WrongRegionS3Bucket :: SimulationJobErrorCode+pattern SimulationJobErrorCode_WrongRegionS3Bucket = SimulationJobErrorCode' "WrongRegionS3Bucket"++pattern SimulationJobErrorCode_WrongRegionS3Output :: SimulationJobErrorCode+pattern SimulationJobErrorCode_WrongRegionS3Output = SimulationJobErrorCode' "WrongRegionS3Output"++pattern SimulationJobErrorCode_WrongRegionSimulationApplication :: SimulationJobErrorCode+pattern SimulationJobErrorCode_WrongRegionSimulationApplication = SimulationJobErrorCode' "WrongRegionSimulationApplication"++{-# COMPLETE+ SimulationJobErrorCode_BadPermissionsCloudwatchLogs,+ SimulationJobErrorCode_BadPermissionsRobotApplication,+ SimulationJobErrorCode_BadPermissionsS3Object,+ SimulationJobErrorCode_BadPermissionsS3Output,+ SimulationJobErrorCode_BadPermissionsSimulationApplication,+ SimulationJobErrorCode_BadPermissionsUserCredentials,+ SimulationJobErrorCode_BatchCanceled,+ SimulationJobErrorCode_BatchTimedOut,+ SimulationJobErrorCode_ENILimitExceeded,+ SimulationJobErrorCode_InternalServiceError,+ SimulationJobErrorCode_InvalidBundleRobotApplication,+ SimulationJobErrorCode_InvalidBundleSimulationApplication,+ SimulationJobErrorCode_InvalidInput,+ SimulationJobErrorCode_InvalidS3Resource,+ SimulationJobErrorCode_LimitExceeded,+ SimulationJobErrorCode_MismatchedEtag,+ SimulationJobErrorCode_RequestThrottled,+ SimulationJobErrorCode_ResourceNotFound,+ SimulationJobErrorCode_RobotApplicationCrash,+ SimulationJobErrorCode_RobotApplicationHealthCheckFailure,+ SimulationJobErrorCode_RobotApplicationVersionMismatchedEtag,+ SimulationJobErrorCode_SimulationApplicationCrash,+ SimulationJobErrorCode_SimulationApplicationHealthCheckFailure,+ SimulationJobErrorCode_SimulationApplicationVersionMismatchedEtag,+ SimulationJobErrorCode_SubnetIpLimitExceeded,+ SimulationJobErrorCode_ThrottlingError,+ SimulationJobErrorCode_UploadContentMismatchError,+ SimulationJobErrorCode_WrongRegionRobotApplication,+ SimulationJobErrorCode_WrongRegionS3Bucket,+ SimulationJobErrorCode_WrongRegionS3Output,+ SimulationJobErrorCode_WrongRegionSimulationApplication,+ SimulationJobErrorCode'+ #-}
+ gen/Amazonka/RobOMaker/Types/SimulationJobRequest.hs view
@@ -0,0 +1,292 @@+{-# 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.RobOMaker.Types.SimulationJobRequest+-- 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.RobOMaker.Types.SimulationJobRequest where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import Amazonka.RobOMaker.Types.Compute+import Amazonka.RobOMaker.Types.DataSourceConfig+import Amazonka.RobOMaker.Types.FailureBehavior+import Amazonka.RobOMaker.Types.LoggingConfig+import Amazonka.RobOMaker.Types.OutputLocation+import Amazonka.RobOMaker.Types.RobotApplicationConfig+import Amazonka.RobOMaker.Types.SimulationApplicationConfig+import Amazonka.RobOMaker.Types.VPCConfig++-- | Information about a simulation job request.+--+-- /See:/ 'newSimulationJobRequest' smart constructor.+data SimulationJobRequest = SimulationJobRequest'+ { -- | Compute information for the simulation job+ compute :: Prelude.Maybe Compute,+ -- | Specify data sources to mount read-only files from S3 into your+ -- simulation. These files are available under+ -- @\/opt\/robomaker\/datasources\/data_source_name@.+ --+ -- There is a limit of 100 files and a combined size of 25GB for all+ -- @DataSourceConfig@ objects.+ dataSources :: Prelude.Maybe (Prelude.NonEmpty DataSourceConfig),+ -- | The failure behavior the simulation job.+ --+ -- [Continue]+ -- Leaves the host running for its maximum timeout duration after a+ -- @4XX@ error code.+ --+ -- [Fail]+ -- Stop the simulation job and terminate the instance.+ failureBehavior :: Prelude.Maybe FailureBehavior,+ -- | The IAM role name that allows the simulation instance to call the AWS+ -- APIs that are specified in its associated policies on your behalf. This+ -- is how credentials are passed in to your simulation job.+ iamRole :: Prelude.Maybe Prelude.Text,+ loggingConfig :: Prelude.Maybe LoggingConfig,+ outputLocation :: Prelude.Maybe OutputLocation,+ -- | The robot applications to use in the simulation job.+ robotApplications :: Prelude.Maybe (Prelude.NonEmpty RobotApplicationConfig),+ -- | The simulation applications to use in the simulation job.+ simulationApplications :: Prelude.Maybe (Prelude.NonEmpty SimulationApplicationConfig),+ -- | A map that contains tag keys and tag values that are attached to the+ -- simulation job request.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | A Boolean indicating whether to use default applications in the+ -- simulation job. Default applications include Gazebo, rqt, rviz and+ -- terminal access.+ useDefaultApplications :: Prelude.Maybe Prelude.Bool,+ vpcConfig :: Prelude.Maybe VPCConfig,+ -- | The maximum simulation job duration in seconds. The value must be 8 days+ -- (691,200 seconds) or less.+ maxJobDurationInSeconds :: Prelude.Integer+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SimulationJobRequest' 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:+--+-- 'compute', 'simulationJobRequest_compute' - Compute information for the simulation job+--+-- 'dataSources', 'simulationJobRequest_dataSources' - Specify data sources to mount read-only files from S3 into your+-- simulation. These files are available under+-- @\/opt\/robomaker\/datasources\/data_source_name@.+--+-- There is a limit of 100 files and a combined size of 25GB for all+-- @DataSourceConfig@ objects.+--+-- 'failureBehavior', 'simulationJobRequest_failureBehavior' - The failure behavior the simulation job.+--+-- [Continue]+-- Leaves the host running for its maximum timeout duration after a+-- @4XX@ error code.+--+-- [Fail]+-- Stop the simulation job and terminate the instance.+--+-- 'iamRole', 'simulationJobRequest_iamRole' - The IAM role name that allows the simulation instance to call the AWS+-- APIs that are specified in its associated policies on your behalf. This+-- is how credentials are passed in to your simulation job.+--+-- 'loggingConfig', 'simulationJobRequest_loggingConfig' - Undocumented member.+--+-- 'outputLocation', 'simulationJobRequest_outputLocation' - Undocumented member.+--+-- 'robotApplications', 'simulationJobRequest_robotApplications' - The robot applications to use in the simulation job.+--+-- 'simulationApplications', 'simulationJobRequest_simulationApplications' - The simulation applications to use in the simulation job.+--+-- 'tags', 'simulationJobRequest_tags' - A map that contains tag keys and tag values that are attached to the+-- simulation job request.+--+-- 'useDefaultApplications', 'simulationJobRequest_useDefaultApplications' - A Boolean indicating whether to use default applications in the+-- simulation job. Default applications include Gazebo, rqt, rviz and+-- terminal access.+--+-- 'vpcConfig', 'simulationJobRequest_vpcConfig' - Undocumented member.+--+-- 'maxJobDurationInSeconds', 'simulationJobRequest_maxJobDurationInSeconds' - The maximum simulation job duration in seconds. The value must be 8 days+-- (691,200 seconds) or less.+newSimulationJobRequest ::+ -- | 'maxJobDurationInSeconds'+ Prelude.Integer ->+ SimulationJobRequest+newSimulationJobRequest pMaxJobDurationInSeconds_ =+ SimulationJobRequest'+ { compute = Prelude.Nothing,+ dataSources = Prelude.Nothing,+ failureBehavior = Prelude.Nothing,+ iamRole = Prelude.Nothing,+ loggingConfig = Prelude.Nothing,+ outputLocation = Prelude.Nothing,+ robotApplications = Prelude.Nothing,+ simulationApplications = Prelude.Nothing,+ tags = Prelude.Nothing,+ useDefaultApplications = Prelude.Nothing,+ vpcConfig = Prelude.Nothing,+ maxJobDurationInSeconds = pMaxJobDurationInSeconds_+ }++-- | Compute information for the simulation job+simulationJobRequest_compute :: Lens.Lens' SimulationJobRequest (Prelude.Maybe Compute)+simulationJobRequest_compute = Lens.lens (\SimulationJobRequest' {compute} -> compute) (\s@SimulationJobRequest' {} a -> s {compute = a} :: SimulationJobRequest)++-- | Specify data sources to mount read-only files from S3 into your+-- simulation. These files are available under+-- @\/opt\/robomaker\/datasources\/data_source_name@.+--+-- There is a limit of 100 files and a combined size of 25GB for all+-- @DataSourceConfig@ objects.+simulationJobRequest_dataSources :: Lens.Lens' SimulationJobRequest (Prelude.Maybe (Prelude.NonEmpty DataSourceConfig))+simulationJobRequest_dataSources = Lens.lens (\SimulationJobRequest' {dataSources} -> dataSources) (\s@SimulationJobRequest' {} a -> s {dataSources = a} :: SimulationJobRequest) Prelude.. Lens.mapping Lens.coerced++-- | The failure behavior the simulation job.+--+-- [Continue]+-- Leaves the host running for its maximum timeout duration after a+-- @4XX@ error code.+--+-- [Fail]+-- Stop the simulation job and terminate the instance.+simulationJobRequest_failureBehavior :: Lens.Lens' SimulationJobRequest (Prelude.Maybe FailureBehavior)+simulationJobRequest_failureBehavior = Lens.lens (\SimulationJobRequest' {failureBehavior} -> failureBehavior) (\s@SimulationJobRequest' {} a -> s {failureBehavior = a} :: SimulationJobRequest)++-- | The IAM role name that allows the simulation instance to call the AWS+-- APIs that are specified in its associated policies on your behalf. This+-- is how credentials are passed in to your simulation job.+simulationJobRequest_iamRole :: Lens.Lens' SimulationJobRequest (Prelude.Maybe Prelude.Text)+simulationJobRequest_iamRole = Lens.lens (\SimulationJobRequest' {iamRole} -> iamRole) (\s@SimulationJobRequest' {} a -> s {iamRole = a} :: SimulationJobRequest)++-- | Undocumented member.+simulationJobRequest_loggingConfig :: Lens.Lens' SimulationJobRequest (Prelude.Maybe LoggingConfig)+simulationJobRequest_loggingConfig = Lens.lens (\SimulationJobRequest' {loggingConfig} -> loggingConfig) (\s@SimulationJobRequest' {} a -> s {loggingConfig = a} :: SimulationJobRequest)++-- | Undocumented member.+simulationJobRequest_outputLocation :: Lens.Lens' SimulationJobRequest (Prelude.Maybe OutputLocation)+simulationJobRequest_outputLocation = Lens.lens (\SimulationJobRequest' {outputLocation} -> outputLocation) (\s@SimulationJobRequest' {} a -> s {outputLocation = a} :: SimulationJobRequest)++-- | The robot applications to use in the simulation job.+simulationJobRequest_robotApplications :: Lens.Lens' SimulationJobRequest (Prelude.Maybe (Prelude.NonEmpty RobotApplicationConfig))+simulationJobRequest_robotApplications = Lens.lens (\SimulationJobRequest' {robotApplications} -> robotApplications) (\s@SimulationJobRequest' {} a -> s {robotApplications = a} :: SimulationJobRequest) Prelude.. Lens.mapping Lens.coerced++-- | The simulation applications to use in the simulation job.+simulationJobRequest_simulationApplications :: Lens.Lens' SimulationJobRequest (Prelude.Maybe (Prelude.NonEmpty SimulationApplicationConfig))+simulationJobRequest_simulationApplications = Lens.lens (\SimulationJobRequest' {simulationApplications} -> simulationApplications) (\s@SimulationJobRequest' {} a -> s {simulationApplications = a} :: SimulationJobRequest) Prelude.. Lens.mapping Lens.coerced++-- | A map that contains tag keys and tag values that are attached to the+-- simulation job request.+simulationJobRequest_tags :: Lens.Lens' SimulationJobRequest (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+simulationJobRequest_tags = Lens.lens (\SimulationJobRequest' {tags} -> tags) (\s@SimulationJobRequest' {} a -> s {tags = a} :: SimulationJobRequest) Prelude.. Lens.mapping Lens.coerced++-- | A Boolean indicating whether to use default applications in the+-- simulation job. Default applications include Gazebo, rqt, rviz and+-- terminal access.+simulationJobRequest_useDefaultApplications :: Lens.Lens' SimulationJobRequest (Prelude.Maybe Prelude.Bool)+simulationJobRequest_useDefaultApplications = Lens.lens (\SimulationJobRequest' {useDefaultApplications} -> useDefaultApplications) (\s@SimulationJobRequest' {} a -> s {useDefaultApplications = a} :: SimulationJobRequest)++-- | Undocumented member.+simulationJobRequest_vpcConfig :: Lens.Lens' SimulationJobRequest (Prelude.Maybe VPCConfig)+simulationJobRequest_vpcConfig = Lens.lens (\SimulationJobRequest' {vpcConfig} -> vpcConfig) (\s@SimulationJobRequest' {} a -> s {vpcConfig = a} :: SimulationJobRequest)++-- | The maximum simulation job duration in seconds. The value must be 8 days+-- (691,200 seconds) or less.+simulationJobRequest_maxJobDurationInSeconds :: Lens.Lens' SimulationJobRequest Prelude.Integer+simulationJobRequest_maxJobDurationInSeconds = Lens.lens (\SimulationJobRequest' {maxJobDurationInSeconds} -> maxJobDurationInSeconds) (\s@SimulationJobRequest' {} a -> s {maxJobDurationInSeconds = a} :: SimulationJobRequest)++instance Data.FromJSON SimulationJobRequest where+ parseJSON =+ Data.withObject+ "SimulationJobRequest"+ ( \x ->+ SimulationJobRequest'+ Prelude.<$> (x Data..:? "compute")+ Prelude.<*> (x Data..:? "dataSources")+ Prelude.<*> (x Data..:? "failureBehavior")+ Prelude.<*> (x Data..:? "iamRole")+ Prelude.<*> (x Data..:? "loggingConfig")+ Prelude.<*> (x Data..:? "outputLocation")+ Prelude.<*> (x Data..:? "robotApplications")+ Prelude.<*> (x Data..:? "simulationApplications")+ Prelude.<*> (x Data..:? "tags" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "useDefaultApplications")+ Prelude.<*> (x Data..:? "vpcConfig")+ Prelude.<*> (x Data..: "maxJobDurationInSeconds")+ )++instance Prelude.Hashable SimulationJobRequest where+ hashWithSalt _salt SimulationJobRequest' {..} =+ _salt+ `Prelude.hashWithSalt` compute+ `Prelude.hashWithSalt` dataSources+ `Prelude.hashWithSalt` failureBehavior+ `Prelude.hashWithSalt` iamRole+ `Prelude.hashWithSalt` loggingConfig+ `Prelude.hashWithSalt` outputLocation+ `Prelude.hashWithSalt` robotApplications+ `Prelude.hashWithSalt` simulationApplications+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` useDefaultApplications+ `Prelude.hashWithSalt` vpcConfig+ `Prelude.hashWithSalt` maxJobDurationInSeconds++instance Prelude.NFData SimulationJobRequest where+ rnf SimulationJobRequest' {..} =+ Prelude.rnf compute+ `Prelude.seq` Prelude.rnf dataSources+ `Prelude.seq` Prelude.rnf failureBehavior+ `Prelude.seq` Prelude.rnf iamRole+ `Prelude.seq` Prelude.rnf loggingConfig+ `Prelude.seq` Prelude.rnf outputLocation+ `Prelude.seq` Prelude.rnf robotApplications+ `Prelude.seq` Prelude.rnf simulationApplications+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf useDefaultApplications+ `Prelude.seq` Prelude.rnf vpcConfig+ `Prelude.seq` Prelude.rnf maxJobDurationInSeconds++instance Data.ToJSON SimulationJobRequest where+ toJSON SimulationJobRequest' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("compute" Data..=) Prelude.<$> compute,+ ("dataSources" Data..=) Prelude.<$> dataSources,+ ("failureBehavior" Data..=)+ Prelude.<$> failureBehavior,+ ("iamRole" Data..=) Prelude.<$> iamRole,+ ("loggingConfig" Data..=) Prelude.<$> loggingConfig,+ ("outputLocation" Data..=)+ Prelude.<$> outputLocation,+ ("robotApplications" Data..=)+ Prelude.<$> robotApplications,+ ("simulationApplications" Data..=)+ Prelude.<$> simulationApplications,+ ("tags" Data..=) Prelude.<$> tags,+ ("useDefaultApplications" Data..=)+ Prelude.<$> useDefaultApplications,+ ("vpcConfig" Data..=) Prelude.<$> vpcConfig,+ Prelude.Just+ ( "maxJobDurationInSeconds"+ Data..= maxJobDurationInSeconds+ )+ ]+ )
+ gen/Amazonka/RobOMaker/Types/SimulationJobStatus.hs view
@@ -0,0 +1,111 @@+{-# 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.RobOMaker.Types.SimulationJobStatus+-- 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.RobOMaker.Types.SimulationJobStatus+ ( SimulationJobStatus+ ( ..,+ SimulationJobStatus_Canceled,+ SimulationJobStatus_Completed,+ SimulationJobStatus_Failed,+ SimulationJobStatus_Pending,+ SimulationJobStatus_Preparing,+ SimulationJobStatus_Restarting,+ SimulationJobStatus_Running,+ SimulationJobStatus_RunningFailed,+ SimulationJobStatus_Terminated,+ SimulationJobStatus_Terminating+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype SimulationJobStatus = SimulationJobStatus'+ { fromSimulationJobStatus ::+ 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 SimulationJobStatus_Canceled :: SimulationJobStatus+pattern SimulationJobStatus_Canceled = SimulationJobStatus' "Canceled"++pattern SimulationJobStatus_Completed :: SimulationJobStatus+pattern SimulationJobStatus_Completed = SimulationJobStatus' "Completed"++pattern SimulationJobStatus_Failed :: SimulationJobStatus+pattern SimulationJobStatus_Failed = SimulationJobStatus' "Failed"++pattern SimulationJobStatus_Pending :: SimulationJobStatus+pattern SimulationJobStatus_Pending = SimulationJobStatus' "Pending"++pattern SimulationJobStatus_Preparing :: SimulationJobStatus+pattern SimulationJobStatus_Preparing = SimulationJobStatus' "Preparing"++pattern SimulationJobStatus_Restarting :: SimulationJobStatus+pattern SimulationJobStatus_Restarting = SimulationJobStatus' "Restarting"++pattern SimulationJobStatus_Running :: SimulationJobStatus+pattern SimulationJobStatus_Running = SimulationJobStatus' "Running"++pattern SimulationJobStatus_RunningFailed :: SimulationJobStatus+pattern SimulationJobStatus_RunningFailed = SimulationJobStatus' "RunningFailed"++pattern SimulationJobStatus_Terminated :: SimulationJobStatus+pattern SimulationJobStatus_Terminated = SimulationJobStatus' "Terminated"++pattern SimulationJobStatus_Terminating :: SimulationJobStatus+pattern SimulationJobStatus_Terminating = SimulationJobStatus' "Terminating"++{-# COMPLETE+ SimulationJobStatus_Canceled,+ SimulationJobStatus_Completed,+ SimulationJobStatus_Failed,+ SimulationJobStatus_Pending,+ SimulationJobStatus_Preparing,+ SimulationJobStatus_Restarting,+ SimulationJobStatus_Running,+ SimulationJobStatus_RunningFailed,+ SimulationJobStatus_Terminated,+ SimulationJobStatus_Terminating,+ SimulationJobStatus'+ #-}
+ gen/Amazonka/RobOMaker/Types/SimulationJobSummary.hs view
@@ -0,0 +1,170 @@+{-# 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.RobOMaker.Types.SimulationJobSummary+-- 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.RobOMaker.Types.SimulationJobSummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import Amazonka.RobOMaker.Types.ComputeType+import Amazonka.RobOMaker.Types.SimulationJobStatus++-- | Summary information for a simulation job.+--+-- /See:/ 'newSimulationJobSummary' smart constructor.+data SimulationJobSummary = SimulationJobSummary'+ { -- | The Amazon Resource Name (ARN) of the simulation job.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The compute type for the simulation job summary.+ computeType :: Prelude.Maybe ComputeType,+ -- | The names of the data sources.+ dataSourceNames :: Prelude.Maybe [Prelude.Text],+ -- | The time, in milliseconds since the epoch, when the simulation job was+ -- last updated.+ lastUpdatedAt :: Prelude.Maybe Data.POSIX,+ -- | The name of the simulation job.+ name :: Prelude.Maybe Prelude.Text,+ -- | A list of simulation job robot application names.+ robotApplicationNames :: Prelude.Maybe [Prelude.Text],+ -- | A list of simulation job simulation application names.+ simulationApplicationNames :: Prelude.Maybe [Prelude.Text],+ -- | The status of the simulation job.+ status :: Prelude.Maybe SimulationJobStatus+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SimulationJobSummary' 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', 'simulationJobSummary_arn' - The Amazon Resource Name (ARN) of the simulation job.+--+-- 'computeType', 'simulationJobSummary_computeType' - The compute type for the simulation job summary.+--+-- 'dataSourceNames', 'simulationJobSummary_dataSourceNames' - The names of the data sources.+--+-- 'lastUpdatedAt', 'simulationJobSummary_lastUpdatedAt' - The time, in milliseconds since the epoch, when the simulation job was+-- last updated.+--+-- 'name', 'simulationJobSummary_name' - The name of the simulation job.+--+-- 'robotApplicationNames', 'simulationJobSummary_robotApplicationNames' - A list of simulation job robot application names.+--+-- 'simulationApplicationNames', 'simulationJobSummary_simulationApplicationNames' - A list of simulation job simulation application names.+--+-- 'status', 'simulationJobSummary_status' - The status of the simulation job.+newSimulationJobSummary ::+ SimulationJobSummary+newSimulationJobSummary =+ SimulationJobSummary'+ { arn = Prelude.Nothing,+ computeType = Prelude.Nothing,+ dataSourceNames = Prelude.Nothing,+ lastUpdatedAt = Prelude.Nothing,+ name = Prelude.Nothing,+ robotApplicationNames = Prelude.Nothing,+ simulationApplicationNames = Prelude.Nothing,+ status = Prelude.Nothing+ }++-- | The Amazon Resource Name (ARN) of the simulation job.+simulationJobSummary_arn :: Lens.Lens' SimulationJobSummary (Prelude.Maybe Prelude.Text)+simulationJobSummary_arn = Lens.lens (\SimulationJobSummary' {arn} -> arn) (\s@SimulationJobSummary' {} a -> s {arn = a} :: SimulationJobSummary)++-- | The compute type for the simulation job summary.+simulationJobSummary_computeType :: Lens.Lens' SimulationJobSummary (Prelude.Maybe ComputeType)+simulationJobSummary_computeType = Lens.lens (\SimulationJobSummary' {computeType} -> computeType) (\s@SimulationJobSummary' {} a -> s {computeType = a} :: SimulationJobSummary)++-- | The names of the data sources.+simulationJobSummary_dataSourceNames :: Lens.Lens' SimulationJobSummary (Prelude.Maybe [Prelude.Text])+simulationJobSummary_dataSourceNames = Lens.lens (\SimulationJobSummary' {dataSourceNames} -> dataSourceNames) (\s@SimulationJobSummary' {} a -> s {dataSourceNames = a} :: SimulationJobSummary) Prelude.. Lens.mapping Lens.coerced++-- | The time, in milliseconds since the epoch, when the simulation job was+-- last updated.+simulationJobSummary_lastUpdatedAt :: Lens.Lens' SimulationJobSummary (Prelude.Maybe Prelude.UTCTime)+simulationJobSummary_lastUpdatedAt = Lens.lens (\SimulationJobSummary' {lastUpdatedAt} -> lastUpdatedAt) (\s@SimulationJobSummary' {} a -> s {lastUpdatedAt = a} :: SimulationJobSummary) Prelude.. Lens.mapping Data._Time++-- | The name of the simulation job.+simulationJobSummary_name :: Lens.Lens' SimulationJobSummary (Prelude.Maybe Prelude.Text)+simulationJobSummary_name = Lens.lens (\SimulationJobSummary' {name} -> name) (\s@SimulationJobSummary' {} a -> s {name = a} :: SimulationJobSummary)++-- | A list of simulation job robot application names.+simulationJobSummary_robotApplicationNames :: Lens.Lens' SimulationJobSummary (Prelude.Maybe [Prelude.Text])+simulationJobSummary_robotApplicationNames = Lens.lens (\SimulationJobSummary' {robotApplicationNames} -> robotApplicationNames) (\s@SimulationJobSummary' {} a -> s {robotApplicationNames = a} :: SimulationJobSummary) Prelude.. Lens.mapping Lens.coerced++-- | A list of simulation job simulation application names.+simulationJobSummary_simulationApplicationNames :: Lens.Lens' SimulationJobSummary (Prelude.Maybe [Prelude.Text])+simulationJobSummary_simulationApplicationNames = Lens.lens (\SimulationJobSummary' {simulationApplicationNames} -> simulationApplicationNames) (\s@SimulationJobSummary' {} a -> s {simulationApplicationNames = a} :: SimulationJobSummary) Prelude.. Lens.mapping Lens.coerced++-- | The status of the simulation job.+simulationJobSummary_status :: Lens.Lens' SimulationJobSummary (Prelude.Maybe SimulationJobStatus)+simulationJobSummary_status = Lens.lens (\SimulationJobSummary' {status} -> status) (\s@SimulationJobSummary' {} a -> s {status = a} :: SimulationJobSummary)++instance Data.FromJSON SimulationJobSummary where+ parseJSON =+ Data.withObject+ "SimulationJobSummary"+ ( \x ->+ SimulationJobSummary'+ Prelude.<$> (x Data..:? "arn")+ Prelude.<*> (x Data..:? "computeType")+ Prelude.<*> ( x+ Data..:? "dataSourceNames"+ Data..!= Prelude.mempty+ )+ Prelude.<*> (x Data..:? "lastUpdatedAt")+ Prelude.<*> (x Data..:? "name")+ Prelude.<*> ( x+ Data..:? "robotApplicationNames"+ Data..!= Prelude.mempty+ )+ Prelude.<*> ( x+ Data..:? "simulationApplicationNames"+ Data..!= Prelude.mempty+ )+ Prelude.<*> (x Data..:? "status")+ )++instance Prelude.Hashable SimulationJobSummary where+ hashWithSalt _salt SimulationJobSummary' {..} =+ _salt+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` computeType+ `Prelude.hashWithSalt` dataSourceNames+ `Prelude.hashWithSalt` lastUpdatedAt+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` robotApplicationNames+ `Prelude.hashWithSalt` simulationApplicationNames+ `Prelude.hashWithSalt` status++instance Prelude.NFData SimulationJobSummary where+ rnf SimulationJobSummary' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf computeType+ `Prelude.seq` Prelude.rnf dataSourceNames+ `Prelude.seq` Prelude.rnf lastUpdatedAt+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf robotApplicationNames+ `Prelude.seq` Prelude.rnf simulationApplicationNames+ `Prelude.seq` Prelude.rnf status
+ gen/Amazonka/RobOMaker/Types/SimulationSoftwareSuite.hs view
@@ -0,0 +1,93 @@+{-# 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.RobOMaker.Types.SimulationSoftwareSuite+-- 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.RobOMaker.Types.SimulationSoftwareSuite where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import Amazonka.RobOMaker.Types.SimulationSoftwareSuiteType++-- | Information about a simulation software suite.+--+-- /See:/ 'newSimulationSoftwareSuite' smart constructor.+data SimulationSoftwareSuite = SimulationSoftwareSuite'+ { -- | The name of the simulation software suite.+ name :: Prelude.Maybe SimulationSoftwareSuiteType,+ -- | The version of the simulation software suite.+ version :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SimulationSoftwareSuite' 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:+--+-- 'name', 'simulationSoftwareSuite_name' - The name of the simulation software suite.+--+-- 'version', 'simulationSoftwareSuite_version' - The version of the simulation software suite.+newSimulationSoftwareSuite ::+ SimulationSoftwareSuite+newSimulationSoftwareSuite =+ SimulationSoftwareSuite'+ { name = Prelude.Nothing,+ version = Prelude.Nothing+ }++-- | The name of the simulation software suite.+simulationSoftwareSuite_name :: Lens.Lens' SimulationSoftwareSuite (Prelude.Maybe SimulationSoftwareSuiteType)+simulationSoftwareSuite_name = Lens.lens (\SimulationSoftwareSuite' {name} -> name) (\s@SimulationSoftwareSuite' {} a -> s {name = a} :: SimulationSoftwareSuite)++-- | The version of the simulation software suite.+simulationSoftwareSuite_version :: Lens.Lens' SimulationSoftwareSuite (Prelude.Maybe Prelude.Text)+simulationSoftwareSuite_version = Lens.lens (\SimulationSoftwareSuite' {version} -> version) (\s@SimulationSoftwareSuite' {} a -> s {version = a} :: SimulationSoftwareSuite)++instance Data.FromJSON SimulationSoftwareSuite where+ parseJSON =+ Data.withObject+ "SimulationSoftwareSuite"+ ( \x ->+ SimulationSoftwareSuite'+ Prelude.<$> (x Data..:? "name")+ Prelude.<*> (x Data..:? "version")+ )++instance Prelude.Hashable SimulationSoftwareSuite where+ hashWithSalt _salt SimulationSoftwareSuite' {..} =+ _salt+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` version++instance Prelude.NFData SimulationSoftwareSuite where+ rnf SimulationSoftwareSuite' {..} =+ Prelude.rnf name `Prelude.seq` Prelude.rnf version++instance Data.ToJSON SimulationSoftwareSuite where+ toJSON SimulationSoftwareSuite' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("name" Data..=) Prelude.<$> name,+ ("version" Data..=) Prelude.<$> version+ ]+ )
+ gen/Amazonka/RobOMaker/Types/SimulationSoftwareSuiteType.hs view
@@ -0,0 +1,76 @@+{-# 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.RobOMaker.Types.SimulationSoftwareSuiteType+-- 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.RobOMaker.Types.SimulationSoftwareSuiteType+ ( SimulationSoftwareSuiteType+ ( ..,+ SimulationSoftwareSuiteType_Gazebo,+ SimulationSoftwareSuiteType_RosbagPlay,+ SimulationSoftwareSuiteType_SimulationRuntime+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype SimulationSoftwareSuiteType = SimulationSoftwareSuiteType'+ { fromSimulationSoftwareSuiteType ::+ 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 SimulationSoftwareSuiteType_Gazebo :: SimulationSoftwareSuiteType+pattern SimulationSoftwareSuiteType_Gazebo = SimulationSoftwareSuiteType' "Gazebo"++pattern SimulationSoftwareSuiteType_RosbagPlay :: SimulationSoftwareSuiteType+pattern SimulationSoftwareSuiteType_RosbagPlay = SimulationSoftwareSuiteType' "RosbagPlay"++pattern SimulationSoftwareSuiteType_SimulationRuntime :: SimulationSoftwareSuiteType+pattern SimulationSoftwareSuiteType_SimulationRuntime = SimulationSoftwareSuiteType' "SimulationRuntime"++{-# COMPLETE+ SimulationSoftwareSuiteType_Gazebo,+ SimulationSoftwareSuiteType_RosbagPlay,+ SimulationSoftwareSuiteType_SimulationRuntime,+ SimulationSoftwareSuiteType'+ #-}
+ gen/Amazonka/RobOMaker/Types/Source.hs view
@@ -0,0 +1,109 @@+{-# 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.RobOMaker.Types.Source+-- 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.RobOMaker.Types.Source where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import Amazonka.RobOMaker.Types.Architecture++-- | Information about a source.+--+-- /See:/ 'newSource' smart constructor.+data Source = Source'+ { -- | The taget processor architecture for the application.+ architecture :: Prelude.Maybe Architecture,+ -- | A hash of the object specified by @s3Bucket@ and @s3Key@.+ etag :: Prelude.Maybe Prelude.Text,+ -- | The s3 bucket name.+ s3Bucket :: Prelude.Maybe Prelude.Text,+ -- | The s3 object key.+ s3Key :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Source' 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:+--+-- 'architecture', 'source_architecture' - The taget processor architecture for the application.+--+-- 'etag', 'source_etag' - A hash of the object specified by @s3Bucket@ and @s3Key@.+--+-- 's3Bucket', 'source_s3Bucket' - The s3 bucket name.+--+-- 's3Key', 'source_s3Key' - The s3 object key.+newSource ::+ Source+newSource =+ Source'+ { architecture = Prelude.Nothing,+ etag = Prelude.Nothing,+ s3Bucket = Prelude.Nothing,+ s3Key = Prelude.Nothing+ }++-- | The taget processor architecture for the application.+source_architecture :: Lens.Lens' Source (Prelude.Maybe Architecture)+source_architecture = Lens.lens (\Source' {architecture} -> architecture) (\s@Source' {} a -> s {architecture = a} :: Source)++-- | A hash of the object specified by @s3Bucket@ and @s3Key@.+source_etag :: Lens.Lens' Source (Prelude.Maybe Prelude.Text)+source_etag = Lens.lens (\Source' {etag} -> etag) (\s@Source' {} a -> s {etag = a} :: Source)++-- | The s3 bucket name.+source_s3Bucket :: Lens.Lens' Source (Prelude.Maybe Prelude.Text)+source_s3Bucket = Lens.lens (\Source' {s3Bucket} -> s3Bucket) (\s@Source' {} a -> s {s3Bucket = a} :: Source)++-- | The s3 object key.+source_s3Key :: Lens.Lens' Source (Prelude.Maybe Prelude.Text)+source_s3Key = Lens.lens (\Source' {s3Key} -> s3Key) (\s@Source' {} a -> s {s3Key = a} :: Source)++instance Data.FromJSON Source where+ parseJSON =+ Data.withObject+ "Source"+ ( \x ->+ Source'+ Prelude.<$> (x Data..:? "architecture")+ Prelude.<*> (x Data..:? "etag")+ Prelude.<*> (x Data..:? "s3Bucket")+ Prelude.<*> (x Data..:? "s3Key")+ )++instance Prelude.Hashable Source where+ hashWithSalt _salt Source' {..} =+ _salt+ `Prelude.hashWithSalt` architecture+ `Prelude.hashWithSalt` etag+ `Prelude.hashWithSalt` s3Bucket+ `Prelude.hashWithSalt` s3Key++instance Prelude.NFData Source where+ rnf Source' {..} =+ Prelude.rnf architecture+ `Prelude.seq` Prelude.rnf etag+ `Prelude.seq` Prelude.rnf s3Bucket+ `Prelude.seq` Prelude.rnf s3Key
+ gen/Amazonka/RobOMaker/Types/SourceConfig.hs view
@@ -0,0 +1,96 @@+{-# 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.RobOMaker.Types.SourceConfig+-- 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.RobOMaker.Types.SourceConfig where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import Amazonka.RobOMaker.Types.Architecture++-- | Information about a source configuration.+--+-- /See:/ 'newSourceConfig' smart constructor.+data SourceConfig = SourceConfig'+ { -- | The target processor architecture for the application.+ architecture :: Prelude.Maybe Architecture,+ -- | The Amazon S3 bucket name.+ s3Bucket :: Prelude.Maybe Prelude.Text,+ -- | The s3 object key.+ s3Key :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SourceConfig' 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:+--+-- 'architecture', 'sourceConfig_architecture' - The target processor architecture for the application.+--+-- 's3Bucket', 'sourceConfig_s3Bucket' - The Amazon S3 bucket name.+--+-- 's3Key', 'sourceConfig_s3Key' - The s3 object key.+newSourceConfig ::+ SourceConfig+newSourceConfig =+ SourceConfig'+ { architecture = Prelude.Nothing,+ s3Bucket = Prelude.Nothing,+ s3Key = Prelude.Nothing+ }++-- | The target processor architecture for the application.+sourceConfig_architecture :: Lens.Lens' SourceConfig (Prelude.Maybe Architecture)+sourceConfig_architecture = Lens.lens (\SourceConfig' {architecture} -> architecture) (\s@SourceConfig' {} a -> s {architecture = a} :: SourceConfig)++-- | The Amazon S3 bucket name.+sourceConfig_s3Bucket :: Lens.Lens' SourceConfig (Prelude.Maybe Prelude.Text)+sourceConfig_s3Bucket = Lens.lens (\SourceConfig' {s3Bucket} -> s3Bucket) (\s@SourceConfig' {} a -> s {s3Bucket = a} :: SourceConfig)++-- | The s3 object key.+sourceConfig_s3Key :: Lens.Lens' SourceConfig (Prelude.Maybe Prelude.Text)+sourceConfig_s3Key = Lens.lens (\SourceConfig' {s3Key} -> s3Key) (\s@SourceConfig' {} a -> s {s3Key = a} :: SourceConfig)++instance Prelude.Hashable SourceConfig where+ hashWithSalt _salt SourceConfig' {..} =+ _salt+ `Prelude.hashWithSalt` architecture+ `Prelude.hashWithSalt` s3Bucket+ `Prelude.hashWithSalt` s3Key++instance Prelude.NFData SourceConfig where+ rnf SourceConfig' {..} =+ Prelude.rnf architecture+ `Prelude.seq` Prelude.rnf s3Bucket+ `Prelude.seq` Prelude.rnf s3Key++instance Data.ToJSON SourceConfig where+ toJSON SourceConfig' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("architecture" Data..=) Prelude.<$> architecture,+ ("s3Bucket" Data..=) Prelude.<$> s3Bucket,+ ("s3Key" Data..=) Prelude.<$> s3Key+ ]+ )
+ gen/Amazonka/RobOMaker/Types/TemplateLocation.hs view
@@ -0,0 +1,87 @@+{-# 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.RobOMaker.Types.TemplateLocation+-- 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.RobOMaker.Types.TemplateLocation 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++-- | Information about a template location.+--+-- /See:/ 'newTemplateLocation' smart constructor.+data TemplateLocation = TemplateLocation'+ { -- | The Amazon S3 bucket name.+ s3Bucket :: Prelude.Text,+ -- | The list of S3 keys identifying the data source files.+ s3Key :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TemplateLocation' 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:+--+-- 's3Bucket', 'templateLocation_s3Bucket' - The Amazon S3 bucket name.+--+-- 's3Key', 'templateLocation_s3Key' - The list of S3 keys identifying the data source files.+newTemplateLocation ::+ -- | 's3Bucket'+ Prelude.Text ->+ -- | 's3Key'+ Prelude.Text ->+ TemplateLocation+newTemplateLocation pS3Bucket_ pS3Key_ =+ TemplateLocation'+ { s3Bucket = pS3Bucket_,+ s3Key = pS3Key_+ }++-- | The Amazon S3 bucket name.+templateLocation_s3Bucket :: Lens.Lens' TemplateLocation Prelude.Text+templateLocation_s3Bucket = Lens.lens (\TemplateLocation' {s3Bucket} -> s3Bucket) (\s@TemplateLocation' {} a -> s {s3Bucket = a} :: TemplateLocation)++-- | The list of S3 keys identifying the data source files.+templateLocation_s3Key :: Lens.Lens' TemplateLocation Prelude.Text+templateLocation_s3Key = Lens.lens (\TemplateLocation' {s3Key} -> s3Key) (\s@TemplateLocation' {} a -> s {s3Key = a} :: TemplateLocation)++instance Prelude.Hashable TemplateLocation where+ hashWithSalt _salt TemplateLocation' {..} =+ _salt+ `Prelude.hashWithSalt` s3Bucket+ `Prelude.hashWithSalt` s3Key++instance Prelude.NFData TemplateLocation where+ rnf TemplateLocation' {..} =+ Prelude.rnf s3Bucket+ `Prelude.seq` Prelude.rnf s3Key++instance Data.ToJSON TemplateLocation where+ toJSON TemplateLocation' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("s3Bucket" Data..= s3Bucket),+ Prelude.Just ("s3Key" Data..= s3Key)+ ]+ )
+ gen/Amazonka/RobOMaker/Types/TemplateSummary.hs view
@@ -0,0 +1,126 @@+{-# 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.RobOMaker.Types.TemplateSummary+-- 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.RobOMaker.Types.TemplateSummary 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++-- | Summary information for a template.+--+-- /See:/ 'newTemplateSummary' smart constructor.+data TemplateSummary = TemplateSummary'+ { -- | The Amazon Resource Name (ARN) of the template.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The time, in milliseconds since the epoch, when the template was+ -- created.+ createdAt :: Prelude.Maybe Data.POSIX,+ -- | The time, in milliseconds since the epoch, when the template was last+ -- updated.+ lastUpdatedAt :: Prelude.Maybe Data.POSIX,+ -- | The name of the template.+ name :: Prelude.Maybe Prelude.Text,+ -- | The version of the template that you\'re using.+ version :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TemplateSummary' 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', 'templateSummary_arn' - The Amazon Resource Name (ARN) of the template.+--+-- 'createdAt', 'templateSummary_createdAt' - The time, in milliseconds since the epoch, when the template was+-- created.+--+-- 'lastUpdatedAt', 'templateSummary_lastUpdatedAt' - The time, in milliseconds since the epoch, when the template was last+-- updated.+--+-- 'name', 'templateSummary_name' - The name of the template.+--+-- 'version', 'templateSummary_version' - The version of the template that you\'re using.+newTemplateSummary ::+ TemplateSummary+newTemplateSummary =+ TemplateSummary'+ { arn = Prelude.Nothing,+ createdAt = Prelude.Nothing,+ lastUpdatedAt = Prelude.Nothing,+ name = Prelude.Nothing,+ version = Prelude.Nothing+ }++-- | The Amazon Resource Name (ARN) of the template.+templateSummary_arn :: Lens.Lens' TemplateSummary (Prelude.Maybe Prelude.Text)+templateSummary_arn = Lens.lens (\TemplateSummary' {arn} -> arn) (\s@TemplateSummary' {} a -> s {arn = a} :: TemplateSummary)++-- | The time, in milliseconds since the epoch, when the template was+-- created.+templateSummary_createdAt :: Lens.Lens' TemplateSummary (Prelude.Maybe Prelude.UTCTime)+templateSummary_createdAt = Lens.lens (\TemplateSummary' {createdAt} -> createdAt) (\s@TemplateSummary' {} a -> s {createdAt = a} :: TemplateSummary) Prelude.. Lens.mapping Data._Time++-- | The time, in milliseconds since the epoch, when the template was last+-- updated.+templateSummary_lastUpdatedAt :: Lens.Lens' TemplateSummary (Prelude.Maybe Prelude.UTCTime)+templateSummary_lastUpdatedAt = Lens.lens (\TemplateSummary' {lastUpdatedAt} -> lastUpdatedAt) (\s@TemplateSummary' {} a -> s {lastUpdatedAt = a} :: TemplateSummary) Prelude.. Lens.mapping Data._Time++-- | The name of the template.+templateSummary_name :: Lens.Lens' TemplateSummary (Prelude.Maybe Prelude.Text)+templateSummary_name = Lens.lens (\TemplateSummary' {name} -> name) (\s@TemplateSummary' {} a -> s {name = a} :: TemplateSummary)++-- | The version of the template that you\'re using.+templateSummary_version :: Lens.Lens' TemplateSummary (Prelude.Maybe Prelude.Text)+templateSummary_version = Lens.lens (\TemplateSummary' {version} -> version) (\s@TemplateSummary' {} a -> s {version = a} :: TemplateSummary)++instance Data.FromJSON TemplateSummary where+ parseJSON =+ Data.withObject+ "TemplateSummary"+ ( \x ->+ TemplateSummary'+ Prelude.<$> (x Data..:? "arn")+ Prelude.<*> (x Data..:? "createdAt")+ Prelude.<*> (x Data..:? "lastUpdatedAt")+ Prelude.<*> (x Data..:? "name")+ Prelude.<*> (x Data..:? "version")+ )++instance Prelude.Hashable TemplateSummary where+ hashWithSalt _salt TemplateSummary' {..} =+ _salt+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` createdAt+ `Prelude.hashWithSalt` lastUpdatedAt+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` version++instance Prelude.NFData TemplateSummary where+ rnf TemplateSummary' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf createdAt+ `Prelude.seq` Prelude.rnf lastUpdatedAt+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf version
+ gen/Amazonka/RobOMaker/Types/Tool.hs view
@@ -0,0 +1,159 @@+{-# 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.RobOMaker.Types.Tool+-- 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.RobOMaker.Types.Tool where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import Amazonka.RobOMaker.Types.ExitBehavior++-- | Information about a tool. Tools are used in a simulation job.+--+-- /See:/ 'newTool' smart constructor.+data Tool = Tool'+ { -- | Exit behavior determines what happens when your tool quits running.+ -- @RESTART@ will cause your tool to be restarted. @FAIL@ will cause your+ -- job to exit. The default is @RESTART@.+ exitBehavior :: Prelude.Maybe ExitBehavior,+ -- | Boolean indicating whether logs will be recorded in CloudWatch for the+ -- tool. The default is @False@.+ streamOutputToCloudWatch :: Prelude.Maybe Prelude.Bool,+ -- | Boolean indicating whether a streaming session will be configured for+ -- the tool. If @True@, AWS RoboMaker will configure a connection so you+ -- can interact with the tool as it is running in the simulation. It must+ -- have a graphical user interface. The default is @False@.+ streamUI :: Prelude.Maybe Prelude.Bool,+ -- | The name of the tool.+ name :: Prelude.Text,+ -- | Command-line arguments for the tool. It must include the tool executable+ -- name.+ command :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Tool' 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:+--+-- 'exitBehavior', 'tool_exitBehavior' - Exit behavior determines what happens when your tool quits running.+-- @RESTART@ will cause your tool to be restarted. @FAIL@ will cause your+-- job to exit. The default is @RESTART@.+--+-- 'streamOutputToCloudWatch', 'tool_streamOutputToCloudWatch' - Boolean indicating whether logs will be recorded in CloudWatch for the+-- tool. The default is @False@.+--+-- 'streamUI', 'tool_streamUI' - Boolean indicating whether a streaming session will be configured for+-- the tool. If @True@, AWS RoboMaker will configure a connection so you+-- can interact with the tool as it is running in the simulation. It must+-- have a graphical user interface. The default is @False@.+--+-- 'name', 'tool_name' - The name of the tool.+--+-- 'command', 'tool_command' - Command-line arguments for the tool. It must include the tool executable+-- name.+newTool ::+ -- | 'name'+ Prelude.Text ->+ -- | 'command'+ Prelude.Text ->+ Tool+newTool pName_ pCommand_ =+ Tool'+ { exitBehavior = Prelude.Nothing,+ streamOutputToCloudWatch = Prelude.Nothing,+ streamUI = Prelude.Nothing,+ name = pName_,+ command = pCommand_+ }++-- | Exit behavior determines what happens when your tool quits running.+-- @RESTART@ will cause your tool to be restarted. @FAIL@ will cause your+-- job to exit. The default is @RESTART@.+tool_exitBehavior :: Lens.Lens' Tool (Prelude.Maybe ExitBehavior)+tool_exitBehavior = Lens.lens (\Tool' {exitBehavior} -> exitBehavior) (\s@Tool' {} a -> s {exitBehavior = a} :: Tool)++-- | Boolean indicating whether logs will be recorded in CloudWatch for the+-- tool. The default is @False@.+tool_streamOutputToCloudWatch :: Lens.Lens' Tool (Prelude.Maybe Prelude.Bool)+tool_streamOutputToCloudWatch = Lens.lens (\Tool' {streamOutputToCloudWatch} -> streamOutputToCloudWatch) (\s@Tool' {} a -> s {streamOutputToCloudWatch = a} :: Tool)++-- | Boolean indicating whether a streaming session will be configured for+-- the tool. If @True@, AWS RoboMaker will configure a connection so you+-- can interact with the tool as it is running in the simulation. It must+-- have a graphical user interface. The default is @False@.+tool_streamUI :: Lens.Lens' Tool (Prelude.Maybe Prelude.Bool)+tool_streamUI = Lens.lens (\Tool' {streamUI} -> streamUI) (\s@Tool' {} a -> s {streamUI = a} :: Tool)++-- | The name of the tool.+tool_name :: Lens.Lens' Tool Prelude.Text+tool_name = Lens.lens (\Tool' {name} -> name) (\s@Tool' {} a -> s {name = a} :: Tool)++-- | Command-line arguments for the tool. It must include the tool executable+-- name.+tool_command :: Lens.Lens' Tool Prelude.Text+tool_command = Lens.lens (\Tool' {command} -> command) (\s@Tool' {} a -> s {command = a} :: Tool)++instance Data.FromJSON Tool where+ parseJSON =+ Data.withObject+ "Tool"+ ( \x ->+ Tool'+ Prelude.<$> (x Data..:? "exitBehavior")+ Prelude.<*> (x Data..:? "streamOutputToCloudWatch")+ Prelude.<*> (x Data..:? "streamUI")+ Prelude.<*> (x Data..: "name")+ Prelude.<*> (x Data..: "command")+ )++instance Prelude.Hashable Tool where+ hashWithSalt _salt Tool' {..} =+ _salt+ `Prelude.hashWithSalt` exitBehavior+ `Prelude.hashWithSalt` streamOutputToCloudWatch+ `Prelude.hashWithSalt` streamUI+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` command++instance Prelude.NFData Tool where+ rnf Tool' {..} =+ Prelude.rnf exitBehavior+ `Prelude.seq` Prelude.rnf streamOutputToCloudWatch+ `Prelude.seq` Prelude.rnf streamUI+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf command++instance Data.ToJSON Tool where+ toJSON Tool' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("exitBehavior" Data..=) Prelude.<$> exitBehavior,+ ("streamOutputToCloudWatch" Data..=)+ Prelude.<$> streamOutputToCloudWatch,+ ("streamUI" Data..=) Prelude.<$> streamUI,+ Prelude.Just ("name" Data..= name),+ Prelude.Just ("command" Data..= command)+ ]+ )
+ gen/Amazonka/RobOMaker/Types/UploadBehavior.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.RobOMaker.Types.UploadBehavior+-- 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.RobOMaker.Types.UploadBehavior+ ( UploadBehavior+ ( ..,+ UploadBehavior_UPLOAD_ON_TERMINATE,+ UploadBehavior_UPLOAD_ROLLING_AUTO_REMOVE+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype UploadBehavior = UploadBehavior'+ { fromUploadBehavior ::+ 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 UploadBehavior_UPLOAD_ON_TERMINATE :: UploadBehavior+pattern UploadBehavior_UPLOAD_ON_TERMINATE = UploadBehavior' "UPLOAD_ON_TERMINATE"++pattern UploadBehavior_UPLOAD_ROLLING_AUTO_REMOVE :: UploadBehavior+pattern UploadBehavior_UPLOAD_ROLLING_AUTO_REMOVE = UploadBehavior' "UPLOAD_ROLLING_AUTO_REMOVE"++{-# COMPLETE+ UploadBehavior_UPLOAD_ON_TERMINATE,+ UploadBehavior_UPLOAD_ROLLING_AUTO_REMOVE,+ UploadBehavior'+ #-}
+ gen/Amazonka/RobOMaker/Types/UploadConfiguration.hs view
@@ -0,0 +1,184 @@+{-# 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.RobOMaker.Types.UploadConfiguration+-- 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.RobOMaker.Types.UploadConfiguration where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import Amazonka.RobOMaker.Types.UploadBehavior++-- | Provides upload configuration information. Files are uploaded from the+-- simulation job to a location you specify.+--+-- /See:/ 'newUploadConfiguration' smart constructor.+data UploadConfiguration = UploadConfiguration'+ { -- | A prefix that specifies where files will be uploaded in Amazon S3. It is+ -- appended to the simulation output location to determine the final path.+ --+ -- For example, if your simulation output location is @s3:\/\/my-bucket@+ -- and your upload configuration name is @robot-test@, your files will be+ -- uploaded to @s3:\/\/my-bucket\/\<simid>\/\<runid>\/robot-test@.+ name :: Prelude.Text,+ -- | Specifies the path of the file(s) to upload. Standard Unix glob matching+ -- rules are accepted, with the addition of @**@ as a /super asterisk/. For+ -- example, specifying @\/var\/log\/**.log@ causes all .log files in the+ -- @\/var\/log@ directory tree to be collected. For more examples, see+ -- <https://github.com/gobwas/glob Glob Library>.+ path :: Prelude.Text,+ -- | Specifies when to upload the files:+ --+ -- [UPLOAD_ON_TERMINATE]+ -- Matching files are uploaded once the simulation enters the+ -- @TERMINATING@ state. Matching files are not uploaded until all of+ -- your code (including tools) have stopped.+ --+ -- If there is a problem uploading a file, the upload is retried. If+ -- problems persist, no further upload attempts will be made.+ --+ -- [UPLOAD_ROLLING_AUTO_REMOVE]+ -- Matching files are uploaded as they are created. They are deleted+ -- after they are uploaded. The specified path is checked every 5+ -- seconds. A final check is made when all of your code (including+ -- tools) have stopped.+ uploadBehavior :: UploadBehavior+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UploadConfiguration' 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:+--+-- 'name', 'uploadConfiguration_name' - A prefix that specifies where files will be uploaded in Amazon S3. It is+-- appended to the simulation output location to determine the final path.+--+-- For example, if your simulation output location is @s3:\/\/my-bucket@+-- and your upload configuration name is @robot-test@, your files will be+-- uploaded to @s3:\/\/my-bucket\/\<simid>\/\<runid>\/robot-test@.+--+-- 'path', 'uploadConfiguration_path' - Specifies the path of the file(s) to upload. Standard Unix glob matching+-- rules are accepted, with the addition of @**@ as a /super asterisk/. For+-- example, specifying @\/var\/log\/**.log@ causes all .log files in the+-- @\/var\/log@ directory tree to be collected. For more examples, see+-- <https://github.com/gobwas/glob Glob Library>.+--+-- 'uploadBehavior', 'uploadConfiguration_uploadBehavior' - Specifies when to upload the files:+--+-- [UPLOAD_ON_TERMINATE]+-- Matching files are uploaded once the simulation enters the+-- @TERMINATING@ state. Matching files are not uploaded until all of+-- your code (including tools) have stopped.+--+-- If there is a problem uploading a file, the upload is retried. If+-- problems persist, no further upload attempts will be made.+--+-- [UPLOAD_ROLLING_AUTO_REMOVE]+-- Matching files are uploaded as they are created. They are deleted+-- after they are uploaded. The specified path is checked every 5+-- seconds. A final check is made when all of your code (including+-- tools) have stopped.+newUploadConfiguration ::+ -- | 'name'+ Prelude.Text ->+ -- | 'path'+ Prelude.Text ->+ -- | 'uploadBehavior'+ UploadBehavior ->+ UploadConfiguration+newUploadConfiguration pName_ pPath_ pUploadBehavior_ =+ UploadConfiguration'+ { name = pName_,+ path = pPath_,+ uploadBehavior = pUploadBehavior_+ }++-- | A prefix that specifies where files will be uploaded in Amazon S3. It is+-- appended to the simulation output location to determine the final path.+--+-- For example, if your simulation output location is @s3:\/\/my-bucket@+-- and your upload configuration name is @robot-test@, your files will be+-- uploaded to @s3:\/\/my-bucket\/\<simid>\/\<runid>\/robot-test@.+uploadConfiguration_name :: Lens.Lens' UploadConfiguration Prelude.Text+uploadConfiguration_name = Lens.lens (\UploadConfiguration' {name} -> name) (\s@UploadConfiguration' {} a -> s {name = a} :: UploadConfiguration)++-- | Specifies the path of the file(s) to upload. Standard Unix glob matching+-- rules are accepted, with the addition of @**@ as a /super asterisk/. For+-- example, specifying @\/var\/log\/**.log@ causes all .log files in the+-- @\/var\/log@ directory tree to be collected. For more examples, see+-- <https://github.com/gobwas/glob Glob Library>.+uploadConfiguration_path :: Lens.Lens' UploadConfiguration Prelude.Text+uploadConfiguration_path = Lens.lens (\UploadConfiguration' {path} -> path) (\s@UploadConfiguration' {} a -> s {path = a} :: UploadConfiguration)++-- | Specifies when to upload the files:+--+-- [UPLOAD_ON_TERMINATE]+-- Matching files are uploaded once the simulation enters the+-- @TERMINATING@ state. Matching files are not uploaded until all of+-- your code (including tools) have stopped.+--+-- If there is a problem uploading a file, the upload is retried. If+-- problems persist, no further upload attempts will be made.+--+-- [UPLOAD_ROLLING_AUTO_REMOVE]+-- Matching files are uploaded as they are created. They are deleted+-- after they are uploaded. The specified path is checked every 5+-- seconds. A final check is made when all of your code (including+-- tools) have stopped.+uploadConfiguration_uploadBehavior :: Lens.Lens' UploadConfiguration UploadBehavior+uploadConfiguration_uploadBehavior = Lens.lens (\UploadConfiguration' {uploadBehavior} -> uploadBehavior) (\s@UploadConfiguration' {} a -> s {uploadBehavior = a} :: UploadConfiguration)++instance Data.FromJSON UploadConfiguration where+ parseJSON =+ Data.withObject+ "UploadConfiguration"+ ( \x ->+ UploadConfiguration'+ Prelude.<$> (x Data..: "name")+ Prelude.<*> (x Data..: "path")+ Prelude.<*> (x Data..: "uploadBehavior")+ )++instance Prelude.Hashable UploadConfiguration where+ hashWithSalt _salt UploadConfiguration' {..} =+ _salt+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` path+ `Prelude.hashWithSalt` uploadBehavior++instance Prelude.NFData UploadConfiguration where+ rnf UploadConfiguration' {..} =+ Prelude.rnf name+ `Prelude.seq` Prelude.rnf path+ `Prelude.seq` Prelude.rnf uploadBehavior++instance Data.ToJSON UploadConfiguration where+ toJSON UploadConfiguration' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("name" Data..= name),+ Prelude.Just ("path" Data..= path),+ Prelude.Just+ ("uploadBehavior" Data..= uploadBehavior)+ ]+ )
+ gen/Amazonka/RobOMaker/Types/VPCConfig.hs view
@@ -0,0 +1,113 @@+{-# 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.RobOMaker.Types.VPCConfig+-- 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.RobOMaker.Types.VPCConfig 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++-- | If your simulation job accesses resources in a VPC, you provide this+-- parameter identifying the list of security group IDs and subnet IDs.+-- These must belong to the same VPC. You must provide at least one+-- security group and two subnet IDs.+--+-- /See:/ 'newVPCConfig' smart constructor.+data VPCConfig = VPCConfig'+ { -- | A boolean indicating whether to assign a public IP address.+ assignPublicIp :: Prelude.Maybe Prelude.Bool,+ -- | A list of one or more security groups IDs in your VPC.+ securityGroups :: Prelude.Maybe (Prelude.NonEmpty Prelude.Text),+ -- | A list of one or more subnet IDs in your VPC.+ subnets :: Prelude.NonEmpty Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'VPCConfig' 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:+--+-- 'assignPublicIp', 'vPCConfig_assignPublicIp' - A boolean indicating whether to assign a public IP address.+--+-- 'securityGroups', 'vPCConfig_securityGroups' - A list of one or more security groups IDs in your VPC.+--+-- 'subnets', 'vPCConfig_subnets' - A list of one or more subnet IDs in your VPC.+newVPCConfig ::+ -- | 'subnets'+ Prelude.NonEmpty Prelude.Text ->+ VPCConfig+newVPCConfig pSubnets_ =+ VPCConfig'+ { assignPublicIp = Prelude.Nothing,+ securityGroups = Prelude.Nothing,+ subnets = Lens.coerced Lens.# pSubnets_+ }++-- | A boolean indicating whether to assign a public IP address.+vPCConfig_assignPublicIp :: Lens.Lens' VPCConfig (Prelude.Maybe Prelude.Bool)+vPCConfig_assignPublicIp = Lens.lens (\VPCConfig' {assignPublicIp} -> assignPublicIp) (\s@VPCConfig' {} a -> s {assignPublicIp = a} :: VPCConfig)++-- | A list of one or more security groups IDs in your VPC.+vPCConfig_securityGroups :: Lens.Lens' VPCConfig (Prelude.Maybe (Prelude.NonEmpty Prelude.Text))+vPCConfig_securityGroups = Lens.lens (\VPCConfig' {securityGroups} -> securityGroups) (\s@VPCConfig' {} a -> s {securityGroups = a} :: VPCConfig) Prelude.. Lens.mapping Lens.coerced++-- | A list of one or more subnet IDs in your VPC.+vPCConfig_subnets :: Lens.Lens' VPCConfig (Prelude.NonEmpty Prelude.Text)+vPCConfig_subnets = Lens.lens (\VPCConfig' {subnets} -> subnets) (\s@VPCConfig' {} a -> s {subnets = a} :: VPCConfig) Prelude.. Lens.coerced++instance Data.FromJSON VPCConfig where+ parseJSON =+ Data.withObject+ "VPCConfig"+ ( \x ->+ VPCConfig'+ Prelude.<$> (x Data..:? "assignPublicIp")+ Prelude.<*> (x Data..:? "securityGroups")+ Prelude.<*> (x Data..: "subnets")+ )++instance Prelude.Hashable VPCConfig where+ hashWithSalt _salt VPCConfig' {..} =+ _salt+ `Prelude.hashWithSalt` assignPublicIp+ `Prelude.hashWithSalt` securityGroups+ `Prelude.hashWithSalt` subnets++instance Prelude.NFData VPCConfig where+ rnf VPCConfig' {..} =+ Prelude.rnf assignPublicIp+ `Prelude.seq` Prelude.rnf securityGroups+ `Prelude.seq` Prelude.rnf subnets++instance Data.ToJSON VPCConfig where+ toJSON VPCConfig' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("assignPublicIp" Data..=)+ Prelude.<$> assignPublicIp,+ ("securityGroups" Data..=)+ Prelude.<$> securityGroups,+ Prelude.Just ("subnets" Data..= subnets)+ ]+ )
+ gen/Amazonka/RobOMaker/Types/VPCConfigResponse.hs view
@@ -0,0 +1,109 @@+{-# 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.RobOMaker.Types.VPCConfigResponse+-- 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.RobOMaker.Types.VPCConfigResponse 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++-- | VPC configuration associated with your simulation job.+--+-- /See:/ 'newVPCConfigResponse' smart constructor.+data VPCConfigResponse = VPCConfigResponse'+ { -- | A boolean indicating if a public IP was assigned.+ assignPublicIp :: Prelude.Maybe Prelude.Bool,+ -- | A list of security group IDs associated with the simulation job.+ securityGroups :: Prelude.Maybe (Prelude.NonEmpty Prelude.Text),+ -- | A list of subnet IDs associated with the simulation job.+ subnets :: Prelude.Maybe (Prelude.NonEmpty Prelude.Text),+ -- | The VPC ID associated with your simulation job.+ vpcId :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'VPCConfigResponse' 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:+--+-- 'assignPublicIp', 'vPCConfigResponse_assignPublicIp' - A boolean indicating if a public IP was assigned.+--+-- 'securityGroups', 'vPCConfigResponse_securityGroups' - A list of security group IDs associated with the simulation job.+--+-- 'subnets', 'vPCConfigResponse_subnets' - A list of subnet IDs associated with the simulation job.+--+-- 'vpcId', 'vPCConfigResponse_vpcId' - The VPC ID associated with your simulation job.+newVPCConfigResponse ::+ VPCConfigResponse+newVPCConfigResponse =+ VPCConfigResponse'+ { assignPublicIp =+ Prelude.Nothing,+ securityGroups = Prelude.Nothing,+ subnets = Prelude.Nothing,+ vpcId = Prelude.Nothing+ }++-- | A boolean indicating if a public IP was assigned.+vPCConfigResponse_assignPublicIp :: Lens.Lens' VPCConfigResponse (Prelude.Maybe Prelude.Bool)+vPCConfigResponse_assignPublicIp = Lens.lens (\VPCConfigResponse' {assignPublicIp} -> assignPublicIp) (\s@VPCConfigResponse' {} a -> s {assignPublicIp = a} :: VPCConfigResponse)++-- | A list of security group IDs associated with the simulation job.+vPCConfigResponse_securityGroups :: Lens.Lens' VPCConfigResponse (Prelude.Maybe (Prelude.NonEmpty Prelude.Text))+vPCConfigResponse_securityGroups = Lens.lens (\VPCConfigResponse' {securityGroups} -> securityGroups) (\s@VPCConfigResponse' {} a -> s {securityGroups = a} :: VPCConfigResponse) Prelude.. Lens.mapping Lens.coerced++-- | A list of subnet IDs associated with the simulation job.+vPCConfigResponse_subnets :: Lens.Lens' VPCConfigResponse (Prelude.Maybe (Prelude.NonEmpty Prelude.Text))+vPCConfigResponse_subnets = Lens.lens (\VPCConfigResponse' {subnets} -> subnets) (\s@VPCConfigResponse' {} a -> s {subnets = a} :: VPCConfigResponse) Prelude.. Lens.mapping Lens.coerced++-- | The VPC ID associated with your simulation job.+vPCConfigResponse_vpcId :: Lens.Lens' VPCConfigResponse (Prelude.Maybe Prelude.Text)+vPCConfigResponse_vpcId = Lens.lens (\VPCConfigResponse' {vpcId} -> vpcId) (\s@VPCConfigResponse' {} a -> s {vpcId = a} :: VPCConfigResponse)++instance Data.FromJSON VPCConfigResponse where+ parseJSON =+ Data.withObject+ "VPCConfigResponse"+ ( \x ->+ VPCConfigResponse'+ Prelude.<$> (x Data..:? "assignPublicIp")+ Prelude.<*> (x Data..:? "securityGroups")+ Prelude.<*> (x Data..:? "subnets")+ Prelude.<*> (x Data..:? "vpcId")+ )++instance Prelude.Hashable VPCConfigResponse where+ hashWithSalt _salt VPCConfigResponse' {..} =+ _salt+ `Prelude.hashWithSalt` assignPublicIp+ `Prelude.hashWithSalt` securityGroups+ `Prelude.hashWithSalt` subnets+ `Prelude.hashWithSalt` vpcId++instance Prelude.NFData VPCConfigResponse where+ rnf VPCConfigResponse' {..} =+ Prelude.rnf assignPublicIp+ `Prelude.seq` Prelude.rnf securityGroups+ `Prelude.seq` Prelude.rnf subnets+ `Prelude.seq` Prelude.rnf vpcId
+ gen/Amazonka/RobOMaker/Types/WorldConfig.hs view
@@ -0,0 +1,74 @@+{-# 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.RobOMaker.Types.WorldConfig+-- 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.RobOMaker.Types.WorldConfig 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++-- | Configuration information for a world.+--+-- /See:/ 'newWorldConfig' smart constructor.+data WorldConfig = WorldConfig'+ { -- | The world generated by Simulation WorldForge.+ world :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'WorldConfig' 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:+--+-- 'world', 'worldConfig_world' - The world generated by Simulation WorldForge.+newWorldConfig ::+ WorldConfig+newWorldConfig =+ WorldConfig' {world = Prelude.Nothing}++-- | The world generated by Simulation WorldForge.+worldConfig_world :: Lens.Lens' WorldConfig (Prelude.Maybe Prelude.Text)+worldConfig_world = Lens.lens (\WorldConfig' {world} -> world) (\s@WorldConfig' {} a -> s {world = a} :: WorldConfig)++instance Data.FromJSON WorldConfig where+ parseJSON =+ Data.withObject+ "WorldConfig"+ ( \x ->+ WorldConfig' Prelude.<$> (x Data..:? "world")+ )++instance Prelude.Hashable WorldConfig where+ hashWithSalt _salt WorldConfig' {..} =+ _salt `Prelude.hashWithSalt` world++instance Prelude.NFData WorldConfig where+ rnf WorldConfig' {..} = Prelude.rnf world++instance Data.ToJSON WorldConfig where+ toJSON WorldConfig' {..} =+ Data.object+ ( Prelude.catMaybes+ [("world" Data..=) Prelude.<$> world]+ )
+ gen/Amazonka/RobOMaker/Types/WorldCount.hs view
@@ -0,0 +1,102 @@+{-# 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.RobOMaker.Types.WorldCount+-- 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.RobOMaker.Types.WorldCount 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 number of worlds that will be created. You can configure the number+-- of unique floorplans and the number of unique interiors for each floor+-- plan. For example, if you want 1 world with 20 unique interiors, you set+-- @floorplanCount = 1@ and @interiorCountPerFloorplan = 20@. This will+-- result in 20 worlds (@floorplanCount@ * @interiorCountPerFloorplan)@.+--+-- If you set @floorplanCount = 4@ and @interiorCountPerFloorplan = 5@,+-- there will be 20 worlds with 5 unique floor plans.+--+-- /See:/ 'newWorldCount' smart constructor.+data WorldCount = WorldCount'+ { -- | The number of unique floorplans.+ floorplanCount :: Prelude.Maybe Prelude.Int,+ -- | The number of unique interiors per floorplan.+ interiorCountPerFloorplan :: Prelude.Maybe Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'WorldCount' 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:+--+-- 'floorplanCount', 'worldCount_floorplanCount' - The number of unique floorplans.+--+-- 'interiorCountPerFloorplan', 'worldCount_interiorCountPerFloorplan' - The number of unique interiors per floorplan.+newWorldCount ::+ WorldCount+newWorldCount =+ WorldCount'+ { floorplanCount = Prelude.Nothing,+ interiorCountPerFloorplan = Prelude.Nothing+ }++-- | The number of unique floorplans.+worldCount_floorplanCount :: Lens.Lens' WorldCount (Prelude.Maybe Prelude.Int)+worldCount_floorplanCount = Lens.lens (\WorldCount' {floorplanCount} -> floorplanCount) (\s@WorldCount' {} a -> s {floorplanCount = a} :: WorldCount)++-- | The number of unique interiors per floorplan.+worldCount_interiorCountPerFloorplan :: Lens.Lens' WorldCount (Prelude.Maybe Prelude.Int)+worldCount_interiorCountPerFloorplan = Lens.lens (\WorldCount' {interiorCountPerFloorplan} -> interiorCountPerFloorplan) (\s@WorldCount' {} a -> s {interiorCountPerFloorplan = a} :: WorldCount)++instance Data.FromJSON WorldCount where+ parseJSON =+ Data.withObject+ "WorldCount"+ ( \x ->+ WorldCount'+ Prelude.<$> (x Data..:? "floorplanCount")+ Prelude.<*> (x Data..:? "interiorCountPerFloorplan")+ )++instance Prelude.Hashable WorldCount where+ hashWithSalt _salt WorldCount' {..} =+ _salt+ `Prelude.hashWithSalt` floorplanCount+ `Prelude.hashWithSalt` interiorCountPerFloorplan++instance Prelude.NFData WorldCount where+ rnf WorldCount' {..} =+ Prelude.rnf floorplanCount+ `Prelude.seq` Prelude.rnf interiorCountPerFloorplan++instance Data.ToJSON WorldCount where+ toJSON WorldCount' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("floorplanCount" Data..=)+ Prelude.<$> floorplanCount,+ ("interiorCountPerFloorplan" Data..=)+ Prelude.<$> interiorCountPerFloorplan+ ]+ )
+ gen/Amazonka/RobOMaker/Types/WorldExportJobErrorCode.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.RobOMaker.Types.WorldExportJobErrorCode+-- 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.RobOMaker.Types.WorldExportJobErrorCode+ ( WorldExportJobErrorCode+ ( ..,+ WorldExportJobErrorCode_AccessDenied,+ WorldExportJobErrorCode_InternalServiceError,+ WorldExportJobErrorCode_InvalidInput,+ WorldExportJobErrorCode_LimitExceeded,+ WorldExportJobErrorCode_RequestThrottled,+ WorldExportJobErrorCode_ResourceNotFound+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype WorldExportJobErrorCode = WorldExportJobErrorCode'+ { fromWorldExportJobErrorCode ::+ 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 WorldExportJobErrorCode_AccessDenied :: WorldExportJobErrorCode+pattern WorldExportJobErrorCode_AccessDenied = WorldExportJobErrorCode' "AccessDenied"++pattern WorldExportJobErrorCode_InternalServiceError :: WorldExportJobErrorCode+pattern WorldExportJobErrorCode_InternalServiceError = WorldExportJobErrorCode' "InternalServiceError"++pattern WorldExportJobErrorCode_InvalidInput :: WorldExportJobErrorCode+pattern WorldExportJobErrorCode_InvalidInput = WorldExportJobErrorCode' "InvalidInput"++pattern WorldExportJobErrorCode_LimitExceeded :: WorldExportJobErrorCode+pattern WorldExportJobErrorCode_LimitExceeded = WorldExportJobErrorCode' "LimitExceeded"++pattern WorldExportJobErrorCode_RequestThrottled :: WorldExportJobErrorCode+pattern WorldExportJobErrorCode_RequestThrottled = WorldExportJobErrorCode' "RequestThrottled"++pattern WorldExportJobErrorCode_ResourceNotFound :: WorldExportJobErrorCode+pattern WorldExportJobErrorCode_ResourceNotFound = WorldExportJobErrorCode' "ResourceNotFound"++{-# COMPLETE+ WorldExportJobErrorCode_AccessDenied,+ WorldExportJobErrorCode_InternalServiceError,+ WorldExportJobErrorCode_InvalidInput,+ WorldExportJobErrorCode_LimitExceeded,+ WorldExportJobErrorCode_RequestThrottled,+ WorldExportJobErrorCode_ResourceNotFound,+ WorldExportJobErrorCode'+ #-}
+ gen/Amazonka/RobOMaker/Types/WorldExportJobStatus.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.RobOMaker.Types.WorldExportJobStatus+-- 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.RobOMaker.Types.WorldExportJobStatus+ ( WorldExportJobStatus+ ( ..,+ WorldExportJobStatus_Canceled,+ WorldExportJobStatus_Canceling,+ WorldExportJobStatus_Completed,+ WorldExportJobStatus_Failed,+ WorldExportJobStatus_Pending,+ WorldExportJobStatus_Running+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype WorldExportJobStatus = WorldExportJobStatus'+ { fromWorldExportJobStatus ::+ 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 WorldExportJobStatus_Canceled :: WorldExportJobStatus+pattern WorldExportJobStatus_Canceled = WorldExportJobStatus' "Canceled"++pattern WorldExportJobStatus_Canceling :: WorldExportJobStatus+pattern WorldExportJobStatus_Canceling = WorldExportJobStatus' "Canceling"++pattern WorldExportJobStatus_Completed :: WorldExportJobStatus+pattern WorldExportJobStatus_Completed = WorldExportJobStatus' "Completed"++pattern WorldExportJobStatus_Failed :: WorldExportJobStatus+pattern WorldExportJobStatus_Failed = WorldExportJobStatus' "Failed"++pattern WorldExportJobStatus_Pending :: WorldExportJobStatus+pattern WorldExportJobStatus_Pending = WorldExportJobStatus' "Pending"++pattern WorldExportJobStatus_Running :: WorldExportJobStatus+pattern WorldExportJobStatus_Running = WorldExportJobStatus' "Running"++{-# COMPLETE+ WorldExportJobStatus_Canceled,+ WorldExportJobStatus_Canceling,+ WorldExportJobStatus_Completed,+ WorldExportJobStatus_Failed,+ WorldExportJobStatus_Pending,+ WorldExportJobStatus_Running,+ WorldExportJobStatus'+ #-}
+ gen/Amazonka/RobOMaker/Types/WorldExportJobSummary.hs view
@@ -0,0 +1,178 @@+{-# 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.RobOMaker.Types.WorldExportJobSummary+-- 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.RobOMaker.Types.WorldExportJobSummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import Amazonka.RobOMaker.Types.OutputLocation+import Amazonka.RobOMaker.Types.WorldExportJobStatus++-- | Information about a world export job.+--+-- /See:/ 'newWorldExportJobSummary' smart constructor.+data WorldExportJobSummary = WorldExportJobSummary'+ { -- | The Amazon Resource Name (ARN) of the world export job.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The time, in milliseconds since the epoch, when the world export job was+ -- created.+ createdAt :: Prelude.Maybe Data.POSIX,+ outputLocation :: Prelude.Maybe OutputLocation,+ -- | The status of the world export job.+ --+ -- [Pending]+ -- The world export job request is pending.+ --+ -- [Running]+ -- The world export job is running.+ --+ -- [Completed]+ -- The world export job completed.+ --+ -- [Failed]+ -- The world export job failed. See @failureCode@ for more information.+ --+ -- [Canceled]+ -- The world export job was cancelled.+ --+ -- [Canceling]+ -- The world export job is being cancelled.+ status :: Prelude.Maybe WorldExportJobStatus,+ -- | A list of worlds.+ worlds :: Prelude.Maybe (Prelude.NonEmpty Prelude.Text)+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'WorldExportJobSummary' 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', 'worldExportJobSummary_arn' - The Amazon Resource Name (ARN) of the world export job.+--+-- 'createdAt', 'worldExportJobSummary_createdAt' - The time, in milliseconds since the epoch, when the world export job was+-- created.+--+-- 'outputLocation', 'worldExportJobSummary_outputLocation' - Undocumented member.+--+-- 'status', 'worldExportJobSummary_status' - The status of the world export job.+--+-- [Pending]+-- The world export job request is pending.+--+-- [Running]+-- The world export job is running.+--+-- [Completed]+-- The world export job completed.+--+-- [Failed]+-- The world export job failed. See @failureCode@ for more information.+--+-- [Canceled]+-- The world export job was cancelled.+--+-- [Canceling]+-- The world export job is being cancelled.+--+-- 'worlds', 'worldExportJobSummary_worlds' - A list of worlds.+newWorldExportJobSummary ::+ WorldExportJobSummary+newWorldExportJobSummary =+ WorldExportJobSummary'+ { arn = Prelude.Nothing,+ createdAt = Prelude.Nothing,+ outputLocation = Prelude.Nothing,+ status = Prelude.Nothing,+ worlds = Prelude.Nothing+ }++-- | The Amazon Resource Name (ARN) of the world export job.+worldExportJobSummary_arn :: Lens.Lens' WorldExportJobSummary (Prelude.Maybe Prelude.Text)+worldExportJobSummary_arn = Lens.lens (\WorldExportJobSummary' {arn} -> arn) (\s@WorldExportJobSummary' {} a -> s {arn = a} :: WorldExportJobSummary)++-- | The time, in milliseconds since the epoch, when the world export job was+-- created.+worldExportJobSummary_createdAt :: Lens.Lens' WorldExportJobSummary (Prelude.Maybe Prelude.UTCTime)+worldExportJobSummary_createdAt = Lens.lens (\WorldExportJobSummary' {createdAt} -> createdAt) (\s@WorldExportJobSummary' {} a -> s {createdAt = a} :: WorldExportJobSummary) Prelude.. Lens.mapping Data._Time++-- | Undocumented member.+worldExportJobSummary_outputLocation :: Lens.Lens' WorldExportJobSummary (Prelude.Maybe OutputLocation)+worldExportJobSummary_outputLocation = Lens.lens (\WorldExportJobSummary' {outputLocation} -> outputLocation) (\s@WorldExportJobSummary' {} a -> s {outputLocation = a} :: WorldExportJobSummary)++-- | The status of the world export job.+--+-- [Pending]+-- The world export job request is pending.+--+-- [Running]+-- The world export job is running.+--+-- [Completed]+-- The world export job completed.+--+-- [Failed]+-- The world export job failed. See @failureCode@ for more information.+--+-- [Canceled]+-- The world export job was cancelled.+--+-- [Canceling]+-- The world export job is being cancelled.+worldExportJobSummary_status :: Lens.Lens' WorldExportJobSummary (Prelude.Maybe WorldExportJobStatus)+worldExportJobSummary_status = Lens.lens (\WorldExportJobSummary' {status} -> status) (\s@WorldExportJobSummary' {} a -> s {status = a} :: WorldExportJobSummary)++-- | A list of worlds.+worldExportJobSummary_worlds :: Lens.Lens' WorldExportJobSummary (Prelude.Maybe (Prelude.NonEmpty Prelude.Text))+worldExportJobSummary_worlds = Lens.lens (\WorldExportJobSummary' {worlds} -> worlds) (\s@WorldExportJobSummary' {} a -> s {worlds = a} :: WorldExportJobSummary) Prelude.. Lens.mapping Lens.coerced++instance Data.FromJSON WorldExportJobSummary where+ parseJSON =+ Data.withObject+ "WorldExportJobSummary"+ ( \x ->+ WorldExportJobSummary'+ Prelude.<$> (x Data..:? "arn")+ Prelude.<*> (x Data..:? "createdAt")+ Prelude.<*> (x Data..:? "outputLocation")+ Prelude.<*> (x Data..:? "status")+ Prelude.<*> (x Data..:? "worlds")+ )++instance Prelude.Hashable WorldExportJobSummary where+ hashWithSalt _salt WorldExportJobSummary' {..} =+ _salt+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` createdAt+ `Prelude.hashWithSalt` outputLocation+ `Prelude.hashWithSalt` status+ `Prelude.hashWithSalt` worlds++instance Prelude.NFData WorldExportJobSummary where+ rnf WorldExportJobSummary' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf createdAt+ `Prelude.seq` Prelude.rnf outputLocation+ `Prelude.seq` Prelude.rnf status+ `Prelude.seq` Prelude.rnf worlds
+ gen/Amazonka/RobOMaker/Types/WorldFailure.hs view
@@ -0,0 +1,151 @@+{-# 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.RobOMaker.Types.WorldFailure+-- 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.RobOMaker.Types.WorldFailure where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import Amazonka.RobOMaker.Types.WorldGenerationJobErrorCode++-- | Information about a failed world.+--+-- /See:/ 'newWorldFailure' smart constructor.+data WorldFailure = WorldFailure'+ { -- | The failure code of the world export job if it failed:+ --+ -- [InternalServiceError]+ -- Internal service error.+ --+ -- [LimitExceeded]+ -- The requested resource exceeds the maximum number allowed, or the+ -- number of concurrent stream requests exceeds the maximum number+ -- allowed.+ --+ -- [ResourceNotFound]+ -- The specified resource could not be found.+ --+ -- [RequestThrottled]+ -- The request was throttled.+ --+ -- [InvalidInput]+ -- An input parameter in the request is not valid.+ failureCode :: Prelude.Maybe WorldGenerationJobErrorCode,+ -- | The number of failed worlds.+ failureCount :: Prelude.Maybe Prelude.Int,+ -- | The sample reason why the world failed. World errors are aggregated. A+ -- sample is used as the @sampleFailureReason@.+ sampleFailureReason :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'WorldFailure' 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:+--+-- 'failureCode', 'worldFailure_failureCode' - The failure code of the world export job if it failed:+--+-- [InternalServiceError]+-- Internal service error.+--+-- [LimitExceeded]+-- The requested resource exceeds the maximum number allowed, or the+-- number of concurrent stream requests exceeds the maximum number+-- allowed.+--+-- [ResourceNotFound]+-- The specified resource could not be found.+--+-- [RequestThrottled]+-- The request was throttled.+--+-- [InvalidInput]+-- An input parameter in the request is not valid.+--+-- 'failureCount', 'worldFailure_failureCount' - The number of failed worlds.+--+-- 'sampleFailureReason', 'worldFailure_sampleFailureReason' - The sample reason why the world failed. World errors are aggregated. A+-- sample is used as the @sampleFailureReason@.+newWorldFailure ::+ WorldFailure+newWorldFailure =+ WorldFailure'+ { failureCode = Prelude.Nothing,+ failureCount = Prelude.Nothing,+ sampleFailureReason = Prelude.Nothing+ }++-- | The failure code of the world export job if it failed:+--+-- [InternalServiceError]+-- Internal service error.+--+-- [LimitExceeded]+-- The requested resource exceeds the maximum number allowed, or the+-- number of concurrent stream requests exceeds the maximum number+-- allowed.+--+-- [ResourceNotFound]+-- The specified resource could not be found.+--+-- [RequestThrottled]+-- The request was throttled.+--+-- [InvalidInput]+-- An input parameter in the request is not valid.+worldFailure_failureCode :: Lens.Lens' WorldFailure (Prelude.Maybe WorldGenerationJobErrorCode)+worldFailure_failureCode = Lens.lens (\WorldFailure' {failureCode} -> failureCode) (\s@WorldFailure' {} a -> s {failureCode = a} :: WorldFailure)++-- | The number of failed worlds.+worldFailure_failureCount :: Lens.Lens' WorldFailure (Prelude.Maybe Prelude.Int)+worldFailure_failureCount = Lens.lens (\WorldFailure' {failureCount} -> failureCount) (\s@WorldFailure' {} a -> s {failureCount = a} :: WorldFailure)++-- | The sample reason why the world failed. World errors are aggregated. A+-- sample is used as the @sampleFailureReason@.+worldFailure_sampleFailureReason :: Lens.Lens' WorldFailure (Prelude.Maybe Prelude.Text)+worldFailure_sampleFailureReason = Lens.lens (\WorldFailure' {sampleFailureReason} -> sampleFailureReason) (\s@WorldFailure' {} a -> s {sampleFailureReason = a} :: WorldFailure)++instance Data.FromJSON WorldFailure where+ parseJSON =+ Data.withObject+ "WorldFailure"+ ( \x ->+ WorldFailure'+ Prelude.<$> (x Data..:? "failureCode")+ Prelude.<*> (x Data..:? "failureCount")+ Prelude.<*> (x Data..:? "sampleFailureReason")+ )++instance Prelude.Hashable WorldFailure where+ hashWithSalt _salt WorldFailure' {..} =+ _salt+ `Prelude.hashWithSalt` failureCode+ `Prelude.hashWithSalt` failureCount+ `Prelude.hashWithSalt` sampleFailureReason++instance Prelude.NFData WorldFailure where+ rnf WorldFailure' {..} =+ Prelude.rnf failureCode+ `Prelude.seq` Prelude.rnf failureCount+ `Prelude.seq` Prelude.rnf sampleFailureReason
+ gen/Amazonka/RobOMaker/Types/WorldGenerationJobErrorCode.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.RobOMaker.Types.WorldGenerationJobErrorCode+-- 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.RobOMaker.Types.WorldGenerationJobErrorCode+ ( WorldGenerationJobErrorCode+ ( ..,+ WorldGenerationJobErrorCode_AllWorldGenerationFailed,+ WorldGenerationJobErrorCode_InternalServiceError,+ WorldGenerationJobErrorCode_InvalidInput,+ WorldGenerationJobErrorCode_LimitExceeded,+ WorldGenerationJobErrorCode_RequestThrottled,+ WorldGenerationJobErrorCode_ResourceNotFound+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype WorldGenerationJobErrorCode = WorldGenerationJobErrorCode'+ { fromWorldGenerationJobErrorCode ::+ 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 WorldGenerationJobErrorCode_AllWorldGenerationFailed :: WorldGenerationJobErrorCode+pattern WorldGenerationJobErrorCode_AllWorldGenerationFailed = WorldGenerationJobErrorCode' "AllWorldGenerationFailed"++pattern WorldGenerationJobErrorCode_InternalServiceError :: WorldGenerationJobErrorCode+pattern WorldGenerationJobErrorCode_InternalServiceError = WorldGenerationJobErrorCode' "InternalServiceError"++pattern WorldGenerationJobErrorCode_InvalidInput :: WorldGenerationJobErrorCode+pattern WorldGenerationJobErrorCode_InvalidInput = WorldGenerationJobErrorCode' "InvalidInput"++pattern WorldGenerationJobErrorCode_LimitExceeded :: WorldGenerationJobErrorCode+pattern WorldGenerationJobErrorCode_LimitExceeded = WorldGenerationJobErrorCode' "LimitExceeded"++pattern WorldGenerationJobErrorCode_RequestThrottled :: WorldGenerationJobErrorCode+pattern WorldGenerationJobErrorCode_RequestThrottled = WorldGenerationJobErrorCode' "RequestThrottled"++pattern WorldGenerationJobErrorCode_ResourceNotFound :: WorldGenerationJobErrorCode+pattern WorldGenerationJobErrorCode_ResourceNotFound = WorldGenerationJobErrorCode' "ResourceNotFound"++{-# COMPLETE+ WorldGenerationJobErrorCode_AllWorldGenerationFailed,+ WorldGenerationJobErrorCode_InternalServiceError,+ WorldGenerationJobErrorCode_InvalidInput,+ WorldGenerationJobErrorCode_LimitExceeded,+ WorldGenerationJobErrorCode_RequestThrottled,+ WorldGenerationJobErrorCode_ResourceNotFound,+ WorldGenerationJobErrorCode'+ #-}
+ gen/Amazonka/RobOMaker/Types/WorldGenerationJobStatus.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.RobOMaker.Types.WorldGenerationJobStatus+-- 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.RobOMaker.Types.WorldGenerationJobStatus+ ( WorldGenerationJobStatus+ ( ..,+ WorldGenerationJobStatus_Canceled,+ WorldGenerationJobStatus_Canceling,+ WorldGenerationJobStatus_Completed,+ WorldGenerationJobStatus_Failed,+ WorldGenerationJobStatus_PartialFailed,+ WorldGenerationJobStatus_Pending,+ WorldGenerationJobStatus_Running+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype WorldGenerationJobStatus = WorldGenerationJobStatus'+ { fromWorldGenerationJobStatus ::+ 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 WorldGenerationJobStatus_Canceled :: WorldGenerationJobStatus+pattern WorldGenerationJobStatus_Canceled = WorldGenerationJobStatus' "Canceled"++pattern WorldGenerationJobStatus_Canceling :: WorldGenerationJobStatus+pattern WorldGenerationJobStatus_Canceling = WorldGenerationJobStatus' "Canceling"++pattern WorldGenerationJobStatus_Completed :: WorldGenerationJobStatus+pattern WorldGenerationJobStatus_Completed = WorldGenerationJobStatus' "Completed"++pattern WorldGenerationJobStatus_Failed :: WorldGenerationJobStatus+pattern WorldGenerationJobStatus_Failed = WorldGenerationJobStatus' "Failed"++pattern WorldGenerationJobStatus_PartialFailed :: WorldGenerationJobStatus+pattern WorldGenerationJobStatus_PartialFailed = WorldGenerationJobStatus' "PartialFailed"++pattern WorldGenerationJobStatus_Pending :: WorldGenerationJobStatus+pattern WorldGenerationJobStatus_Pending = WorldGenerationJobStatus' "Pending"++pattern WorldGenerationJobStatus_Running :: WorldGenerationJobStatus+pattern WorldGenerationJobStatus_Running = WorldGenerationJobStatus' "Running"++{-# COMPLETE+ WorldGenerationJobStatus_Canceled,+ WorldGenerationJobStatus_Canceling,+ WorldGenerationJobStatus_Completed,+ WorldGenerationJobStatus_Failed,+ WorldGenerationJobStatus_PartialFailed,+ WorldGenerationJobStatus_Pending,+ WorldGenerationJobStatus_Running,+ WorldGenerationJobStatus'+ #-}
+ gen/Amazonka/RobOMaker/Types/WorldGenerationJobSummary.hs view
@@ -0,0 +1,215 @@+{-# 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.RobOMaker.Types.WorldGenerationJobSummary+-- 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.RobOMaker.Types.WorldGenerationJobSummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import Amazonka.RobOMaker.Types.WorldCount+import Amazonka.RobOMaker.Types.WorldGenerationJobStatus++-- | Information about a world generator job.+--+-- /See:/ 'newWorldGenerationJobSummary' smart constructor.+data WorldGenerationJobSummary = WorldGenerationJobSummary'+ { -- | The Amazon Resource Name (ARN) of the world generator job.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The time, in milliseconds since the epoch, when the world generator job+ -- was created.+ createdAt :: Prelude.Maybe Data.POSIX,+ -- | The number of worlds that failed.+ failedWorldCount :: Prelude.Maybe Prelude.Int,+ -- | The status of the world generator job:+ --+ -- [Pending]+ -- The world generator job request is pending.+ --+ -- [Running]+ -- The world generator job is running.+ --+ -- [Completed]+ -- The world generator job completed.+ --+ -- [Failed]+ -- The world generator job failed. See @failureCode@ for more+ -- information.+ --+ -- [PartialFailed]+ -- Some worlds did not generate.+ --+ -- [Canceled]+ -- The world generator job was cancelled.+ --+ -- [Canceling]+ -- The world generator job is being cancelled.+ status :: Prelude.Maybe WorldGenerationJobStatus,+ -- | The number of worlds that were generated.+ succeededWorldCount :: Prelude.Maybe Prelude.Int,+ -- | The Amazon Resource Name (arn) of the world template.+ template :: Prelude.Maybe Prelude.Text,+ -- | Information about the world count.+ worldCount :: Prelude.Maybe WorldCount+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'WorldGenerationJobSummary' 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', 'worldGenerationJobSummary_arn' - The Amazon Resource Name (ARN) of the world generator job.+--+-- 'createdAt', 'worldGenerationJobSummary_createdAt' - The time, in milliseconds since the epoch, when the world generator job+-- was created.+--+-- 'failedWorldCount', 'worldGenerationJobSummary_failedWorldCount' - The number of worlds that failed.+--+-- 'status', 'worldGenerationJobSummary_status' - The status of the world generator job:+--+-- [Pending]+-- The world generator job request is pending.+--+-- [Running]+-- The world generator job is running.+--+-- [Completed]+-- The world generator job completed.+--+-- [Failed]+-- The world generator job failed. See @failureCode@ for more+-- information.+--+-- [PartialFailed]+-- Some worlds did not generate.+--+-- [Canceled]+-- The world generator job was cancelled.+--+-- [Canceling]+-- The world generator job is being cancelled.+--+-- 'succeededWorldCount', 'worldGenerationJobSummary_succeededWorldCount' - The number of worlds that were generated.+--+-- 'template', 'worldGenerationJobSummary_template' - The Amazon Resource Name (arn) of the world template.+--+-- 'worldCount', 'worldGenerationJobSummary_worldCount' - Information about the world count.+newWorldGenerationJobSummary ::+ WorldGenerationJobSummary+newWorldGenerationJobSummary =+ WorldGenerationJobSummary'+ { arn = Prelude.Nothing,+ createdAt = Prelude.Nothing,+ failedWorldCount = Prelude.Nothing,+ status = Prelude.Nothing,+ succeededWorldCount = Prelude.Nothing,+ template = Prelude.Nothing,+ worldCount = Prelude.Nothing+ }++-- | The Amazon Resource Name (ARN) of the world generator job.+worldGenerationJobSummary_arn :: Lens.Lens' WorldGenerationJobSummary (Prelude.Maybe Prelude.Text)+worldGenerationJobSummary_arn = Lens.lens (\WorldGenerationJobSummary' {arn} -> arn) (\s@WorldGenerationJobSummary' {} a -> s {arn = a} :: WorldGenerationJobSummary)++-- | The time, in milliseconds since the epoch, when the world generator job+-- was created.+worldGenerationJobSummary_createdAt :: Lens.Lens' WorldGenerationJobSummary (Prelude.Maybe Prelude.UTCTime)+worldGenerationJobSummary_createdAt = Lens.lens (\WorldGenerationJobSummary' {createdAt} -> createdAt) (\s@WorldGenerationJobSummary' {} a -> s {createdAt = a} :: WorldGenerationJobSummary) Prelude.. Lens.mapping Data._Time++-- | The number of worlds that failed.+worldGenerationJobSummary_failedWorldCount :: Lens.Lens' WorldGenerationJobSummary (Prelude.Maybe Prelude.Int)+worldGenerationJobSummary_failedWorldCount = Lens.lens (\WorldGenerationJobSummary' {failedWorldCount} -> failedWorldCount) (\s@WorldGenerationJobSummary' {} a -> s {failedWorldCount = a} :: WorldGenerationJobSummary)++-- | The status of the world generator job:+--+-- [Pending]+-- The world generator job request is pending.+--+-- [Running]+-- The world generator job is running.+--+-- [Completed]+-- The world generator job completed.+--+-- [Failed]+-- The world generator job failed. See @failureCode@ for more+-- information.+--+-- [PartialFailed]+-- Some worlds did not generate.+--+-- [Canceled]+-- The world generator job was cancelled.+--+-- [Canceling]+-- The world generator job is being cancelled.+worldGenerationJobSummary_status :: Lens.Lens' WorldGenerationJobSummary (Prelude.Maybe WorldGenerationJobStatus)+worldGenerationJobSummary_status = Lens.lens (\WorldGenerationJobSummary' {status} -> status) (\s@WorldGenerationJobSummary' {} a -> s {status = a} :: WorldGenerationJobSummary)++-- | The number of worlds that were generated.+worldGenerationJobSummary_succeededWorldCount :: Lens.Lens' WorldGenerationJobSummary (Prelude.Maybe Prelude.Int)+worldGenerationJobSummary_succeededWorldCount = Lens.lens (\WorldGenerationJobSummary' {succeededWorldCount} -> succeededWorldCount) (\s@WorldGenerationJobSummary' {} a -> s {succeededWorldCount = a} :: WorldGenerationJobSummary)++-- | The Amazon Resource Name (arn) of the world template.+worldGenerationJobSummary_template :: Lens.Lens' WorldGenerationJobSummary (Prelude.Maybe Prelude.Text)+worldGenerationJobSummary_template = Lens.lens (\WorldGenerationJobSummary' {template} -> template) (\s@WorldGenerationJobSummary' {} a -> s {template = a} :: WorldGenerationJobSummary)++-- | Information about the world count.+worldGenerationJobSummary_worldCount :: Lens.Lens' WorldGenerationJobSummary (Prelude.Maybe WorldCount)+worldGenerationJobSummary_worldCount = Lens.lens (\WorldGenerationJobSummary' {worldCount} -> worldCount) (\s@WorldGenerationJobSummary' {} a -> s {worldCount = a} :: WorldGenerationJobSummary)++instance Data.FromJSON WorldGenerationJobSummary where+ parseJSON =+ Data.withObject+ "WorldGenerationJobSummary"+ ( \x ->+ WorldGenerationJobSummary'+ Prelude.<$> (x Data..:? "arn")+ Prelude.<*> (x Data..:? "createdAt")+ Prelude.<*> (x Data..:? "failedWorldCount")+ Prelude.<*> (x Data..:? "status")+ Prelude.<*> (x Data..:? "succeededWorldCount")+ Prelude.<*> (x Data..:? "template")+ Prelude.<*> (x Data..:? "worldCount")+ )++instance Prelude.Hashable WorldGenerationJobSummary where+ hashWithSalt _salt WorldGenerationJobSummary' {..} =+ _salt+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` createdAt+ `Prelude.hashWithSalt` failedWorldCount+ `Prelude.hashWithSalt` status+ `Prelude.hashWithSalt` succeededWorldCount+ `Prelude.hashWithSalt` template+ `Prelude.hashWithSalt` worldCount++instance Prelude.NFData WorldGenerationJobSummary where+ rnf WorldGenerationJobSummary' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf createdAt+ `Prelude.seq` Prelude.rnf failedWorldCount+ `Prelude.seq` Prelude.rnf status+ `Prelude.seq` Prelude.rnf succeededWorldCount+ `Prelude.seq` Prelude.rnf template+ `Prelude.seq` Prelude.rnf worldCount
+ gen/Amazonka/RobOMaker/Types/WorldSummary.hs view
@@ -0,0 +1,108 @@+{-# 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.RobOMaker.Types.WorldSummary+-- 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.RobOMaker.Types.WorldSummary 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++-- | Information about a world.+--+-- /See:/ 'newWorldSummary' smart constructor.+data WorldSummary = WorldSummary'+ { -- | The Amazon Resource Name (ARN) of the world.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The time, in milliseconds since the epoch, when the world was created.+ createdAt :: Prelude.Maybe Data.POSIX,+ -- | The Amazon Resource Name (arn) of the world generation job.+ generationJob :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Resource Name (arn) of the world template.+ template :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'WorldSummary' 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', 'worldSummary_arn' - The Amazon Resource Name (ARN) of the world.+--+-- 'createdAt', 'worldSummary_createdAt' - The time, in milliseconds since the epoch, when the world was created.+--+-- 'generationJob', 'worldSummary_generationJob' - The Amazon Resource Name (arn) of the world generation job.+--+-- 'template', 'worldSummary_template' - The Amazon Resource Name (arn) of the world template.+newWorldSummary ::+ WorldSummary+newWorldSummary =+ WorldSummary'+ { arn = Prelude.Nothing,+ createdAt = Prelude.Nothing,+ generationJob = Prelude.Nothing,+ template = Prelude.Nothing+ }++-- | The Amazon Resource Name (ARN) of the world.+worldSummary_arn :: Lens.Lens' WorldSummary (Prelude.Maybe Prelude.Text)+worldSummary_arn = Lens.lens (\WorldSummary' {arn} -> arn) (\s@WorldSummary' {} a -> s {arn = a} :: WorldSummary)++-- | The time, in milliseconds since the epoch, when the world was created.+worldSummary_createdAt :: Lens.Lens' WorldSummary (Prelude.Maybe Prelude.UTCTime)+worldSummary_createdAt = Lens.lens (\WorldSummary' {createdAt} -> createdAt) (\s@WorldSummary' {} a -> s {createdAt = a} :: WorldSummary) Prelude.. Lens.mapping Data._Time++-- | The Amazon Resource Name (arn) of the world generation job.+worldSummary_generationJob :: Lens.Lens' WorldSummary (Prelude.Maybe Prelude.Text)+worldSummary_generationJob = Lens.lens (\WorldSummary' {generationJob} -> generationJob) (\s@WorldSummary' {} a -> s {generationJob = a} :: WorldSummary)++-- | The Amazon Resource Name (arn) of the world template.+worldSummary_template :: Lens.Lens' WorldSummary (Prelude.Maybe Prelude.Text)+worldSummary_template = Lens.lens (\WorldSummary' {template} -> template) (\s@WorldSummary' {} a -> s {template = a} :: WorldSummary)++instance Data.FromJSON WorldSummary where+ parseJSON =+ Data.withObject+ "WorldSummary"+ ( \x ->+ WorldSummary'+ Prelude.<$> (x Data..:? "arn")+ Prelude.<*> (x Data..:? "createdAt")+ Prelude.<*> (x Data..:? "generationJob")+ Prelude.<*> (x Data..:? "template")+ )++instance Prelude.Hashable WorldSummary where+ hashWithSalt _salt WorldSummary' {..} =+ _salt+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` createdAt+ `Prelude.hashWithSalt` generationJob+ `Prelude.hashWithSalt` template++instance Prelude.NFData WorldSummary where+ rnf WorldSummary' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf createdAt+ `Prelude.seq` Prelude.rnf generationJob+ `Prelude.seq` Prelude.rnf template
+ gen/Amazonka/RobOMaker/UntagResource.hs view
@@ -0,0 +1,172 @@+{-# 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.RobOMaker.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)+--+-- Removes the specified tags from the specified AWS RoboMaker resource.+--+-- To remove a tag, specify the tag key. To change the tag value of an+-- existing tag key, use+-- <https://docs.aws.amazon.com/robomaker/latest/dg/API_TagResource.html TagResource>+-- .+module Amazonka.RobOMaker.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 qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.RobOMaker.Types++-- | /See:/ 'newUntagResource' smart constructor.+data UntagResource = UntagResource'+ { -- | The Amazon Resource Name (ARN) of the AWS RoboMaker resource you are+ -- removing tags.+ resourceArn :: Prelude.Text,+ -- | A map that contains tag keys and tag values that will be unattached from+ -- the resource.+ tagKeys :: [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, 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 AWS RoboMaker resource you are+-- removing tags.+--+-- 'tagKeys', 'untagResource_tagKeys' - A map that contains tag keys and tag values that will be unattached from+-- the resource.+newUntagResource ::+ -- | 'resourceArn'+ Prelude.Text ->+ UntagResource+newUntagResource pResourceArn_ =+ UntagResource'+ { resourceArn = pResourceArn_,+ tagKeys = Prelude.mempty+ }++-- | The Amazon Resource Name (ARN) of the AWS RoboMaker resource you are+-- removing tags.+untagResource_resourceArn :: Lens.Lens' UntagResource Prelude.Text+untagResource_resourceArn = Lens.lens (\UntagResource' {resourceArn} -> resourceArn) (\s@UntagResource' {} a -> s {resourceArn = a} :: UntagResource)++-- | A map that contains tag keys and tag values that will be unattached 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.. 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/RobOMaker/UpdateRobotApplication.hs view
@@ -0,0 +1,330 @@+{-# 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.RobOMaker.UpdateRobotApplication+-- 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 a robot application.+module Amazonka.RobOMaker.UpdateRobotApplication+ ( -- * Creating a Request+ UpdateRobotApplication (..),+ newUpdateRobotApplication,++ -- * Request Lenses+ updateRobotApplication_currentRevisionId,+ updateRobotApplication_environment,+ updateRobotApplication_sources,+ updateRobotApplication_application,+ updateRobotApplication_robotSoftwareSuite,++ -- * Destructuring the Response+ UpdateRobotApplicationResponse (..),+ newUpdateRobotApplicationResponse,++ -- * Response Lenses+ updateRobotApplicationResponse_arn,+ updateRobotApplicationResponse_environment,+ updateRobotApplicationResponse_lastUpdatedAt,+ updateRobotApplicationResponse_name,+ updateRobotApplicationResponse_revisionId,+ updateRobotApplicationResponse_robotSoftwareSuite,+ updateRobotApplicationResponse_sources,+ updateRobotApplicationResponse_version,+ updateRobotApplicationResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.RobOMaker.Types++-- | /See:/ 'newUpdateRobotApplication' smart constructor.+data UpdateRobotApplication = UpdateRobotApplication'+ { -- | The revision id for the robot application.+ currentRevisionId :: Prelude.Maybe Prelude.Text,+ -- | The object that contains the Docker image URI for your robot+ -- application.+ environment :: Prelude.Maybe Environment,+ -- | The sources of the robot application.+ sources :: Prelude.Maybe [SourceConfig],+ -- | The application information for the robot application.+ application :: Prelude.Text,+ -- | The robot software suite (ROS distribution) used by the robot+ -- application.+ robotSoftwareSuite :: RobotSoftwareSuite+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateRobotApplication' 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:+--+-- 'currentRevisionId', 'updateRobotApplication_currentRevisionId' - The revision id for the robot application.+--+-- 'environment', 'updateRobotApplication_environment' - The object that contains the Docker image URI for your robot+-- application.+--+-- 'sources', 'updateRobotApplication_sources' - The sources of the robot application.+--+-- 'application', 'updateRobotApplication_application' - The application information for the robot application.+--+-- 'robotSoftwareSuite', 'updateRobotApplication_robotSoftwareSuite' - The robot software suite (ROS distribution) used by the robot+-- application.+newUpdateRobotApplication ::+ -- | 'application'+ Prelude.Text ->+ -- | 'robotSoftwareSuite'+ RobotSoftwareSuite ->+ UpdateRobotApplication+newUpdateRobotApplication+ pApplication_+ pRobotSoftwareSuite_ =+ UpdateRobotApplication'+ { currentRevisionId =+ Prelude.Nothing,+ environment = Prelude.Nothing,+ sources = Prelude.Nothing,+ application = pApplication_,+ robotSoftwareSuite = pRobotSoftwareSuite_+ }++-- | The revision id for the robot application.+updateRobotApplication_currentRevisionId :: Lens.Lens' UpdateRobotApplication (Prelude.Maybe Prelude.Text)+updateRobotApplication_currentRevisionId = Lens.lens (\UpdateRobotApplication' {currentRevisionId} -> currentRevisionId) (\s@UpdateRobotApplication' {} a -> s {currentRevisionId = a} :: UpdateRobotApplication)++-- | The object that contains the Docker image URI for your robot+-- application.+updateRobotApplication_environment :: Lens.Lens' UpdateRobotApplication (Prelude.Maybe Environment)+updateRobotApplication_environment = Lens.lens (\UpdateRobotApplication' {environment} -> environment) (\s@UpdateRobotApplication' {} a -> s {environment = a} :: UpdateRobotApplication)++-- | The sources of the robot application.+updateRobotApplication_sources :: Lens.Lens' UpdateRobotApplication (Prelude.Maybe [SourceConfig])+updateRobotApplication_sources = Lens.lens (\UpdateRobotApplication' {sources} -> sources) (\s@UpdateRobotApplication' {} a -> s {sources = a} :: UpdateRobotApplication) Prelude.. Lens.mapping Lens.coerced++-- | The application information for the robot application.+updateRobotApplication_application :: Lens.Lens' UpdateRobotApplication Prelude.Text+updateRobotApplication_application = Lens.lens (\UpdateRobotApplication' {application} -> application) (\s@UpdateRobotApplication' {} a -> s {application = a} :: UpdateRobotApplication)++-- | The robot software suite (ROS distribution) used by the robot+-- application.+updateRobotApplication_robotSoftwareSuite :: Lens.Lens' UpdateRobotApplication RobotSoftwareSuite+updateRobotApplication_robotSoftwareSuite = Lens.lens (\UpdateRobotApplication' {robotSoftwareSuite} -> robotSoftwareSuite) (\s@UpdateRobotApplication' {} a -> s {robotSoftwareSuite = a} :: UpdateRobotApplication)++instance Core.AWSRequest UpdateRobotApplication where+ type+ AWSResponse UpdateRobotApplication =+ UpdateRobotApplicationResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ UpdateRobotApplicationResponse'+ Prelude.<$> (x Data..?> "arn")+ Prelude.<*> (x Data..?> "environment")+ Prelude.<*> (x Data..?> "lastUpdatedAt")+ Prelude.<*> (x Data..?> "name")+ Prelude.<*> (x Data..?> "revisionId")+ Prelude.<*> (x Data..?> "robotSoftwareSuite")+ Prelude.<*> (x Data..?> "sources" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "version")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable UpdateRobotApplication where+ hashWithSalt _salt UpdateRobotApplication' {..} =+ _salt+ `Prelude.hashWithSalt` currentRevisionId+ `Prelude.hashWithSalt` environment+ `Prelude.hashWithSalt` sources+ `Prelude.hashWithSalt` application+ `Prelude.hashWithSalt` robotSoftwareSuite++instance Prelude.NFData UpdateRobotApplication where+ rnf UpdateRobotApplication' {..} =+ Prelude.rnf currentRevisionId+ `Prelude.seq` Prelude.rnf environment+ `Prelude.seq` Prelude.rnf sources+ `Prelude.seq` Prelude.rnf application+ `Prelude.seq` Prelude.rnf robotSoftwareSuite++instance Data.ToHeaders UpdateRobotApplication where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON UpdateRobotApplication where+ toJSON UpdateRobotApplication' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("currentRevisionId" Data..=)+ Prelude.<$> currentRevisionId,+ ("environment" Data..=) Prelude.<$> environment,+ ("sources" Data..=) Prelude.<$> sources,+ Prelude.Just ("application" Data..= application),+ Prelude.Just+ ("robotSoftwareSuite" Data..= robotSoftwareSuite)+ ]+ )++instance Data.ToPath UpdateRobotApplication where+ toPath = Prelude.const "/updateRobotApplication"++instance Data.ToQuery UpdateRobotApplication where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newUpdateRobotApplicationResponse' smart constructor.+data UpdateRobotApplicationResponse = UpdateRobotApplicationResponse'+ { -- | The Amazon Resource Name (ARN) of the updated robot application.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The object that contains the Docker image URI for your robot+ -- application.+ environment :: Prelude.Maybe Environment,+ -- | The time, in milliseconds since the epoch, when the robot application+ -- was last updated.+ lastUpdatedAt :: Prelude.Maybe Data.POSIX,+ -- | The name of the robot application.+ name :: Prelude.Maybe Prelude.Text,+ -- | The revision id of the robot application.+ revisionId :: Prelude.Maybe Prelude.Text,+ -- | The robot software suite (ROS distribution) used by the robot+ -- application.+ robotSoftwareSuite :: Prelude.Maybe RobotSoftwareSuite,+ -- | The sources of the robot application.+ sources :: Prelude.Maybe [Source],+ -- | The version of the robot application.+ version :: 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 'UpdateRobotApplicationResponse' 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', 'updateRobotApplicationResponse_arn' - The Amazon Resource Name (ARN) of the updated robot application.+--+-- 'environment', 'updateRobotApplicationResponse_environment' - The object that contains the Docker image URI for your robot+-- application.+--+-- 'lastUpdatedAt', 'updateRobotApplicationResponse_lastUpdatedAt' - The time, in milliseconds since the epoch, when the robot application+-- was last updated.+--+-- 'name', 'updateRobotApplicationResponse_name' - The name of the robot application.+--+-- 'revisionId', 'updateRobotApplicationResponse_revisionId' - The revision id of the robot application.+--+-- 'robotSoftwareSuite', 'updateRobotApplicationResponse_robotSoftwareSuite' - The robot software suite (ROS distribution) used by the robot+-- application.+--+-- 'sources', 'updateRobotApplicationResponse_sources' - The sources of the robot application.+--+-- 'version', 'updateRobotApplicationResponse_version' - The version of the robot application.+--+-- 'httpStatus', 'updateRobotApplicationResponse_httpStatus' - The response's http status code.+newUpdateRobotApplicationResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ UpdateRobotApplicationResponse+newUpdateRobotApplicationResponse pHttpStatus_ =+ UpdateRobotApplicationResponse'+ { arn =+ Prelude.Nothing,+ environment = Prelude.Nothing,+ lastUpdatedAt = Prelude.Nothing,+ name = Prelude.Nothing,+ revisionId = Prelude.Nothing,+ robotSoftwareSuite = Prelude.Nothing,+ sources = Prelude.Nothing,+ version = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The Amazon Resource Name (ARN) of the updated robot application.+updateRobotApplicationResponse_arn :: Lens.Lens' UpdateRobotApplicationResponse (Prelude.Maybe Prelude.Text)+updateRobotApplicationResponse_arn = Lens.lens (\UpdateRobotApplicationResponse' {arn} -> arn) (\s@UpdateRobotApplicationResponse' {} a -> s {arn = a} :: UpdateRobotApplicationResponse)++-- | The object that contains the Docker image URI for your robot+-- application.+updateRobotApplicationResponse_environment :: Lens.Lens' UpdateRobotApplicationResponse (Prelude.Maybe Environment)+updateRobotApplicationResponse_environment = Lens.lens (\UpdateRobotApplicationResponse' {environment} -> environment) (\s@UpdateRobotApplicationResponse' {} a -> s {environment = a} :: UpdateRobotApplicationResponse)++-- | The time, in milliseconds since the epoch, when the robot application+-- was last updated.+updateRobotApplicationResponse_lastUpdatedAt :: Lens.Lens' UpdateRobotApplicationResponse (Prelude.Maybe Prelude.UTCTime)+updateRobotApplicationResponse_lastUpdatedAt = Lens.lens (\UpdateRobotApplicationResponse' {lastUpdatedAt} -> lastUpdatedAt) (\s@UpdateRobotApplicationResponse' {} a -> s {lastUpdatedAt = a} :: UpdateRobotApplicationResponse) Prelude.. Lens.mapping Data._Time++-- | The name of the robot application.+updateRobotApplicationResponse_name :: Lens.Lens' UpdateRobotApplicationResponse (Prelude.Maybe Prelude.Text)+updateRobotApplicationResponse_name = Lens.lens (\UpdateRobotApplicationResponse' {name} -> name) (\s@UpdateRobotApplicationResponse' {} a -> s {name = a} :: UpdateRobotApplicationResponse)++-- | The revision id of the robot application.+updateRobotApplicationResponse_revisionId :: Lens.Lens' UpdateRobotApplicationResponse (Prelude.Maybe Prelude.Text)+updateRobotApplicationResponse_revisionId = Lens.lens (\UpdateRobotApplicationResponse' {revisionId} -> revisionId) (\s@UpdateRobotApplicationResponse' {} a -> s {revisionId = a} :: UpdateRobotApplicationResponse)++-- | The robot software suite (ROS distribution) used by the robot+-- application.+updateRobotApplicationResponse_robotSoftwareSuite :: Lens.Lens' UpdateRobotApplicationResponse (Prelude.Maybe RobotSoftwareSuite)+updateRobotApplicationResponse_robotSoftwareSuite = Lens.lens (\UpdateRobotApplicationResponse' {robotSoftwareSuite} -> robotSoftwareSuite) (\s@UpdateRobotApplicationResponse' {} a -> s {robotSoftwareSuite = a} :: UpdateRobotApplicationResponse)++-- | The sources of the robot application.+updateRobotApplicationResponse_sources :: Lens.Lens' UpdateRobotApplicationResponse (Prelude.Maybe [Source])+updateRobotApplicationResponse_sources = Lens.lens (\UpdateRobotApplicationResponse' {sources} -> sources) (\s@UpdateRobotApplicationResponse' {} a -> s {sources = a} :: UpdateRobotApplicationResponse) Prelude.. Lens.mapping Lens.coerced++-- | The version of the robot application.+updateRobotApplicationResponse_version :: Lens.Lens' UpdateRobotApplicationResponse (Prelude.Maybe Prelude.Text)+updateRobotApplicationResponse_version = Lens.lens (\UpdateRobotApplicationResponse' {version} -> version) (\s@UpdateRobotApplicationResponse' {} a -> s {version = a} :: UpdateRobotApplicationResponse)++-- | The response's http status code.+updateRobotApplicationResponse_httpStatus :: Lens.Lens' UpdateRobotApplicationResponse Prelude.Int+updateRobotApplicationResponse_httpStatus = Lens.lens (\UpdateRobotApplicationResponse' {httpStatus} -> httpStatus) (\s@UpdateRobotApplicationResponse' {} a -> s {httpStatus = a} :: UpdateRobotApplicationResponse)++instance+ Prelude.NFData+ UpdateRobotApplicationResponse+ where+ rnf UpdateRobotApplicationResponse' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf environment+ `Prelude.seq` Prelude.rnf lastUpdatedAt+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf revisionId+ `Prelude.seq` Prelude.rnf robotSoftwareSuite+ `Prelude.seq` Prelude.rnf sources+ `Prelude.seq` Prelude.rnf version+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/RobOMaker/UpdateSimulationApplication.hs view
@@ -0,0 +1,383 @@+{-# 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.RobOMaker.UpdateSimulationApplication+-- 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 a simulation application.+module Amazonka.RobOMaker.UpdateSimulationApplication+ ( -- * Creating a Request+ UpdateSimulationApplication (..),+ newUpdateSimulationApplication,++ -- * Request Lenses+ updateSimulationApplication_currentRevisionId,+ updateSimulationApplication_environment,+ updateSimulationApplication_renderingEngine,+ updateSimulationApplication_sources,+ updateSimulationApplication_application,+ updateSimulationApplication_simulationSoftwareSuite,+ updateSimulationApplication_robotSoftwareSuite,++ -- * Destructuring the Response+ UpdateSimulationApplicationResponse (..),+ newUpdateSimulationApplicationResponse,++ -- * Response Lenses+ updateSimulationApplicationResponse_arn,+ updateSimulationApplicationResponse_environment,+ updateSimulationApplicationResponse_lastUpdatedAt,+ updateSimulationApplicationResponse_name,+ updateSimulationApplicationResponse_renderingEngine,+ updateSimulationApplicationResponse_revisionId,+ updateSimulationApplicationResponse_robotSoftwareSuite,+ updateSimulationApplicationResponse_simulationSoftwareSuite,+ updateSimulationApplicationResponse_sources,+ updateSimulationApplicationResponse_version,+ updateSimulationApplicationResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.RobOMaker.Types++-- | /See:/ 'newUpdateSimulationApplication' smart constructor.+data UpdateSimulationApplication = UpdateSimulationApplication'+ { -- | The revision id for the robot application.+ currentRevisionId :: Prelude.Maybe Prelude.Text,+ -- | The object that contains the Docker image URI for your simulation+ -- application.+ environment :: Prelude.Maybe Environment,+ -- | The rendering engine for the simulation application.+ renderingEngine :: Prelude.Maybe RenderingEngine,+ -- | The sources of the simulation application.+ sources :: Prelude.Maybe [SourceConfig],+ -- | The application information for the simulation application.+ application :: Prelude.Text,+ -- | The simulation software suite used by the simulation application.+ simulationSoftwareSuite :: SimulationSoftwareSuite,+ -- | Information about the robot software suite (ROS distribution).+ robotSoftwareSuite :: RobotSoftwareSuite+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateSimulationApplication' 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:+--+-- 'currentRevisionId', 'updateSimulationApplication_currentRevisionId' - The revision id for the robot application.+--+-- 'environment', 'updateSimulationApplication_environment' - The object that contains the Docker image URI for your simulation+-- application.+--+-- 'renderingEngine', 'updateSimulationApplication_renderingEngine' - The rendering engine for the simulation application.+--+-- 'sources', 'updateSimulationApplication_sources' - The sources of the simulation application.+--+-- 'application', 'updateSimulationApplication_application' - The application information for the simulation application.+--+-- 'simulationSoftwareSuite', 'updateSimulationApplication_simulationSoftwareSuite' - The simulation software suite used by the simulation application.+--+-- 'robotSoftwareSuite', 'updateSimulationApplication_robotSoftwareSuite' - Information about the robot software suite (ROS distribution).+newUpdateSimulationApplication ::+ -- | 'application'+ Prelude.Text ->+ -- | 'simulationSoftwareSuite'+ SimulationSoftwareSuite ->+ -- | 'robotSoftwareSuite'+ RobotSoftwareSuite ->+ UpdateSimulationApplication+newUpdateSimulationApplication+ pApplication_+ pSimulationSoftwareSuite_+ pRobotSoftwareSuite_ =+ UpdateSimulationApplication'+ { currentRevisionId =+ Prelude.Nothing,+ environment = Prelude.Nothing,+ renderingEngine = Prelude.Nothing,+ sources = Prelude.Nothing,+ application = pApplication_,+ simulationSoftwareSuite =+ pSimulationSoftwareSuite_,+ robotSoftwareSuite = pRobotSoftwareSuite_+ }++-- | The revision id for the robot application.+updateSimulationApplication_currentRevisionId :: Lens.Lens' UpdateSimulationApplication (Prelude.Maybe Prelude.Text)+updateSimulationApplication_currentRevisionId = Lens.lens (\UpdateSimulationApplication' {currentRevisionId} -> currentRevisionId) (\s@UpdateSimulationApplication' {} a -> s {currentRevisionId = a} :: UpdateSimulationApplication)++-- | The object that contains the Docker image URI for your simulation+-- application.+updateSimulationApplication_environment :: Lens.Lens' UpdateSimulationApplication (Prelude.Maybe Environment)+updateSimulationApplication_environment = Lens.lens (\UpdateSimulationApplication' {environment} -> environment) (\s@UpdateSimulationApplication' {} a -> s {environment = a} :: UpdateSimulationApplication)++-- | The rendering engine for the simulation application.+updateSimulationApplication_renderingEngine :: Lens.Lens' UpdateSimulationApplication (Prelude.Maybe RenderingEngine)+updateSimulationApplication_renderingEngine = Lens.lens (\UpdateSimulationApplication' {renderingEngine} -> renderingEngine) (\s@UpdateSimulationApplication' {} a -> s {renderingEngine = a} :: UpdateSimulationApplication)++-- | The sources of the simulation application.+updateSimulationApplication_sources :: Lens.Lens' UpdateSimulationApplication (Prelude.Maybe [SourceConfig])+updateSimulationApplication_sources = Lens.lens (\UpdateSimulationApplication' {sources} -> sources) (\s@UpdateSimulationApplication' {} a -> s {sources = a} :: UpdateSimulationApplication) Prelude.. Lens.mapping Lens.coerced++-- | The application information for the simulation application.+updateSimulationApplication_application :: Lens.Lens' UpdateSimulationApplication Prelude.Text+updateSimulationApplication_application = Lens.lens (\UpdateSimulationApplication' {application} -> application) (\s@UpdateSimulationApplication' {} a -> s {application = a} :: UpdateSimulationApplication)++-- | The simulation software suite used by the simulation application.+updateSimulationApplication_simulationSoftwareSuite :: Lens.Lens' UpdateSimulationApplication SimulationSoftwareSuite+updateSimulationApplication_simulationSoftwareSuite = Lens.lens (\UpdateSimulationApplication' {simulationSoftwareSuite} -> simulationSoftwareSuite) (\s@UpdateSimulationApplication' {} a -> s {simulationSoftwareSuite = a} :: UpdateSimulationApplication)++-- | Information about the robot software suite (ROS distribution).+updateSimulationApplication_robotSoftwareSuite :: Lens.Lens' UpdateSimulationApplication RobotSoftwareSuite+updateSimulationApplication_robotSoftwareSuite = Lens.lens (\UpdateSimulationApplication' {robotSoftwareSuite} -> robotSoftwareSuite) (\s@UpdateSimulationApplication' {} a -> s {robotSoftwareSuite = a} :: UpdateSimulationApplication)++instance Core.AWSRequest UpdateSimulationApplication where+ type+ AWSResponse UpdateSimulationApplication =+ UpdateSimulationApplicationResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ UpdateSimulationApplicationResponse'+ Prelude.<$> (x Data..?> "arn")+ Prelude.<*> (x Data..?> "environment")+ Prelude.<*> (x Data..?> "lastUpdatedAt")+ Prelude.<*> (x Data..?> "name")+ Prelude.<*> (x Data..?> "renderingEngine")+ Prelude.<*> (x Data..?> "revisionId")+ Prelude.<*> (x Data..?> "robotSoftwareSuite")+ Prelude.<*> (x Data..?> "simulationSoftwareSuite")+ Prelude.<*> (x Data..?> "sources" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "version")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable UpdateSimulationApplication where+ hashWithSalt _salt UpdateSimulationApplication' {..} =+ _salt+ `Prelude.hashWithSalt` currentRevisionId+ `Prelude.hashWithSalt` environment+ `Prelude.hashWithSalt` renderingEngine+ `Prelude.hashWithSalt` sources+ `Prelude.hashWithSalt` application+ `Prelude.hashWithSalt` simulationSoftwareSuite+ `Prelude.hashWithSalt` robotSoftwareSuite++instance Prelude.NFData UpdateSimulationApplication where+ rnf UpdateSimulationApplication' {..} =+ Prelude.rnf currentRevisionId+ `Prelude.seq` Prelude.rnf environment+ `Prelude.seq` Prelude.rnf renderingEngine+ `Prelude.seq` Prelude.rnf sources+ `Prelude.seq` Prelude.rnf application+ `Prelude.seq` Prelude.rnf simulationSoftwareSuite+ `Prelude.seq` Prelude.rnf robotSoftwareSuite++instance Data.ToHeaders UpdateSimulationApplication where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON UpdateSimulationApplication where+ toJSON UpdateSimulationApplication' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("currentRevisionId" Data..=)+ Prelude.<$> currentRevisionId,+ ("environment" Data..=) Prelude.<$> environment,+ ("renderingEngine" Data..=)+ Prelude.<$> renderingEngine,+ ("sources" Data..=) Prelude.<$> sources,+ Prelude.Just ("application" Data..= application),+ Prelude.Just+ ( "simulationSoftwareSuite"+ Data..= simulationSoftwareSuite+ ),+ Prelude.Just+ ("robotSoftwareSuite" Data..= robotSoftwareSuite)+ ]+ )++instance Data.ToPath UpdateSimulationApplication where+ toPath = Prelude.const "/updateSimulationApplication"++instance Data.ToQuery UpdateSimulationApplication where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newUpdateSimulationApplicationResponse' smart constructor.+data UpdateSimulationApplicationResponse = UpdateSimulationApplicationResponse'+ { -- | The Amazon Resource Name (ARN) of the updated simulation application.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The object that contains the Docker image URI used for your simulation+ -- application.+ environment :: Prelude.Maybe Environment,+ -- | The time, in milliseconds since the epoch, when the simulation+ -- application was last updated.+ lastUpdatedAt :: Prelude.Maybe Data.POSIX,+ -- | The name of the simulation application.+ name :: Prelude.Maybe Prelude.Text,+ -- | The rendering engine for the simulation application.+ renderingEngine :: Prelude.Maybe RenderingEngine,+ -- | The revision id of the simulation application.+ revisionId :: Prelude.Maybe Prelude.Text,+ -- | Information about the robot software suite (ROS distribution).+ robotSoftwareSuite :: Prelude.Maybe RobotSoftwareSuite,+ -- | The simulation software suite used by the simulation application.+ simulationSoftwareSuite :: Prelude.Maybe SimulationSoftwareSuite,+ -- | The sources of the simulation application.+ sources :: Prelude.Maybe [Source],+ -- | The version of the robot application.+ version :: 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 'UpdateSimulationApplicationResponse' 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', 'updateSimulationApplicationResponse_arn' - The Amazon Resource Name (ARN) of the updated simulation application.+--+-- 'environment', 'updateSimulationApplicationResponse_environment' - The object that contains the Docker image URI used for your simulation+-- application.+--+-- 'lastUpdatedAt', 'updateSimulationApplicationResponse_lastUpdatedAt' - The time, in milliseconds since the epoch, when the simulation+-- application was last updated.+--+-- 'name', 'updateSimulationApplicationResponse_name' - The name of the simulation application.+--+-- 'renderingEngine', 'updateSimulationApplicationResponse_renderingEngine' - The rendering engine for the simulation application.+--+-- 'revisionId', 'updateSimulationApplicationResponse_revisionId' - The revision id of the simulation application.+--+-- 'robotSoftwareSuite', 'updateSimulationApplicationResponse_robotSoftwareSuite' - Information about the robot software suite (ROS distribution).+--+-- 'simulationSoftwareSuite', 'updateSimulationApplicationResponse_simulationSoftwareSuite' - The simulation software suite used by the simulation application.+--+-- 'sources', 'updateSimulationApplicationResponse_sources' - The sources of the simulation application.+--+-- 'version', 'updateSimulationApplicationResponse_version' - The version of the robot application.+--+-- 'httpStatus', 'updateSimulationApplicationResponse_httpStatus' - The response's http status code.+newUpdateSimulationApplicationResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ UpdateSimulationApplicationResponse+newUpdateSimulationApplicationResponse pHttpStatus_ =+ UpdateSimulationApplicationResponse'+ { arn =+ Prelude.Nothing,+ environment = Prelude.Nothing,+ lastUpdatedAt = Prelude.Nothing,+ name = Prelude.Nothing,+ renderingEngine = Prelude.Nothing,+ revisionId = Prelude.Nothing,+ robotSoftwareSuite = Prelude.Nothing,+ simulationSoftwareSuite =+ Prelude.Nothing,+ sources = Prelude.Nothing,+ version = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The Amazon Resource Name (ARN) of the updated simulation application.+updateSimulationApplicationResponse_arn :: Lens.Lens' UpdateSimulationApplicationResponse (Prelude.Maybe Prelude.Text)+updateSimulationApplicationResponse_arn = Lens.lens (\UpdateSimulationApplicationResponse' {arn} -> arn) (\s@UpdateSimulationApplicationResponse' {} a -> s {arn = a} :: UpdateSimulationApplicationResponse)++-- | The object that contains the Docker image URI used for your simulation+-- application.+updateSimulationApplicationResponse_environment :: Lens.Lens' UpdateSimulationApplicationResponse (Prelude.Maybe Environment)+updateSimulationApplicationResponse_environment = Lens.lens (\UpdateSimulationApplicationResponse' {environment} -> environment) (\s@UpdateSimulationApplicationResponse' {} a -> s {environment = a} :: UpdateSimulationApplicationResponse)++-- | The time, in milliseconds since the epoch, when the simulation+-- application was last updated.+updateSimulationApplicationResponse_lastUpdatedAt :: Lens.Lens' UpdateSimulationApplicationResponse (Prelude.Maybe Prelude.UTCTime)+updateSimulationApplicationResponse_lastUpdatedAt = Lens.lens (\UpdateSimulationApplicationResponse' {lastUpdatedAt} -> lastUpdatedAt) (\s@UpdateSimulationApplicationResponse' {} a -> s {lastUpdatedAt = a} :: UpdateSimulationApplicationResponse) Prelude.. Lens.mapping Data._Time++-- | The name of the simulation application.+updateSimulationApplicationResponse_name :: Lens.Lens' UpdateSimulationApplicationResponse (Prelude.Maybe Prelude.Text)+updateSimulationApplicationResponse_name = Lens.lens (\UpdateSimulationApplicationResponse' {name} -> name) (\s@UpdateSimulationApplicationResponse' {} a -> s {name = a} :: UpdateSimulationApplicationResponse)++-- | The rendering engine for the simulation application.+updateSimulationApplicationResponse_renderingEngine :: Lens.Lens' UpdateSimulationApplicationResponse (Prelude.Maybe RenderingEngine)+updateSimulationApplicationResponse_renderingEngine = Lens.lens (\UpdateSimulationApplicationResponse' {renderingEngine} -> renderingEngine) (\s@UpdateSimulationApplicationResponse' {} a -> s {renderingEngine = a} :: UpdateSimulationApplicationResponse)++-- | The revision id of the simulation application.+updateSimulationApplicationResponse_revisionId :: Lens.Lens' UpdateSimulationApplicationResponse (Prelude.Maybe Prelude.Text)+updateSimulationApplicationResponse_revisionId = Lens.lens (\UpdateSimulationApplicationResponse' {revisionId} -> revisionId) (\s@UpdateSimulationApplicationResponse' {} a -> s {revisionId = a} :: UpdateSimulationApplicationResponse)++-- | Information about the robot software suite (ROS distribution).+updateSimulationApplicationResponse_robotSoftwareSuite :: Lens.Lens' UpdateSimulationApplicationResponse (Prelude.Maybe RobotSoftwareSuite)+updateSimulationApplicationResponse_robotSoftwareSuite = Lens.lens (\UpdateSimulationApplicationResponse' {robotSoftwareSuite} -> robotSoftwareSuite) (\s@UpdateSimulationApplicationResponse' {} a -> s {robotSoftwareSuite = a} :: UpdateSimulationApplicationResponse)++-- | The simulation software suite used by the simulation application.+updateSimulationApplicationResponse_simulationSoftwareSuite :: Lens.Lens' UpdateSimulationApplicationResponse (Prelude.Maybe SimulationSoftwareSuite)+updateSimulationApplicationResponse_simulationSoftwareSuite = Lens.lens (\UpdateSimulationApplicationResponse' {simulationSoftwareSuite} -> simulationSoftwareSuite) (\s@UpdateSimulationApplicationResponse' {} a -> s {simulationSoftwareSuite = a} :: UpdateSimulationApplicationResponse)++-- | The sources of the simulation application.+updateSimulationApplicationResponse_sources :: Lens.Lens' UpdateSimulationApplicationResponse (Prelude.Maybe [Source])+updateSimulationApplicationResponse_sources = Lens.lens (\UpdateSimulationApplicationResponse' {sources} -> sources) (\s@UpdateSimulationApplicationResponse' {} a -> s {sources = a} :: UpdateSimulationApplicationResponse) Prelude.. Lens.mapping Lens.coerced++-- | The version of the robot application.+updateSimulationApplicationResponse_version :: Lens.Lens' UpdateSimulationApplicationResponse (Prelude.Maybe Prelude.Text)+updateSimulationApplicationResponse_version = Lens.lens (\UpdateSimulationApplicationResponse' {version} -> version) (\s@UpdateSimulationApplicationResponse' {} a -> s {version = a} :: UpdateSimulationApplicationResponse)++-- | The response's http status code.+updateSimulationApplicationResponse_httpStatus :: Lens.Lens' UpdateSimulationApplicationResponse Prelude.Int+updateSimulationApplicationResponse_httpStatus = Lens.lens (\UpdateSimulationApplicationResponse' {httpStatus} -> httpStatus) (\s@UpdateSimulationApplicationResponse' {} a -> s {httpStatus = a} :: UpdateSimulationApplicationResponse)++instance+ Prelude.NFData+ UpdateSimulationApplicationResponse+ where+ rnf UpdateSimulationApplicationResponse' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf environment+ `Prelude.seq` Prelude.rnf lastUpdatedAt+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf renderingEngine+ `Prelude.seq` Prelude.rnf revisionId+ `Prelude.seq` Prelude.rnf robotSoftwareSuite+ `Prelude.seq` Prelude.rnf simulationSoftwareSuite+ `Prelude.seq` Prelude.rnf sources+ `Prelude.seq` Prelude.rnf version+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/RobOMaker/UpdateWorldTemplate.hs view
@@ -0,0 +1,250 @@+{-# 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.RobOMaker.UpdateWorldTemplate+-- 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 a world template.+module Amazonka.RobOMaker.UpdateWorldTemplate+ ( -- * Creating a Request+ UpdateWorldTemplate (..),+ newUpdateWorldTemplate,++ -- * Request Lenses+ updateWorldTemplate_name,+ updateWorldTemplate_templateBody,+ updateWorldTemplate_templateLocation,+ updateWorldTemplate_template,++ -- * Destructuring the Response+ UpdateWorldTemplateResponse (..),+ newUpdateWorldTemplateResponse,++ -- * Response Lenses+ updateWorldTemplateResponse_arn,+ updateWorldTemplateResponse_createdAt,+ updateWorldTemplateResponse_lastUpdatedAt,+ updateWorldTemplateResponse_name,+ updateWorldTemplateResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.RobOMaker.Types++-- | /See:/ 'newUpdateWorldTemplate' smart constructor.+data UpdateWorldTemplate = UpdateWorldTemplate'+ { -- | The name of the template.+ name :: Prelude.Maybe Prelude.Text,+ -- | The world template body.+ templateBody :: Prelude.Maybe Prelude.Text,+ -- | The location of the world template.+ templateLocation :: Prelude.Maybe TemplateLocation,+ -- | The Amazon Resource Name (arn) of the world template to update.+ template :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateWorldTemplate' 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:+--+-- 'name', 'updateWorldTemplate_name' - The name of the template.+--+-- 'templateBody', 'updateWorldTemplate_templateBody' - The world template body.+--+-- 'templateLocation', 'updateWorldTemplate_templateLocation' - The location of the world template.+--+-- 'template', 'updateWorldTemplate_template' - The Amazon Resource Name (arn) of the world template to update.+newUpdateWorldTemplate ::+ -- | 'template'+ Prelude.Text ->+ UpdateWorldTemplate+newUpdateWorldTemplate pTemplate_ =+ UpdateWorldTemplate'+ { name = Prelude.Nothing,+ templateBody = Prelude.Nothing,+ templateLocation = Prelude.Nothing,+ template = pTemplate_+ }++-- | The name of the template.+updateWorldTemplate_name :: Lens.Lens' UpdateWorldTemplate (Prelude.Maybe Prelude.Text)+updateWorldTemplate_name = Lens.lens (\UpdateWorldTemplate' {name} -> name) (\s@UpdateWorldTemplate' {} a -> s {name = a} :: UpdateWorldTemplate)++-- | The world template body.+updateWorldTemplate_templateBody :: Lens.Lens' UpdateWorldTemplate (Prelude.Maybe Prelude.Text)+updateWorldTemplate_templateBody = Lens.lens (\UpdateWorldTemplate' {templateBody} -> templateBody) (\s@UpdateWorldTemplate' {} a -> s {templateBody = a} :: UpdateWorldTemplate)++-- | The location of the world template.+updateWorldTemplate_templateLocation :: Lens.Lens' UpdateWorldTemplate (Prelude.Maybe TemplateLocation)+updateWorldTemplate_templateLocation = Lens.lens (\UpdateWorldTemplate' {templateLocation} -> templateLocation) (\s@UpdateWorldTemplate' {} a -> s {templateLocation = a} :: UpdateWorldTemplate)++-- | The Amazon Resource Name (arn) of the world template to update.+updateWorldTemplate_template :: Lens.Lens' UpdateWorldTemplate Prelude.Text+updateWorldTemplate_template = Lens.lens (\UpdateWorldTemplate' {template} -> template) (\s@UpdateWorldTemplate' {} a -> s {template = a} :: UpdateWorldTemplate)++instance Core.AWSRequest UpdateWorldTemplate where+ type+ AWSResponse UpdateWorldTemplate =+ UpdateWorldTemplateResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ UpdateWorldTemplateResponse'+ Prelude.<$> (x Data..?> "arn")+ Prelude.<*> (x Data..?> "createdAt")+ Prelude.<*> (x Data..?> "lastUpdatedAt")+ Prelude.<*> (x Data..?> "name")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable UpdateWorldTemplate where+ hashWithSalt _salt UpdateWorldTemplate' {..} =+ _salt+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` templateBody+ `Prelude.hashWithSalt` templateLocation+ `Prelude.hashWithSalt` template++instance Prelude.NFData UpdateWorldTemplate where+ rnf UpdateWorldTemplate' {..} =+ Prelude.rnf name+ `Prelude.seq` Prelude.rnf templateBody+ `Prelude.seq` Prelude.rnf templateLocation+ `Prelude.seq` Prelude.rnf template++instance Data.ToHeaders UpdateWorldTemplate where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON UpdateWorldTemplate where+ toJSON UpdateWorldTemplate' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("name" Data..=) Prelude.<$> name,+ ("templateBody" Data..=) Prelude.<$> templateBody,+ ("templateLocation" Data..=)+ Prelude.<$> templateLocation,+ Prelude.Just ("template" Data..= template)+ ]+ )++instance Data.ToPath UpdateWorldTemplate where+ toPath = Prelude.const "/updateWorldTemplate"++instance Data.ToQuery UpdateWorldTemplate where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newUpdateWorldTemplateResponse' smart constructor.+data UpdateWorldTemplateResponse = UpdateWorldTemplateResponse'+ { -- | The Amazon Resource Name (arn) of the world template.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The time, in milliseconds since the epoch, when the world template was+ -- created.+ createdAt :: Prelude.Maybe Data.POSIX,+ -- | The time, in milliseconds since the epoch, when the world template was+ -- last updated.+ lastUpdatedAt :: Prelude.Maybe Data.POSIX,+ -- | The name of the world template.+ name :: 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 'UpdateWorldTemplateResponse' 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', 'updateWorldTemplateResponse_arn' - The Amazon Resource Name (arn) of the world template.+--+-- 'createdAt', 'updateWorldTemplateResponse_createdAt' - The time, in milliseconds since the epoch, when the world template was+-- created.+--+-- 'lastUpdatedAt', 'updateWorldTemplateResponse_lastUpdatedAt' - The time, in milliseconds since the epoch, when the world template was+-- last updated.+--+-- 'name', 'updateWorldTemplateResponse_name' - The name of the world template.+--+-- 'httpStatus', 'updateWorldTemplateResponse_httpStatus' - The response's http status code.+newUpdateWorldTemplateResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ UpdateWorldTemplateResponse+newUpdateWorldTemplateResponse pHttpStatus_ =+ UpdateWorldTemplateResponse'+ { arn = Prelude.Nothing,+ createdAt = Prelude.Nothing,+ lastUpdatedAt = Prelude.Nothing,+ name = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The Amazon Resource Name (arn) of the world template.+updateWorldTemplateResponse_arn :: Lens.Lens' UpdateWorldTemplateResponse (Prelude.Maybe Prelude.Text)+updateWorldTemplateResponse_arn = Lens.lens (\UpdateWorldTemplateResponse' {arn} -> arn) (\s@UpdateWorldTemplateResponse' {} a -> s {arn = a} :: UpdateWorldTemplateResponse)++-- | The time, in milliseconds since the epoch, when the world template was+-- created.+updateWorldTemplateResponse_createdAt :: Lens.Lens' UpdateWorldTemplateResponse (Prelude.Maybe Prelude.UTCTime)+updateWorldTemplateResponse_createdAt = Lens.lens (\UpdateWorldTemplateResponse' {createdAt} -> createdAt) (\s@UpdateWorldTemplateResponse' {} a -> s {createdAt = a} :: UpdateWorldTemplateResponse) Prelude.. Lens.mapping Data._Time++-- | The time, in milliseconds since the epoch, when the world template was+-- last updated.+updateWorldTemplateResponse_lastUpdatedAt :: Lens.Lens' UpdateWorldTemplateResponse (Prelude.Maybe Prelude.UTCTime)+updateWorldTemplateResponse_lastUpdatedAt = Lens.lens (\UpdateWorldTemplateResponse' {lastUpdatedAt} -> lastUpdatedAt) (\s@UpdateWorldTemplateResponse' {} a -> s {lastUpdatedAt = a} :: UpdateWorldTemplateResponse) Prelude.. Lens.mapping Data._Time++-- | The name of the world template.+updateWorldTemplateResponse_name :: Lens.Lens' UpdateWorldTemplateResponse (Prelude.Maybe Prelude.Text)+updateWorldTemplateResponse_name = Lens.lens (\UpdateWorldTemplateResponse' {name} -> name) (\s@UpdateWorldTemplateResponse' {} a -> s {name = a} :: UpdateWorldTemplateResponse)++-- | The response's http status code.+updateWorldTemplateResponse_httpStatus :: Lens.Lens' UpdateWorldTemplateResponse Prelude.Int+updateWorldTemplateResponse_httpStatus = Lens.lens (\UpdateWorldTemplateResponse' {httpStatus} -> httpStatus) (\s@UpdateWorldTemplateResponse' {} a -> s {httpStatus = a} :: UpdateWorldTemplateResponse)++instance Prelude.NFData UpdateWorldTemplateResponse where+ rnf UpdateWorldTemplateResponse' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf createdAt+ `Prelude.seq` Prelude.rnf lastUpdatedAt+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/RobOMaker/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.RobOMaker.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.RobOMaker.Waiters where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import Amazonka.RobOMaker.Lens+import Amazonka.RobOMaker.Types
+ 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.RobOMaker+import Test.Amazonka.RobOMaker.Internal+import Test.Tasty++main :: IO ()+main =+ defaultMain $+ testGroup+ "RobOMaker"+ [ testGroup "tests" tests,+ testGroup "fixtures" fixtures+ ]
+ test/Test/Amazonka/Gen/RobOMaker.hs view
@@ -0,0 +1,878 @@+{-# 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.RobOMaker+-- 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.RobOMaker where++import Amazonka.RobOMaker+import qualified Data.Proxy as Proxy+import Test.Amazonka.Fixture+import Test.Amazonka.Prelude+import Test.Amazonka.RobOMaker.Internal+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"+-- [ requestBatchDeleteWorlds $+-- newBatchDeleteWorlds+--+-- , requestBatchDescribeSimulationJob $+-- newBatchDescribeSimulationJob+--+-- , requestCancelSimulationJob $+-- newCancelSimulationJob+--+-- , requestCancelSimulationJobBatch $+-- newCancelSimulationJobBatch+--+-- , requestCancelWorldExportJob $+-- newCancelWorldExportJob+--+-- , requestCancelWorldGenerationJob $+-- newCancelWorldGenerationJob+--+-- , requestCreateRobotApplication $+-- newCreateRobotApplication+--+-- , requestCreateRobotApplicationVersion $+-- newCreateRobotApplicationVersion+--+-- , requestCreateSimulationApplication $+-- newCreateSimulationApplication+--+-- , requestCreateSimulationApplicationVersion $+-- newCreateSimulationApplicationVersion+--+-- , requestCreateSimulationJob $+-- newCreateSimulationJob+--+-- , requestCreateWorldExportJob $+-- newCreateWorldExportJob+--+-- , requestCreateWorldGenerationJob $+-- newCreateWorldGenerationJob+--+-- , requestCreateWorldTemplate $+-- newCreateWorldTemplate+--+-- , requestDeleteRobotApplication $+-- newDeleteRobotApplication+--+-- , requestDeleteSimulationApplication $+-- newDeleteSimulationApplication+--+-- , requestDeleteWorldTemplate $+-- newDeleteWorldTemplate+--+-- , requestDescribeRobotApplication $+-- newDescribeRobotApplication+--+-- , requestDescribeSimulationApplication $+-- newDescribeSimulationApplication+--+-- , requestDescribeSimulationJob $+-- newDescribeSimulationJob+--+-- , requestDescribeSimulationJobBatch $+-- newDescribeSimulationJobBatch+--+-- , requestDescribeWorld $+-- newDescribeWorld+--+-- , requestDescribeWorldExportJob $+-- newDescribeWorldExportJob+--+-- , requestDescribeWorldGenerationJob $+-- newDescribeWorldGenerationJob+--+-- , requestDescribeWorldTemplate $+-- newDescribeWorldTemplate+--+-- , requestGetWorldTemplateBody $+-- newGetWorldTemplateBody+--+-- , requestListRobotApplications $+-- newListRobotApplications+--+-- , requestListSimulationApplications $+-- newListSimulationApplications+--+-- , requestListSimulationJobBatches $+-- newListSimulationJobBatches+--+-- , requestListSimulationJobs $+-- newListSimulationJobs+--+-- , requestListTagsForResource $+-- newListTagsForResource+--+-- , requestListWorldExportJobs $+-- newListWorldExportJobs+--+-- , requestListWorldGenerationJobs $+-- newListWorldGenerationJobs+--+-- , requestListWorldTemplates $+-- newListWorldTemplates+--+-- , requestListWorlds $+-- newListWorlds+--+-- , requestRestartSimulationJob $+-- newRestartSimulationJob+--+-- , requestStartSimulationJobBatch $+-- newStartSimulationJobBatch+--+-- , requestTagResource $+-- newTagResource+--+-- , requestUntagResource $+-- newUntagResource+--+-- , requestUpdateRobotApplication $+-- newUpdateRobotApplication+--+-- , requestUpdateSimulationApplication $+-- newUpdateSimulationApplication+--+-- , requestUpdateWorldTemplate $+-- newUpdateWorldTemplate+--+-- ]++-- , testGroup "response"+-- [ responseBatchDeleteWorlds $+-- newBatchDeleteWorldsResponse+--+-- , responseBatchDescribeSimulationJob $+-- newBatchDescribeSimulationJobResponse+--+-- , responseCancelSimulationJob $+-- newCancelSimulationJobResponse+--+-- , responseCancelSimulationJobBatch $+-- newCancelSimulationJobBatchResponse+--+-- , responseCancelWorldExportJob $+-- newCancelWorldExportJobResponse+--+-- , responseCancelWorldGenerationJob $+-- newCancelWorldGenerationJobResponse+--+-- , responseCreateRobotApplication $+-- newCreateRobotApplicationResponse+--+-- , responseCreateRobotApplicationVersion $+-- newCreateRobotApplicationVersionResponse+--+-- , responseCreateSimulationApplication $+-- newCreateSimulationApplicationResponse+--+-- , responseCreateSimulationApplicationVersion $+-- newCreateSimulationApplicationVersionResponse+--+-- , responseCreateSimulationJob $+-- newCreateSimulationJobResponse+--+-- , responseCreateWorldExportJob $+-- newCreateWorldExportJobResponse+--+-- , responseCreateWorldGenerationJob $+-- newCreateWorldGenerationJobResponse+--+-- , responseCreateWorldTemplate $+-- newCreateWorldTemplateResponse+--+-- , responseDeleteRobotApplication $+-- newDeleteRobotApplicationResponse+--+-- , responseDeleteSimulationApplication $+-- newDeleteSimulationApplicationResponse+--+-- , responseDeleteWorldTemplate $+-- newDeleteWorldTemplateResponse+--+-- , responseDescribeRobotApplication $+-- newDescribeRobotApplicationResponse+--+-- , responseDescribeSimulationApplication $+-- newDescribeSimulationApplicationResponse+--+-- , responseDescribeSimulationJob $+-- newDescribeSimulationJobResponse+--+-- , responseDescribeSimulationJobBatch $+-- newDescribeSimulationJobBatchResponse+--+-- , responseDescribeWorld $+-- newDescribeWorldResponse+--+-- , responseDescribeWorldExportJob $+-- newDescribeWorldExportJobResponse+--+-- , responseDescribeWorldGenerationJob $+-- newDescribeWorldGenerationJobResponse+--+-- , responseDescribeWorldTemplate $+-- newDescribeWorldTemplateResponse+--+-- , responseGetWorldTemplateBody $+-- newGetWorldTemplateBodyResponse+--+-- , responseListRobotApplications $+-- newListRobotApplicationsResponse+--+-- , responseListSimulationApplications $+-- newListSimulationApplicationsResponse+--+-- , responseListSimulationJobBatches $+-- newListSimulationJobBatchesResponse+--+-- , responseListSimulationJobs $+-- newListSimulationJobsResponse+--+-- , responseListTagsForResource $+-- newListTagsForResourceResponse+--+-- , responseListWorldExportJobs $+-- newListWorldExportJobsResponse+--+-- , responseListWorldGenerationJobs $+-- newListWorldGenerationJobsResponse+--+-- , responseListWorldTemplates $+-- newListWorldTemplatesResponse+--+-- , responseListWorlds $+-- newListWorldsResponse+--+-- , responseRestartSimulationJob $+-- newRestartSimulationJobResponse+--+-- , responseStartSimulationJobBatch $+-- newStartSimulationJobBatchResponse+--+-- , responseTagResource $+-- newTagResourceResponse+--+-- , responseUntagResource $+-- newUntagResourceResponse+--+-- , responseUpdateRobotApplication $+-- newUpdateRobotApplicationResponse+--+-- , responseUpdateSimulationApplication $+-- newUpdateSimulationApplicationResponse+--+-- , responseUpdateWorldTemplate $+-- newUpdateWorldTemplateResponse+--+-- ]+-- ]++-- Requests++requestBatchDeleteWorlds :: BatchDeleteWorlds -> TestTree+requestBatchDeleteWorlds =+ req+ "BatchDeleteWorlds"+ "fixture/BatchDeleteWorlds.yaml"++requestBatchDescribeSimulationJob :: BatchDescribeSimulationJob -> TestTree+requestBatchDescribeSimulationJob =+ req+ "BatchDescribeSimulationJob"+ "fixture/BatchDescribeSimulationJob.yaml"++requestCancelSimulationJob :: CancelSimulationJob -> TestTree+requestCancelSimulationJob =+ req+ "CancelSimulationJob"+ "fixture/CancelSimulationJob.yaml"++requestCancelSimulationJobBatch :: CancelSimulationJobBatch -> TestTree+requestCancelSimulationJobBatch =+ req+ "CancelSimulationJobBatch"+ "fixture/CancelSimulationJobBatch.yaml"++requestCancelWorldExportJob :: CancelWorldExportJob -> TestTree+requestCancelWorldExportJob =+ req+ "CancelWorldExportJob"+ "fixture/CancelWorldExportJob.yaml"++requestCancelWorldGenerationJob :: CancelWorldGenerationJob -> TestTree+requestCancelWorldGenerationJob =+ req+ "CancelWorldGenerationJob"+ "fixture/CancelWorldGenerationJob.yaml"++requestCreateRobotApplication :: CreateRobotApplication -> TestTree+requestCreateRobotApplication =+ req+ "CreateRobotApplication"+ "fixture/CreateRobotApplication.yaml"++requestCreateRobotApplicationVersion :: CreateRobotApplicationVersion -> TestTree+requestCreateRobotApplicationVersion =+ req+ "CreateRobotApplicationVersion"+ "fixture/CreateRobotApplicationVersion.yaml"++requestCreateSimulationApplication :: CreateSimulationApplication -> TestTree+requestCreateSimulationApplication =+ req+ "CreateSimulationApplication"+ "fixture/CreateSimulationApplication.yaml"++requestCreateSimulationApplicationVersion :: CreateSimulationApplicationVersion -> TestTree+requestCreateSimulationApplicationVersion =+ req+ "CreateSimulationApplicationVersion"+ "fixture/CreateSimulationApplicationVersion.yaml"++requestCreateSimulationJob :: CreateSimulationJob -> TestTree+requestCreateSimulationJob =+ req+ "CreateSimulationJob"+ "fixture/CreateSimulationJob.yaml"++requestCreateWorldExportJob :: CreateWorldExportJob -> TestTree+requestCreateWorldExportJob =+ req+ "CreateWorldExportJob"+ "fixture/CreateWorldExportJob.yaml"++requestCreateWorldGenerationJob :: CreateWorldGenerationJob -> TestTree+requestCreateWorldGenerationJob =+ req+ "CreateWorldGenerationJob"+ "fixture/CreateWorldGenerationJob.yaml"++requestCreateWorldTemplate :: CreateWorldTemplate -> TestTree+requestCreateWorldTemplate =+ req+ "CreateWorldTemplate"+ "fixture/CreateWorldTemplate.yaml"++requestDeleteRobotApplication :: DeleteRobotApplication -> TestTree+requestDeleteRobotApplication =+ req+ "DeleteRobotApplication"+ "fixture/DeleteRobotApplication.yaml"++requestDeleteSimulationApplication :: DeleteSimulationApplication -> TestTree+requestDeleteSimulationApplication =+ req+ "DeleteSimulationApplication"+ "fixture/DeleteSimulationApplication.yaml"++requestDeleteWorldTemplate :: DeleteWorldTemplate -> TestTree+requestDeleteWorldTemplate =+ req+ "DeleteWorldTemplate"+ "fixture/DeleteWorldTemplate.yaml"++requestDescribeRobotApplication :: DescribeRobotApplication -> TestTree+requestDescribeRobotApplication =+ req+ "DescribeRobotApplication"+ "fixture/DescribeRobotApplication.yaml"++requestDescribeSimulationApplication :: DescribeSimulationApplication -> TestTree+requestDescribeSimulationApplication =+ req+ "DescribeSimulationApplication"+ "fixture/DescribeSimulationApplication.yaml"++requestDescribeSimulationJob :: DescribeSimulationJob -> TestTree+requestDescribeSimulationJob =+ req+ "DescribeSimulationJob"+ "fixture/DescribeSimulationJob.yaml"++requestDescribeSimulationJobBatch :: DescribeSimulationJobBatch -> TestTree+requestDescribeSimulationJobBatch =+ req+ "DescribeSimulationJobBatch"+ "fixture/DescribeSimulationJobBatch.yaml"++requestDescribeWorld :: DescribeWorld -> TestTree+requestDescribeWorld =+ req+ "DescribeWorld"+ "fixture/DescribeWorld.yaml"++requestDescribeWorldExportJob :: DescribeWorldExportJob -> TestTree+requestDescribeWorldExportJob =+ req+ "DescribeWorldExportJob"+ "fixture/DescribeWorldExportJob.yaml"++requestDescribeWorldGenerationJob :: DescribeWorldGenerationJob -> TestTree+requestDescribeWorldGenerationJob =+ req+ "DescribeWorldGenerationJob"+ "fixture/DescribeWorldGenerationJob.yaml"++requestDescribeWorldTemplate :: DescribeWorldTemplate -> TestTree+requestDescribeWorldTemplate =+ req+ "DescribeWorldTemplate"+ "fixture/DescribeWorldTemplate.yaml"++requestGetWorldTemplateBody :: GetWorldTemplateBody -> TestTree+requestGetWorldTemplateBody =+ req+ "GetWorldTemplateBody"+ "fixture/GetWorldTemplateBody.yaml"++requestListRobotApplications :: ListRobotApplications -> TestTree+requestListRobotApplications =+ req+ "ListRobotApplications"+ "fixture/ListRobotApplications.yaml"++requestListSimulationApplications :: ListSimulationApplications -> TestTree+requestListSimulationApplications =+ req+ "ListSimulationApplications"+ "fixture/ListSimulationApplications.yaml"++requestListSimulationJobBatches :: ListSimulationJobBatches -> TestTree+requestListSimulationJobBatches =+ req+ "ListSimulationJobBatches"+ "fixture/ListSimulationJobBatches.yaml"++requestListSimulationJobs :: ListSimulationJobs -> TestTree+requestListSimulationJobs =+ req+ "ListSimulationJobs"+ "fixture/ListSimulationJobs.yaml"++requestListTagsForResource :: ListTagsForResource -> TestTree+requestListTagsForResource =+ req+ "ListTagsForResource"+ "fixture/ListTagsForResource.yaml"++requestListWorldExportJobs :: ListWorldExportJobs -> TestTree+requestListWorldExportJobs =+ req+ "ListWorldExportJobs"+ "fixture/ListWorldExportJobs.yaml"++requestListWorldGenerationJobs :: ListWorldGenerationJobs -> TestTree+requestListWorldGenerationJobs =+ req+ "ListWorldGenerationJobs"+ "fixture/ListWorldGenerationJobs.yaml"++requestListWorldTemplates :: ListWorldTemplates -> TestTree+requestListWorldTemplates =+ req+ "ListWorldTemplates"+ "fixture/ListWorldTemplates.yaml"++requestListWorlds :: ListWorlds -> TestTree+requestListWorlds =+ req+ "ListWorlds"+ "fixture/ListWorlds.yaml"++requestRestartSimulationJob :: RestartSimulationJob -> TestTree+requestRestartSimulationJob =+ req+ "RestartSimulationJob"+ "fixture/RestartSimulationJob.yaml"++requestStartSimulationJobBatch :: StartSimulationJobBatch -> TestTree+requestStartSimulationJobBatch =+ req+ "StartSimulationJobBatch"+ "fixture/StartSimulationJobBatch.yaml"++requestTagResource :: TagResource -> TestTree+requestTagResource =+ req+ "TagResource"+ "fixture/TagResource.yaml"++requestUntagResource :: UntagResource -> TestTree+requestUntagResource =+ req+ "UntagResource"+ "fixture/UntagResource.yaml"++requestUpdateRobotApplication :: UpdateRobotApplication -> TestTree+requestUpdateRobotApplication =+ req+ "UpdateRobotApplication"+ "fixture/UpdateRobotApplication.yaml"++requestUpdateSimulationApplication :: UpdateSimulationApplication -> TestTree+requestUpdateSimulationApplication =+ req+ "UpdateSimulationApplication"+ "fixture/UpdateSimulationApplication.yaml"++requestUpdateWorldTemplate :: UpdateWorldTemplate -> TestTree+requestUpdateWorldTemplate =+ req+ "UpdateWorldTemplate"+ "fixture/UpdateWorldTemplate.yaml"++-- Responses++responseBatchDeleteWorlds :: BatchDeleteWorldsResponse -> TestTree+responseBatchDeleteWorlds =+ res+ "BatchDeleteWorldsResponse"+ "fixture/BatchDeleteWorldsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy BatchDeleteWorlds)++responseBatchDescribeSimulationJob :: BatchDescribeSimulationJobResponse -> TestTree+responseBatchDescribeSimulationJob =+ res+ "BatchDescribeSimulationJobResponse"+ "fixture/BatchDescribeSimulationJobResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy BatchDescribeSimulationJob)++responseCancelSimulationJob :: CancelSimulationJobResponse -> TestTree+responseCancelSimulationJob =+ res+ "CancelSimulationJobResponse"+ "fixture/CancelSimulationJobResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CancelSimulationJob)++responseCancelSimulationJobBatch :: CancelSimulationJobBatchResponse -> TestTree+responseCancelSimulationJobBatch =+ res+ "CancelSimulationJobBatchResponse"+ "fixture/CancelSimulationJobBatchResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CancelSimulationJobBatch)++responseCancelWorldExportJob :: CancelWorldExportJobResponse -> TestTree+responseCancelWorldExportJob =+ res+ "CancelWorldExportJobResponse"+ "fixture/CancelWorldExportJobResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CancelWorldExportJob)++responseCancelWorldGenerationJob :: CancelWorldGenerationJobResponse -> TestTree+responseCancelWorldGenerationJob =+ res+ "CancelWorldGenerationJobResponse"+ "fixture/CancelWorldGenerationJobResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CancelWorldGenerationJob)++responseCreateRobotApplication :: CreateRobotApplicationResponse -> TestTree+responseCreateRobotApplication =+ res+ "CreateRobotApplicationResponse"+ "fixture/CreateRobotApplicationResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateRobotApplication)++responseCreateRobotApplicationVersion :: CreateRobotApplicationVersionResponse -> TestTree+responseCreateRobotApplicationVersion =+ res+ "CreateRobotApplicationVersionResponse"+ "fixture/CreateRobotApplicationVersionResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateRobotApplicationVersion)++responseCreateSimulationApplication :: CreateSimulationApplicationResponse -> TestTree+responseCreateSimulationApplication =+ res+ "CreateSimulationApplicationResponse"+ "fixture/CreateSimulationApplicationResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateSimulationApplication)++responseCreateSimulationApplicationVersion :: CreateSimulationApplicationVersionResponse -> TestTree+responseCreateSimulationApplicationVersion =+ res+ "CreateSimulationApplicationVersionResponse"+ "fixture/CreateSimulationApplicationVersionResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateSimulationApplicationVersion)++responseCreateSimulationJob :: CreateSimulationJobResponse -> TestTree+responseCreateSimulationJob =+ res+ "CreateSimulationJobResponse"+ "fixture/CreateSimulationJobResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateSimulationJob)++responseCreateWorldExportJob :: CreateWorldExportJobResponse -> TestTree+responseCreateWorldExportJob =+ res+ "CreateWorldExportJobResponse"+ "fixture/CreateWorldExportJobResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateWorldExportJob)++responseCreateWorldGenerationJob :: CreateWorldGenerationJobResponse -> TestTree+responseCreateWorldGenerationJob =+ res+ "CreateWorldGenerationJobResponse"+ "fixture/CreateWorldGenerationJobResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateWorldGenerationJob)++responseCreateWorldTemplate :: CreateWorldTemplateResponse -> TestTree+responseCreateWorldTemplate =+ res+ "CreateWorldTemplateResponse"+ "fixture/CreateWorldTemplateResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateWorldTemplate)++responseDeleteRobotApplication :: DeleteRobotApplicationResponse -> TestTree+responseDeleteRobotApplication =+ res+ "DeleteRobotApplicationResponse"+ "fixture/DeleteRobotApplicationResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteRobotApplication)++responseDeleteSimulationApplication :: DeleteSimulationApplicationResponse -> TestTree+responseDeleteSimulationApplication =+ res+ "DeleteSimulationApplicationResponse"+ "fixture/DeleteSimulationApplicationResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteSimulationApplication)++responseDeleteWorldTemplate :: DeleteWorldTemplateResponse -> TestTree+responseDeleteWorldTemplate =+ res+ "DeleteWorldTemplateResponse"+ "fixture/DeleteWorldTemplateResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteWorldTemplate)++responseDescribeRobotApplication :: DescribeRobotApplicationResponse -> TestTree+responseDescribeRobotApplication =+ res+ "DescribeRobotApplicationResponse"+ "fixture/DescribeRobotApplicationResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeRobotApplication)++responseDescribeSimulationApplication :: DescribeSimulationApplicationResponse -> TestTree+responseDescribeSimulationApplication =+ res+ "DescribeSimulationApplicationResponse"+ "fixture/DescribeSimulationApplicationResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeSimulationApplication)++responseDescribeSimulationJob :: DescribeSimulationJobResponse -> TestTree+responseDescribeSimulationJob =+ res+ "DescribeSimulationJobResponse"+ "fixture/DescribeSimulationJobResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeSimulationJob)++responseDescribeSimulationJobBatch :: DescribeSimulationJobBatchResponse -> TestTree+responseDescribeSimulationJobBatch =+ res+ "DescribeSimulationJobBatchResponse"+ "fixture/DescribeSimulationJobBatchResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeSimulationJobBatch)++responseDescribeWorld :: DescribeWorldResponse -> TestTree+responseDescribeWorld =+ res+ "DescribeWorldResponse"+ "fixture/DescribeWorldResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeWorld)++responseDescribeWorldExportJob :: DescribeWorldExportJobResponse -> TestTree+responseDescribeWorldExportJob =+ res+ "DescribeWorldExportJobResponse"+ "fixture/DescribeWorldExportJobResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeWorldExportJob)++responseDescribeWorldGenerationJob :: DescribeWorldGenerationJobResponse -> TestTree+responseDescribeWorldGenerationJob =+ res+ "DescribeWorldGenerationJobResponse"+ "fixture/DescribeWorldGenerationJobResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeWorldGenerationJob)++responseDescribeWorldTemplate :: DescribeWorldTemplateResponse -> TestTree+responseDescribeWorldTemplate =+ res+ "DescribeWorldTemplateResponse"+ "fixture/DescribeWorldTemplateResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeWorldTemplate)++responseGetWorldTemplateBody :: GetWorldTemplateBodyResponse -> TestTree+responseGetWorldTemplateBody =+ res+ "GetWorldTemplateBodyResponse"+ "fixture/GetWorldTemplateBodyResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetWorldTemplateBody)++responseListRobotApplications :: ListRobotApplicationsResponse -> TestTree+responseListRobotApplications =+ res+ "ListRobotApplicationsResponse"+ "fixture/ListRobotApplicationsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListRobotApplications)++responseListSimulationApplications :: ListSimulationApplicationsResponse -> TestTree+responseListSimulationApplications =+ res+ "ListSimulationApplicationsResponse"+ "fixture/ListSimulationApplicationsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListSimulationApplications)++responseListSimulationJobBatches :: ListSimulationJobBatchesResponse -> TestTree+responseListSimulationJobBatches =+ res+ "ListSimulationJobBatchesResponse"+ "fixture/ListSimulationJobBatchesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListSimulationJobBatches)++responseListSimulationJobs :: ListSimulationJobsResponse -> TestTree+responseListSimulationJobs =+ res+ "ListSimulationJobsResponse"+ "fixture/ListSimulationJobsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListSimulationJobs)++responseListTagsForResource :: ListTagsForResourceResponse -> TestTree+responseListTagsForResource =+ res+ "ListTagsForResourceResponse"+ "fixture/ListTagsForResourceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListTagsForResource)++responseListWorldExportJobs :: ListWorldExportJobsResponse -> TestTree+responseListWorldExportJobs =+ res+ "ListWorldExportJobsResponse"+ "fixture/ListWorldExportJobsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListWorldExportJobs)++responseListWorldGenerationJobs :: ListWorldGenerationJobsResponse -> TestTree+responseListWorldGenerationJobs =+ res+ "ListWorldGenerationJobsResponse"+ "fixture/ListWorldGenerationJobsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListWorldGenerationJobs)++responseListWorldTemplates :: ListWorldTemplatesResponse -> TestTree+responseListWorldTemplates =+ res+ "ListWorldTemplatesResponse"+ "fixture/ListWorldTemplatesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListWorldTemplates)++responseListWorlds :: ListWorldsResponse -> TestTree+responseListWorlds =+ res+ "ListWorldsResponse"+ "fixture/ListWorldsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListWorlds)++responseRestartSimulationJob :: RestartSimulationJobResponse -> TestTree+responseRestartSimulationJob =+ res+ "RestartSimulationJobResponse"+ "fixture/RestartSimulationJobResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy RestartSimulationJob)++responseStartSimulationJobBatch :: StartSimulationJobBatchResponse -> TestTree+responseStartSimulationJobBatch =+ res+ "StartSimulationJobBatchResponse"+ "fixture/StartSimulationJobBatchResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy StartSimulationJobBatch)++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)++responseUpdateRobotApplication :: UpdateRobotApplicationResponse -> TestTree+responseUpdateRobotApplication =+ res+ "UpdateRobotApplicationResponse"+ "fixture/UpdateRobotApplicationResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateRobotApplication)++responseUpdateSimulationApplication :: UpdateSimulationApplicationResponse -> TestTree+responseUpdateSimulationApplication =+ res+ "UpdateSimulationApplicationResponse"+ "fixture/UpdateSimulationApplicationResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateSimulationApplication)++responseUpdateWorldTemplate :: UpdateWorldTemplateResponse -> TestTree+responseUpdateWorldTemplate =+ res+ "UpdateWorldTemplateResponse"+ "fixture/UpdateWorldTemplateResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateWorldTemplate)
+ test/Test/Amazonka/RobOMaker.hs view
@@ -0,0 +1,20 @@+-- |+-- Module : Test.Amazonka.RobOMaker+-- 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.RobOMaker+ ( tests,+ fixtures,+ )+where++import Test.Tasty (TestTree)++tests :: [TestTree]+tests = []++fixtures :: [TestTree]+fixtures = []
+ test/Test/Amazonka/RobOMaker/Internal.hs view
@@ -0,0 +1,8 @@+-- |+-- Module : Test.Amazonka.RobOMaker.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.RobOMaker.Internal where