amazonka-mgn (empty) → 2.0
raw patch · 258 files changed
+24797/−0 lines, 258 filesdep +amazonka-coredep +amazonka-mgndep +amazonka-test
Dependencies added: amazonka-core, amazonka-mgn, amazonka-test, base, bytestring, case-insensitive, tasty, tasty-hunit, text, time, unordered-containers
Files
- LICENSE +367/−0
- README.md +44/−0
- amazonka-mgn.cabal +219/−0
- fixture/ArchiveApplication.yaml +10/−0
- fixture/ArchiveApplicationResponse.proto +0/−0
- fixture/ArchiveWave.yaml +10/−0
- fixture/ArchiveWaveResponse.proto +0/−0
- fixture/AssociateApplications.yaml +10/−0
- fixture/AssociateApplicationsResponse.proto +0/−0
- fixture/AssociateSourceServers.yaml +10/−0
- fixture/AssociateSourceServersResponse.proto +0/−0
- fixture/ChangeServerLifeCycleState.yaml +10/−0
- fixture/ChangeServerLifeCycleStateResponse.proto +0/−0
- fixture/CreateApplication.yaml +10/−0
- fixture/CreateApplicationResponse.proto +0/−0
- fixture/CreateLaunchConfigurationTemplate.yaml +10/−0
- fixture/CreateLaunchConfigurationTemplateResponse.proto +0/−0
- fixture/CreateReplicationConfigurationTemplate.yaml +10/−0
- fixture/CreateReplicationConfigurationTemplateResponse.proto +0/−0
- fixture/CreateWave.yaml +10/−0
- fixture/CreateWaveResponse.proto +0/−0
- fixture/DeleteApplication.yaml +10/−0
- fixture/DeleteApplicationResponse.proto +0/−0
- fixture/DeleteJob.yaml +10/−0
- fixture/DeleteJobResponse.proto +0/−0
- fixture/DeleteLaunchConfigurationTemplate.yaml +10/−0
- fixture/DeleteLaunchConfigurationTemplateResponse.proto +0/−0
- fixture/DeleteReplicationConfigurationTemplate.yaml +10/−0
- fixture/DeleteReplicationConfigurationTemplateResponse.proto +0/−0
- fixture/DeleteSourceServer.yaml +10/−0
- fixture/DeleteSourceServerResponse.proto +0/−0
- fixture/DeleteVcenterClient.yaml +10/−0
- fixture/DeleteVcenterClientResponse.proto +0/−0
- fixture/DeleteWave.yaml +10/−0
- fixture/DeleteWaveResponse.proto +0/−0
- fixture/DescribeJobLogItems.yaml +10/−0
- fixture/DescribeJobLogItemsResponse.proto +0/−0
- fixture/DescribeJobs.yaml +10/−0
- fixture/DescribeJobsResponse.proto +0/−0
- fixture/DescribeLaunchConfigurationTemplates.yaml +10/−0
- fixture/DescribeLaunchConfigurationTemplatesResponse.proto +0/−0
- fixture/DescribeReplicationConfigurationTemplates.yaml +10/−0
- fixture/DescribeReplicationConfigurationTemplatesResponse.proto +0/−0
- fixture/DescribeSourceServers.yaml +10/−0
- fixture/DescribeSourceServersResponse.proto +0/−0
- fixture/DescribeVcenterClients.yaml +10/−0
- fixture/DescribeVcenterClientsResponse.proto +0/−0
- fixture/DisassociateApplications.yaml +10/−0
- fixture/DisassociateApplicationsResponse.proto +0/−0
- fixture/DisassociateSourceServers.yaml +10/−0
- fixture/DisassociateSourceServersResponse.proto +0/−0
- fixture/DisconnectFromService.yaml +10/−0
- fixture/DisconnectFromServiceResponse.proto +0/−0
- fixture/FinalizeCutover.yaml +10/−0
- fixture/FinalizeCutoverResponse.proto +0/−0
- fixture/GetLaunchConfiguration.yaml +10/−0
- fixture/GetLaunchConfigurationResponse.proto +0/−0
- fixture/GetReplicationConfiguration.yaml +10/−0
- fixture/GetReplicationConfigurationResponse.proto +0/−0
- fixture/InitializeService.yaml +10/−0
- fixture/InitializeServiceResponse.proto +0/−0
- fixture/ListApplications.yaml +10/−0
- fixture/ListApplicationsResponse.proto +0/−0
- fixture/ListSourceServerActions.yaml +10/−0
- fixture/ListSourceServerActionsResponse.proto +0/−0
- fixture/ListTagsForResource.yaml +10/−0
- fixture/ListTagsForResourceResponse.proto +0/−0
- fixture/ListTemplateActions.yaml +10/−0
- fixture/ListTemplateActionsResponse.proto +0/−0
- fixture/ListWaves.yaml +10/−0
- fixture/ListWavesResponse.proto +0/−0
- fixture/MarkAsArchived.yaml +10/−0
- fixture/MarkAsArchivedResponse.proto +0/−0
- fixture/PutSourceServerAction.yaml +10/−0
- fixture/PutSourceServerActionResponse.proto +0/−0
- fixture/PutTemplateAction.yaml +10/−0
- fixture/PutTemplateActionResponse.proto +0/−0
- fixture/RemoveSourceServerAction.yaml +10/−0
- fixture/RemoveSourceServerActionResponse.proto +0/−0
- fixture/RemoveTemplateAction.yaml +10/−0
- fixture/RemoveTemplateActionResponse.proto +0/−0
- fixture/RetryDataReplication.yaml +10/−0
- fixture/RetryDataReplicationResponse.proto +0/−0
- fixture/StartCutover.yaml +10/−0
- fixture/StartCutoverResponse.proto +0/−0
- fixture/StartReplication.yaml +10/−0
- fixture/StartReplicationResponse.proto +0/−0
- fixture/StartTest.yaml +10/−0
- fixture/StartTestResponse.proto +0/−0
- fixture/TagResource.yaml +10/−0
- fixture/TagResourceResponse.proto +0/−0
- fixture/TerminateTargetInstances.yaml +10/−0
- fixture/TerminateTargetInstancesResponse.proto +0/−0
- fixture/UnarchiveApplication.yaml +10/−0
- fixture/UnarchiveApplicationResponse.proto +0/−0
- fixture/UnarchiveWave.yaml +10/−0
- fixture/UnarchiveWaveResponse.proto +0/−0
- fixture/UntagResource.yaml +10/−0
- fixture/UntagResourceResponse.proto +0/−0
- fixture/UpdateApplication.yaml +10/−0
- fixture/UpdateApplicationResponse.proto +0/−0
- fixture/UpdateLaunchConfiguration.yaml +10/−0
- fixture/UpdateLaunchConfigurationResponse.proto +0/−0
- fixture/UpdateLaunchConfigurationTemplate.yaml +10/−0
- fixture/UpdateLaunchConfigurationTemplateResponse.proto +0/−0
- fixture/UpdateReplicationConfiguration.yaml +10/−0
- fixture/UpdateReplicationConfigurationResponse.proto +0/−0
- fixture/UpdateReplicationConfigurationTemplate.yaml +10/−0
- fixture/UpdateReplicationConfigurationTemplateResponse.proto +0/−0
- fixture/UpdateSourceServerReplicationType.yaml +10/−0
- fixture/UpdateSourceServerReplicationTypeResponse.proto +0/−0
- fixture/UpdateWave.yaml +10/−0
- fixture/UpdateWaveResponse.proto +0/−0
- gen/Amazonka/MGN.hs +765/−0
- gen/Amazonka/MGN/ArchiveApplication.hs +128/−0
- gen/Amazonka/MGN/ArchiveWave.hs +121/−0
- gen/Amazonka/MGN/AssociateApplications.hs +174/−0
- gen/Amazonka/MGN/AssociateSourceServers.hs +181/−0
- gen/Amazonka/MGN/ChangeServerLifeCycleState.hs +155/−0
- gen/Amazonka/MGN/CreateApplication.hs +153/−0
- gen/Amazonka/MGN/CreateLaunchConfigurationTemplate.hs +341/−0
- gen/Amazonka/MGN/CreateReplicationConfigurationTemplate.hs +407/−0
- gen/Amazonka/MGN/CreateWave.hs +152/−0
- gen/Amazonka/MGN/DeleteApplication.hs +155/−0
- gen/Amazonka/MGN/DeleteJob.hs +145/−0
- gen/Amazonka/MGN/DeleteLaunchConfigurationTemplate.hs +190/−0
- gen/Amazonka/MGN/DeleteReplicationConfigurationTemplate.hs +196/−0
- gen/Amazonka/MGN/DeleteSourceServer.hs +158/−0
- gen/Amazonka/MGN/DeleteVcenterClient.hs +135/−0
- gen/Amazonka/MGN/DeleteWave.hs +146/−0
- gen/Amazonka/MGN/DescribeJobLogItems.hs +231/−0
- gen/Amazonka/MGN/DescribeJobs.hs +232/−0
- gen/Amazonka/MGN/DescribeLaunchConfigurationTemplates.hs +273/−0
- gen/Amazonka/MGN/DescribeReplicationConfigurationTemplates.hs +269/−0
- gen/Amazonka/MGN/DescribeSourceServers.hs +229/−0
- gen/Amazonka/MGN/DescribeVcenterClients.hs +215/−0
- gen/Amazonka/MGN/DisassociateApplications.hs +177/−0
- gen/Amazonka/MGN/DisassociateSourceServers.hs +181/−0
- gen/Amazonka/MGN/DisconnectFromService.hs +142/−0
- gen/Amazonka/MGN/FinalizeCutover.hs +136/−0
- gen/Amazonka/MGN/GetLaunchConfiguration.hs +132/−0
- gen/Amazonka/MGN/GetReplicationConfiguration.hs +135/−0
- gen/Amazonka/MGN/InitializeService.hs +132/−0
- gen/Amazonka/MGN/Lens.hs +1125/−0
- gen/Amazonka/MGN/ListApplications.hs +228/−0
- gen/Amazonka/MGN/ListSourceServerActions.hs +260/−0
- gen/Amazonka/MGN/ListTagsForResource.hs +159/−0
- gen/Amazonka/MGN/ListTemplateActions.hs +252/−0
- gen/Amazonka/MGN/ListWaves.hs +226/−0
- gen/Amazonka/MGN/MarkAsArchived.hs +128/−0
- gen/Amazonka/MGN/PutSourceServerAction.hs +263/−0
- gen/Amazonka/MGN/PutTemplateAction.hs +284/−0
- gen/Amazonka/MGN/RemoveSourceServerAction.hs +178/−0
- gen/Amazonka/MGN/RemoveTemplateAction.hs +181/−0
- gen/Amazonka/MGN/RetryDataReplication.hs +132/−0
- gen/Amazonka/MGN/StartCutover.hs +183/−0
- gen/Amazonka/MGN/StartReplication.hs +129/−0
- gen/Amazonka/MGN/StartTest.hs +183/−0
- gen/Amazonka/MGN/TagResource.hs +146/−0
- gen/Amazonka/MGN/TerminateTargetInstances.hs +189/−0
- gen/Amazonka/MGN/Types.hs +801/−0
- gen/Amazonka/MGN/Types/Application.hs +180/−0
- gen/Amazonka/MGN/Types/ApplicationAggregatedStatus.hs +111/−0
- gen/Amazonka/MGN/Types/ApplicationHealthStatus.hs +76/−0
- gen/Amazonka/MGN/Types/ApplicationProgressStatus.hs +76/−0
- gen/Amazonka/MGN/Types/BootMode.hs +71/−0
- gen/Amazonka/MGN/Types/CPU.hs +84/−0
- gen/Amazonka/MGN/Types/ChangeServerLifeCycleStateSourceServerLifecycle.hs +87/−0
- gen/Amazonka/MGN/Types/ChangeServerLifeCycleStateSourceServerLifecycleState.hs +76/−0
- gen/Amazonka/MGN/Types/DataReplicationError.hs +85/−0
- gen/Amazonka/MGN/Types/DataReplicationErrorString.hs +141/−0
- gen/Amazonka/MGN/Types/DataReplicationInfo.hs +152/−0
- gen/Amazonka/MGN/Types/DataReplicationInfoReplicatedDisk.hs +132/−0
- gen/Amazonka/MGN/Types/DataReplicationInitiation.hs +98/−0
- gen/Amazonka/MGN/Types/DataReplicationInitiationStep.hs +89/−0
- gen/Amazonka/MGN/Types/DataReplicationInitiationStepName.hs +116/−0
- gen/Amazonka/MGN/Types/DataReplicationInitiationStepStatus.hs +86/−0
- gen/Amazonka/MGN/Types/DataReplicationState.hs +121/−0
- gen/Amazonka/MGN/Types/DescribeJobsRequestFilters.hs +96/−0
- gen/Amazonka/MGN/Types/DescribeSourceServersRequestFilters.hs +137/−0
- gen/Amazonka/MGN/Types/Disk.hs +84/−0
- gen/Amazonka/MGN/Types/FirstBoot.hs +81/−0
- gen/Amazonka/MGN/Types/IdentificationHints.hs +121/−0
- gen/Amazonka/MGN/Types/InitiatedBy.hs +81/−0
- gen/Amazonka/MGN/Types/Job.hs +177/−0
- gen/Amazonka/MGN/Types/JobLog.hs +98/−0
- gen/Amazonka/MGN/Types/JobLogEvent.hs +141/−0
- gen/Amazonka/MGN/Types/JobLogEventData.hs +109/−0
- gen/Amazonka/MGN/Types/JobPostLaunchActionsLaunchStatus.hs +138/−0
- gen/Amazonka/MGN/Types/JobStatus.hs +76/−0
- gen/Amazonka/MGN/Types/JobType.hs +68/−0
- gen/Amazonka/MGN/Types/LaunchConfiguration.hs +208/−0
- gen/Amazonka/MGN/Types/LaunchConfigurationTemplate.hs +274/−0
- gen/Amazonka/MGN/Types/LaunchDisposition.hs +71/−0
- gen/Amazonka/MGN/Types/LaunchStatus.hs +86/−0
- gen/Amazonka/MGN/Types/LaunchTemplateDiskConf.hs +107/−0
- gen/Amazonka/MGN/Types/LaunchedInstance.hs +97/−0
- gen/Amazonka/MGN/Types/Licensing.hs +71/−0
- gen/Amazonka/MGN/Types/LifeCycle.hs +148/−0
- gen/Amazonka/MGN/Types/LifeCycleLastCutover.hs +99/−0
- gen/Amazonka/MGN/Types/LifeCycleLastCutoverFinalized.hs +75/−0
- gen/Amazonka/MGN/Types/LifeCycleLastCutoverInitiated.hs +86/−0
- gen/Amazonka/MGN/Types/LifeCycleLastCutoverReverted.hs +75/−0
- gen/Amazonka/MGN/Types/LifeCycleLastTest.hs +99/−0
- gen/Amazonka/MGN/Types/LifeCycleLastTestFinalized.hs +72/−0
- gen/Amazonka/MGN/Types/LifeCycleLastTestInitiated.hs +85/−0
- gen/Amazonka/MGN/Types/LifeCycleLastTestReverted.hs +72/−0
- gen/Amazonka/MGN/Types/LifeCycleState.hs +106/−0
- gen/Amazonka/MGN/Types/ListApplicationsRequestFilters.hs +105/−0
- gen/Amazonka/MGN/Types/ListWavesRequestFilters.hs +84/−0
- gen/Amazonka/MGN/Types/NetworkInterface.hs +96/−0
- gen/Amazonka/MGN/Types/OS.hs +64/−0
- gen/Amazonka/MGN/Types/ParticipatingServer.hs +113/−0
- gen/Amazonka/MGN/Types/PostLaunchActionExecutionStatus.hs +76/−0
- gen/Amazonka/MGN/Types/PostLaunchActions.hs +137/−0
- gen/Amazonka/MGN/Types/PostLaunchActionsDeploymentType.hs +76/−0
- gen/Amazonka/MGN/Types/PostLaunchActionsStatus.hs +93/−0
- gen/Amazonka/MGN/Types/ReplicationConfiguration.hs +257/−0
- gen/Amazonka/MGN/Types/ReplicationConfigurationDataPlaneRouting.hs +71/−0
- gen/Amazonka/MGN/Types/ReplicationConfigurationDefaultLargeStagingDiskType.hs +76/−0
- gen/Amazonka/MGN/Types/ReplicationConfigurationEbsEncryption.hs +71/−0
- gen/Amazonka/MGN/Types/ReplicationConfigurationReplicatedDisk.hs +149/−0
- gen/Amazonka/MGN/Types/ReplicationConfigurationReplicatedDiskStagingDiskType.hs +101/−0
- gen/Amazonka/MGN/Types/ReplicationConfigurationTemplate.hs +272/−0
- gen/Amazonka/MGN/Types/ReplicationType.hs +71/−0
- gen/Amazonka/MGN/Types/SourceProperties.hs +164/−0
- gen/Amazonka/MGN/Types/SourceServer.hs +195/−0
- gen/Amazonka/MGN/Types/SourceServerActionDocument.hs +168/−0
- gen/Amazonka/MGN/Types/SourceServerActionsRequestFilters.hs +81/−0
- gen/Amazonka/MGN/Types/SsmDocument.hs +141/−0
- gen/Amazonka/MGN/Types/SsmDocumentType.hs +71/−0
- gen/Amazonka/MGN/Types/SsmParameterStoreParameter.hs +103/−0
- gen/Amazonka/MGN/Types/SsmParameterStoreParameterType.hs +66/−0
- gen/Amazonka/MGN/Types/TargetInstanceTypeRightSizingMethod.hs +71/−0
- gen/Amazonka/MGN/Types/TemplateActionDocument.hs +182/−0
- gen/Amazonka/MGN/Types/TemplateActionsRequestFilters.hs +73/−0
- gen/Amazonka/MGN/Types/VcenterClient.hs +159/−0
- gen/Amazonka/MGN/Types/VolumeType.hs +96/−0
- gen/Amazonka/MGN/Types/Wave.hs +167/−0
- gen/Amazonka/MGN/Types/WaveAggregatedStatus.hs +126/−0
- gen/Amazonka/MGN/Types/WaveHealthStatus.hs +76/−0
- gen/Amazonka/MGN/Types/WaveProgressStatus.hs +76/−0
- gen/Amazonka/MGN/UnarchiveApplication.hs +128/−0
- gen/Amazonka/MGN/UnarchiveWave.hs +121/−0
- gen/Amazonka/MGN/UntagResource.hs +141/−0
- gen/Amazonka/MGN/UpdateApplication.hs +154/−0
- gen/Amazonka/MGN/UpdateLaunchConfiguration.hs +268/−0
- gen/Amazonka/MGN/UpdateLaunchConfigurationTemplate.hs +345/−0
- gen/Amazonka/MGN/UpdateReplicationConfiguration.hs +365/−0
- gen/Amazonka/MGN/UpdateReplicationConfigurationTemplate.hs +376/−0
- gen/Amazonka/MGN/UpdateSourceServerReplicationType.hs +175/−0
- gen/Amazonka/MGN/UpdateWave.hs +152/−0
- gen/Amazonka/MGN/Waiters.hs +24/−0
- src/.gitkeep +0/−0
- test/Main.hs +23/−0
- test/Test/Amazonka/Gen/MGN.hs +1138/−0
- test/Test/Amazonka/MGN.hs +20/−0
- test/Test/Amazonka/MGN/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 Application Migration Service SDK++* [Version](#version)+* [Description](#description)+* [Contribute](#contribute)+* [Licence](#licence)+++## Version+ +`2.0` - Derived from API version @2020-02-26@ of the AWS service descriptions, licensed under Apache 2.0.++## Description++Documentation is available via [Hackage](http://hackage.haskell.org/package/amazonka-mgn)+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.MGN](http://hackage.haskell.org/package/amazonka-mgn/docs/Amazonka-MGN.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-mgn` 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-mgn.cabal view
@@ -0,0 +1,219 @@+cabal-version: 2.2+name: amazonka-mgn+version: 2.0+synopsis: Amazon Application Migration Service 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 @2020-02-26@ of the AWS service descriptions, licensed under Apache 2.0.+ .+ The types from this library are intended to be used with <http://hackage.haskell.org/package/amazonka amazonka>,+ which provides mechanisms for specifying AuthN/AuthZ information, sending requests, and receiving responses.+ .+ It is recommended to use generic lenses or optics from packages such as <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify optional fields and deconstruct responses.+ .+ Generated lenses can be found in "Amazonka.MGN.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.MGN" 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-mgn++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.MGN+ Amazonka.MGN.ArchiveApplication+ Amazonka.MGN.ArchiveWave+ Amazonka.MGN.AssociateApplications+ Amazonka.MGN.AssociateSourceServers+ Amazonka.MGN.ChangeServerLifeCycleState+ Amazonka.MGN.CreateApplication+ Amazonka.MGN.CreateLaunchConfigurationTemplate+ Amazonka.MGN.CreateReplicationConfigurationTemplate+ Amazonka.MGN.CreateWave+ Amazonka.MGN.DeleteApplication+ Amazonka.MGN.DeleteJob+ Amazonka.MGN.DeleteLaunchConfigurationTemplate+ Amazonka.MGN.DeleteReplicationConfigurationTemplate+ Amazonka.MGN.DeleteSourceServer+ Amazonka.MGN.DeleteVcenterClient+ Amazonka.MGN.DeleteWave+ Amazonka.MGN.DescribeJobLogItems+ Amazonka.MGN.DescribeJobs+ Amazonka.MGN.DescribeLaunchConfigurationTemplates+ Amazonka.MGN.DescribeReplicationConfigurationTemplates+ Amazonka.MGN.DescribeSourceServers+ Amazonka.MGN.DescribeVcenterClients+ Amazonka.MGN.DisassociateApplications+ Amazonka.MGN.DisassociateSourceServers+ Amazonka.MGN.DisconnectFromService+ Amazonka.MGN.FinalizeCutover+ Amazonka.MGN.GetLaunchConfiguration+ Amazonka.MGN.GetReplicationConfiguration+ Amazonka.MGN.InitializeService+ Amazonka.MGN.Lens+ Amazonka.MGN.ListApplications+ Amazonka.MGN.ListSourceServerActions+ Amazonka.MGN.ListTagsForResource+ Amazonka.MGN.ListTemplateActions+ Amazonka.MGN.ListWaves+ Amazonka.MGN.MarkAsArchived+ Amazonka.MGN.PutSourceServerAction+ Amazonka.MGN.PutTemplateAction+ Amazonka.MGN.RemoveSourceServerAction+ Amazonka.MGN.RemoveTemplateAction+ Amazonka.MGN.RetryDataReplication+ Amazonka.MGN.StartCutover+ Amazonka.MGN.StartReplication+ Amazonka.MGN.StartTest+ Amazonka.MGN.TagResource+ Amazonka.MGN.TerminateTargetInstances+ Amazonka.MGN.Types+ Amazonka.MGN.Types.Application+ Amazonka.MGN.Types.ApplicationAggregatedStatus+ Amazonka.MGN.Types.ApplicationHealthStatus+ Amazonka.MGN.Types.ApplicationProgressStatus+ Amazonka.MGN.Types.BootMode+ Amazonka.MGN.Types.ChangeServerLifeCycleStateSourceServerLifecycle+ Amazonka.MGN.Types.ChangeServerLifeCycleStateSourceServerLifecycleState+ Amazonka.MGN.Types.CPU+ Amazonka.MGN.Types.DataReplicationError+ Amazonka.MGN.Types.DataReplicationErrorString+ Amazonka.MGN.Types.DataReplicationInfo+ Amazonka.MGN.Types.DataReplicationInfoReplicatedDisk+ Amazonka.MGN.Types.DataReplicationInitiation+ Amazonka.MGN.Types.DataReplicationInitiationStep+ Amazonka.MGN.Types.DataReplicationInitiationStepName+ Amazonka.MGN.Types.DataReplicationInitiationStepStatus+ Amazonka.MGN.Types.DataReplicationState+ Amazonka.MGN.Types.DescribeJobsRequestFilters+ Amazonka.MGN.Types.DescribeSourceServersRequestFilters+ Amazonka.MGN.Types.Disk+ Amazonka.MGN.Types.FirstBoot+ Amazonka.MGN.Types.IdentificationHints+ Amazonka.MGN.Types.InitiatedBy+ Amazonka.MGN.Types.Job+ Amazonka.MGN.Types.JobLog+ Amazonka.MGN.Types.JobLogEvent+ Amazonka.MGN.Types.JobLogEventData+ Amazonka.MGN.Types.JobPostLaunchActionsLaunchStatus+ Amazonka.MGN.Types.JobStatus+ Amazonka.MGN.Types.JobType+ Amazonka.MGN.Types.LaunchConfiguration+ Amazonka.MGN.Types.LaunchConfigurationTemplate+ Amazonka.MGN.Types.LaunchDisposition+ Amazonka.MGN.Types.LaunchedInstance+ Amazonka.MGN.Types.LaunchStatus+ Amazonka.MGN.Types.LaunchTemplateDiskConf+ Amazonka.MGN.Types.Licensing+ Amazonka.MGN.Types.LifeCycle+ Amazonka.MGN.Types.LifeCycleLastCutover+ Amazonka.MGN.Types.LifeCycleLastCutoverFinalized+ Amazonka.MGN.Types.LifeCycleLastCutoverInitiated+ Amazonka.MGN.Types.LifeCycleLastCutoverReverted+ Amazonka.MGN.Types.LifeCycleLastTest+ Amazonka.MGN.Types.LifeCycleLastTestFinalized+ Amazonka.MGN.Types.LifeCycleLastTestInitiated+ Amazonka.MGN.Types.LifeCycleLastTestReverted+ Amazonka.MGN.Types.LifeCycleState+ Amazonka.MGN.Types.ListApplicationsRequestFilters+ Amazonka.MGN.Types.ListWavesRequestFilters+ Amazonka.MGN.Types.NetworkInterface+ Amazonka.MGN.Types.OS+ Amazonka.MGN.Types.ParticipatingServer+ Amazonka.MGN.Types.PostLaunchActionExecutionStatus+ Amazonka.MGN.Types.PostLaunchActions+ Amazonka.MGN.Types.PostLaunchActionsDeploymentType+ Amazonka.MGN.Types.PostLaunchActionsStatus+ Amazonka.MGN.Types.ReplicationConfiguration+ Amazonka.MGN.Types.ReplicationConfigurationDataPlaneRouting+ Amazonka.MGN.Types.ReplicationConfigurationDefaultLargeStagingDiskType+ Amazonka.MGN.Types.ReplicationConfigurationEbsEncryption+ Amazonka.MGN.Types.ReplicationConfigurationReplicatedDisk+ Amazonka.MGN.Types.ReplicationConfigurationReplicatedDiskStagingDiskType+ Amazonka.MGN.Types.ReplicationConfigurationTemplate+ Amazonka.MGN.Types.ReplicationType+ Amazonka.MGN.Types.SourceProperties+ Amazonka.MGN.Types.SourceServer+ Amazonka.MGN.Types.SourceServerActionDocument+ Amazonka.MGN.Types.SourceServerActionsRequestFilters+ Amazonka.MGN.Types.SsmDocument+ Amazonka.MGN.Types.SsmDocumentType+ Amazonka.MGN.Types.SsmParameterStoreParameter+ Amazonka.MGN.Types.SsmParameterStoreParameterType+ Amazonka.MGN.Types.TargetInstanceTypeRightSizingMethod+ Amazonka.MGN.Types.TemplateActionDocument+ Amazonka.MGN.Types.TemplateActionsRequestFilters+ Amazonka.MGN.Types.VcenterClient+ Amazonka.MGN.Types.VolumeType+ Amazonka.MGN.Types.Wave+ Amazonka.MGN.Types.WaveAggregatedStatus+ Amazonka.MGN.Types.WaveHealthStatus+ Amazonka.MGN.Types.WaveProgressStatus+ Amazonka.MGN.UnarchiveApplication+ Amazonka.MGN.UnarchiveWave+ Amazonka.MGN.UntagResource+ Amazonka.MGN.UpdateApplication+ Amazonka.MGN.UpdateLaunchConfiguration+ Amazonka.MGN.UpdateLaunchConfigurationTemplate+ Amazonka.MGN.UpdateReplicationConfiguration+ Amazonka.MGN.UpdateReplicationConfigurationTemplate+ Amazonka.MGN.UpdateSourceServerReplicationType+ Amazonka.MGN.UpdateWave+ Amazonka.MGN.Waiters++ build-depends:+ , amazonka-core >=2.0 && <2.1+ , base >=4.12 && <5++test-suite amazonka-mgn-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.MGN+ Test.Amazonka.MGN+ Test.Amazonka.MGN.Internal++ build-depends:+ , amazonka-core >=2.0 && <2.1+ , amazonka-mgn+ , amazonka-test >=2.0 && <2.1+ , base+ , bytestring+ , case-insensitive+ , tasty+ , tasty-hunit+ , text+ , time+ , unordered-containers
+ fixture/ArchiveApplication.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/ArchiveApplicationResponse.proto view
+ fixture/ArchiveWave.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/ArchiveWaveResponse.proto view
+ fixture/AssociateApplications.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/AssociateApplicationsResponse.proto view
+ fixture/AssociateSourceServers.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/AssociateSourceServersResponse.proto view
+ fixture/ChangeServerLifeCycleState.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/ChangeServerLifeCycleStateResponse.proto view
+ fixture/CreateApplication.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/CreateApplicationResponse.proto view
+ fixture/CreateLaunchConfigurationTemplate.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/CreateLaunchConfigurationTemplateResponse.proto view
+ fixture/CreateReplicationConfigurationTemplate.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/CreateReplicationConfigurationTemplateResponse.proto view
+ fixture/CreateWave.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/CreateWaveResponse.proto view
+ fixture/DeleteApplication.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/DeleteApplicationResponse.proto view
+ fixture/DeleteJob.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/DeleteJobResponse.proto view
+ fixture/DeleteLaunchConfigurationTemplate.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/DeleteLaunchConfigurationTemplateResponse.proto view
+ fixture/DeleteReplicationConfigurationTemplate.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/DeleteReplicationConfigurationTemplateResponse.proto view
+ fixture/DeleteSourceServer.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/DeleteSourceServerResponse.proto view
+ fixture/DeleteVcenterClient.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/DeleteVcenterClientResponse.proto view
+ fixture/DeleteWave.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/DeleteWaveResponse.proto view
+ fixture/DescribeJobLogItems.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/DescribeJobLogItemsResponse.proto view
+ fixture/DescribeJobs.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/DescribeJobsResponse.proto view
+ fixture/DescribeLaunchConfigurationTemplates.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/DescribeLaunchConfigurationTemplatesResponse.proto view
+ fixture/DescribeReplicationConfigurationTemplates.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/DescribeReplicationConfigurationTemplatesResponse.proto view
+ fixture/DescribeSourceServers.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/DescribeSourceServersResponse.proto view
+ fixture/DescribeVcenterClients.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/DescribeVcenterClientsResponse.proto view
+ fixture/DisassociateApplications.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/DisassociateApplicationsResponse.proto view
+ fixture/DisassociateSourceServers.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/DisassociateSourceServersResponse.proto view
+ fixture/DisconnectFromService.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/DisconnectFromServiceResponse.proto view
+ fixture/FinalizeCutover.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/FinalizeCutoverResponse.proto view
+ fixture/GetLaunchConfiguration.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/GetLaunchConfigurationResponse.proto view
+ fixture/GetReplicationConfiguration.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/GetReplicationConfigurationResponse.proto view
+ fixture/InitializeService.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/InitializeServiceResponse.proto view
+ fixture/ListApplications.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListApplicationsResponse.proto view
+ fixture/ListSourceServerActions.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/ListSourceServerActionsResponse.proto view
+ fixture/ListTagsForResource.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/ListTemplateActions.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/ListTemplateActionsResponse.proto view
+ fixture/ListWaves.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/ListWavesResponse.proto view
+ fixture/MarkAsArchived.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/MarkAsArchivedResponse.proto view
+ fixture/PutSourceServerAction.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/PutSourceServerActionResponse.proto view
+ fixture/PutTemplateAction.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/PutTemplateActionResponse.proto view
+ fixture/RemoveSourceServerAction.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/RemoveSourceServerActionResponse.proto view
+ fixture/RemoveTemplateAction.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/RemoveTemplateActionResponse.proto view
+ fixture/RetryDataReplication.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/RetryDataReplicationResponse.proto view
+ fixture/StartCutover.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/StartCutoverResponse.proto view
+ fixture/StartReplication.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/StartReplicationResponse.proto view
+ fixture/StartTest.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/StartTestResponse.proto view
+ fixture/TagResource.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/TerminateTargetInstances.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/TerminateTargetInstancesResponse.proto view
+ fixture/UnarchiveApplication.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/UnarchiveApplicationResponse.proto view
+ fixture/UnarchiveWave.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/UnarchiveWaveResponse.proto view
+ fixture/UntagResource.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/UpdateApplication.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/UpdateApplicationResponse.proto view
+ fixture/UpdateLaunchConfiguration.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/UpdateLaunchConfigurationResponse.proto view
+ fixture/UpdateLaunchConfigurationTemplate.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/UpdateLaunchConfigurationTemplateResponse.proto view
+ fixture/UpdateReplicationConfiguration.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/UpdateReplicationConfigurationResponse.proto view
+ fixture/UpdateReplicationConfigurationTemplate.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/UpdateReplicationConfigurationTemplateResponse.proto view
+ fixture/UpdateSourceServerReplicationType.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/UpdateSourceServerReplicationTypeResponse.proto view
+ fixture/UpdateWave.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mgn/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: mgn.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/UpdateWaveResponse.proto view
+ gen/Amazonka/MGN.hs view
@@ -0,0 +1,765 @@+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Amazonka.MGN+-- 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 @2020-02-26@ of the AWS service descriptions, licensed under Apache 2.0.+--+-- The Application Migration Service service.+module Amazonka.MGN+ ( -- * Service Configuration+ defaultService,++ -- * Errors+ -- $errors++ -- ** AccessDeniedException+ _AccessDeniedException,++ -- ** ConflictException+ _ConflictException,++ -- ** InternalServerException+ _InternalServerException,++ -- ** ResourceNotFoundException+ _ResourceNotFoundException,++ -- ** ServiceQuotaExceededException+ _ServiceQuotaExceededException,++ -- ** ThrottlingException+ _ThrottlingException,++ -- ** UninitializedAccountException+ _UninitializedAccountException,++ -- ** ValidationException+ _ValidationException,++ -- * Waiters+ -- $waiters++ -- * Operations+ -- $operations++ -- ** ArchiveApplication+ ArchiveApplication (ArchiveApplication'),+ newArchiveApplication,+ Application (Application'),+ newApplication,++ -- ** ArchiveWave+ ArchiveWave (ArchiveWave'),+ newArchiveWave,+ Wave (Wave'),+ newWave,++ -- ** AssociateApplications+ AssociateApplications (AssociateApplications'),+ newAssociateApplications,+ AssociateApplicationsResponse (AssociateApplicationsResponse'),+ newAssociateApplicationsResponse,++ -- ** AssociateSourceServers+ AssociateSourceServers (AssociateSourceServers'),+ newAssociateSourceServers,+ AssociateSourceServersResponse (AssociateSourceServersResponse'),+ newAssociateSourceServersResponse,++ -- ** ChangeServerLifeCycleState+ ChangeServerLifeCycleState (ChangeServerLifeCycleState'),+ newChangeServerLifeCycleState,+ SourceServer (SourceServer'),+ newSourceServer,++ -- ** CreateApplication+ CreateApplication (CreateApplication'),+ newCreateApplication,+ Application (Application'),+ newApplication,++ -- ** CreateLaunchConfigurationTemplate+ CreateLaunchConfigurationTemplate (CreateLaunchConfigurationTemplate'),+ newCreateLaunchConfigurationTemplate,+ LaunchConfigurationTemplate (LaunchConfigurationTemplate'),+ newLaunchConfigurationTemplate,++ -- ** CreateReplicationConfigurationTemplate+ CreateReplicationConfigurationTemplate (CreateReplicationConfigurationTemplate'),+ newCreateReplicationConfigurationTemplate,+ ReplicationConfigurationTemplate (ReplicationConfigurationTemplate'),+ newReplicationConfigurationTemplate,++ -- ** CreateWave+ CreateWave (CreateWave'),+ newCreateWave,+ Wave (Wave'),+ newWave,++ -- ** DeleteApplication+ DeleteApplication (DeleteApplication'),+ newDeleteApplication,+ DeleteApplicationResponse (DeleteApplicationResponse'),+ newDeleteApplicationResponse,++ -- ** DeleteJob+ DeleteJob (DeleteJob'),+ newDeleteJob,+ DeleteJobResponse (DeleteJobResponse'),+ newDeleteJobResponse,++ -- ** DeleteLaunchConfigurationTemplate+ DeleteLaunchConfigurationTemplate (DeleteLaunchConfigurationTemplate'),+ newDeleteLaunchConfigurationTemplate,+ DeleteLaunchConfigurationTemplateResponse (DeleteLaunchConfigurationTemplateResponse'),+ newDeleteLaunchConfigurationTemplateResponse,++ -- ** DeleteReplicationConfigurationTemplate+ DeleteReplicationConfigurationTemplate (DeleteReplicationConfigurationTemplate'),+ newDeleteReplicationConfigurationTemplate,+ DeleteReplicationConfigurationTemplateResponse (DeleteReplicationConfigurationTemplateResponse'),+ newDeleteReplicationConfigurationTemplateResponse,++ -- ** DeleteSourceServer+ DeleteSourceServer (DeleteSourceServer'),+ newDeleteSourceServer,+ DeleteSourceServerResponse (DeleteSourceServerResponse'),+ newDeleteSourceServerResponse,++ -- ** DeleteVcenterClient+ DeleteVcenterClient (DeleteVcenterClient'),+ newDeleteVcenterClient,+ DeleteVcenterClientResponse (DeleteVcenterClientResponse'),+ newDeleteVcenterClientResponse,++ -- ** DeleteWave+ DeleteWave (DeleteWave'),+ newDeleteWave,+ DeleteWaveResponse (DeleteWaveResponse'),+ newDeleteWaveResponse,++ -- ** DescribeJobLogItems (Paginated)+ DescribeJobLogItems (DescribeJobLogItems'),+ newDescribeJobLogItems,+ DescribeJobLogItemsResponse (DescribeJobLogItemsResponse'),+ newDescribeJobLogItemsResponse,++ -- ** DescribeJobs (Paginated)+ DescribeJobs (DescribeJobs'),+ newDescribeJobs,+ DescribeJobsResponse (DescribeJobsResponse'),+ newDescribeJobsResponse,++ -- ** DescribeLaunchConfigurationTemplates (Paginated)+ DescribeLaunchConfigurationTemplates (DescribeLaunchConfigurationTemplates'),+ newDescribeLaunchConfigurationTemplates,+ DescribeLaunchConfigurationTemplatesResponse (DescribeLaunchConfigurationTemplatesResponse'),+ newDescribeLaunchConfigurationTemplatesResponse,++ -- ** DescribeReplicationConfigurationTemplates (Paginated)+ DescribeReplicationConfigurationTemplates (DescribeReplicationConfigurationTemplates'),+ newDescribeReplicationConfigurationTemplates,+ DescribeReplicationConfigurationTemplatesResponse (DescribeReplicationConfigurationTemplatesResponse'),+ newDescribeReplicationConfigurationTemplatesResponse,++ -- ** DescribeSourceServers (Paginated)+ DescribeSourceServers (DescribeSourceServers'),+ newDescribeSourceServers,+ DescribeSourceServersResponse (DescribeSourceServersResponse'),+ newDescribeSourceServersResponse,++ -- ** DescribeVcenterClients (Paginated)+ DescribeVcenterClients (DescribeVcenterClients'),+ newDescribeVcenterClients,+ DescribeVcenterClientsResponse (DescribeVcenterClientsResponse'),+ newDescribeVcenterClientsResponse,++ -- ** DisassociateApplications+ DisassociateApplications (DisassociateApplications'),+ newDisassociateApplications,+ DisassociateApplicationsResponse (DisassociateApplicationsResponse'),+ newDisassociateApplicationsResponse,++ -- ** DisassociateSourceServers+ DisassociateSourceServers (DisassociateSourceServers'),+ newDisassociateSourceServers,+ DisassociateSourceServersResponse (DisassociateSourceServersResponse'),+ newDisassociateSourceServersResponse,++ -- ** DisconnectFromService+ DisconnectFromService (DisconnectFromService'),+ newDisconnectFromService,+ SourceServer (SourceServer'),+ newSourceServer,++ -- ** FinalizeCutover+ FinalizeCutover (FinalizeCutover'),+ newFinalizeCutover,+ SourceServer (SourceServer'),+ newSourceServer,++ -- ** GetLaunchConfiguration+ GetLaunchConfiguration (GetLaunchConfiguration'),+ newGetLaunchConfiguration,+ LaunchConfiguration (LaunchConfiguration'),+ newLaunchConfiguration,++ -- ** GetReplicationConfiguration+ GetReplicationConfiguration (GetReplicationConfiguration'),+ newGetReplicationConfiguration,+ ReplicationConfiguration (ReplicationConfiguration'),+ newReplicationConfiguration,++ -- ** InitializeService+ InitializeService (InitializeService'),+ newInitializeService,+ InitializeServiceResponse (InitializeServiceResponse'),+ newInitializeServiceResponse,++ -- ** ListApplications (Paginated)+ ListApplications (ListApplications'),+ newListApplications,+ ListApplicationsResponse (ListApplicationsResponse'),+ newListApplicationsResponse,++ -- ** ListSourceServerActions (Paginated)+ ListSourceServerActions (ListSourceServerActions'),+ newListSourceServerActions,+ ListSourceServerActionsResponse (ListSourceServerActionsResponse'),+ newListSourceServerActionsResponse,++ -- ** ListTagsForResource+ ListTagsForResource (ListTagsForResource'),+ newListTagsForResource,+ ListTagsForResourceResponse (ListTagsForResourceResponse'),+ newListTagsForResourceResponse,++ -- ** ListTemplateActions (Paginated)+ ListTemplateActions (ListTemplateActions'),+ newListTemplateActions,+ ListTemplateActionsResponse (ListTemplateActionsResponse'),+ newListTemplateActionsResponse,++ -- ** ListWaves (Paginated)+ ListWaves (ListWaves'),+ newListWaves,+ ListWavesResponse (ListWavesResponse'),+ newListWavesResponse,++ -- ** MarkAsArchived+ MarkAsArchived (MarkAsArchived'),+ newMarkAsArchived,+ SourceServer (SourceServer'),+ newSourceServer,++ -- ** PutSourceServerAction+ PutSourceServerAction (PutSourceServerAction'),+ newPutSourceServerAction,+ SourceServerActionDocument (SourceServerActionDocument'),+ newSourceServerActionDocument,++ -- ** PutTemplateAction+ PutTemplateAction (PutTemplateAction'),+ newPutTemplateAction,+ TemplateActionDocument (TemplateActionDocument'),+ newTemplateActionDocument,++ -- ** RemoveSourceServerAction+ RemoveSourceServerAction (RemoveSourceServerAction'),+ newRemoveSourceServerAction,+ RemoveSourceServerActionResponse (RemoveSourceServerActionResponse'),+ newRemoveSourceServerActionResponse,++ -- ** RemoveTemplateAction+ RemoveTemplateAction (RemoveTemplateAction'),+ newRemoveTemplateAction,+ RemoveTemplateActionResponse (RemoveTemplateActionResponse'),+ newRemoveTemplateActionResponse,++ -- ** RetryDataReplication+ RetryDataReplication (RetryDataReplication'),+ newRetryDataReplication,+ SourceServer (SourceServer'),+ newSourceServer,++ -- ** StartCutover+ StartCutover (StartCutover'),+ newStartCutover,+ StartCutoverResponse (StartCutoverResponse'),+ newStartCutoverResponse,++ -- ** StartReplication+ StartReplication (StartReplication'),+ newStartReplication,+ SourceServer (SourceServer'),+ newSourceServer,++ -- ** StartTest+ StartTest (StartTest'),+ newStartTest,+ StartTestResponse (StartTestResponse'),+ newStartTestResponse,++ -- ** TagResource+ TagResource (TagResource'),+ newTagResource,+ TagResourceResponse (TagResourceResponse'),+ newTagResourceResponse,++ -- ** TerminateTargetInstances+ TerminateTargetInstances (TerminateTargetInstances'),+ newTerminateTargetInstances,+ TerminateTargetInstancesResponse (TerminateTargetInstancesResponse'),+ newTerminateTargetInstancesResponse,++ -- ** UnarchiveApplication+ UnarchiveApplication (UnarchiveApplication'),+ newUnarchiveApplication,+ Application (Application'),+ newApplication,++ -- ** UnarchiveWave+ UnarchiveWave (UnarchiveWave'),+ newUnarchiveWave,+ Wave (Wave'),+ newWave,++ -- ** UntagResource+ UntagResource (UntagResource'),+ newUntagResource,+ UntagResourceResponse (UntagResourceResponse'),+ newUntagResourceResponse,++ -- ** UpdateApplication+ UpdateApplication (UpdateApplication'),+ newUpdateApplication,+ Application (Application'),+ newApplication,++ -- ** UpdateLaunchConfiguration+ UpdateLaunchConfiguration (UpdateLaunchConfiguration'),+ newUpdateLaunchConfiguration,+ LaunchConfiguration (LaunchConfiguration'),+ newLaunchConfiguration,++ -- ** UpdateLaunchConfigurationTemplate+ UpdateLaunchConfigurationTemplate (UpdateLaunchConfigurationTemplate'),+ newUpdateLaunchConfigurationTemplate,+ LaunchConfigurationTemplate (LaunchConfigurationTemplate'),+ newLaunchConfigurationTemplate,++ -- ** UpdateReplicationConfiguration+ UpdateReplicationConfiguration (UpdateReplicationConfiguration'),+ newUpdateReplicationConfiguration,+ ReplicationConfiguration (ReplicationConfiguration'),+ newReplicationConfiguration,++ -- ** UpdateReplicationConfigurationTemplate+ UpdateReplicationConfigurationTemplate (UpdateReplicationConfigurationTemplate'),+ newUpdateReplicationConfigurationTemplate,+ ReplicationConfigurationTemplate (ReplicationConfigurationTemplate'),+ newReplicationConfigurationTemplate,++ -- ** UpdateSourceServerReplicationType+ UpdateSourceServerReplicationType (UpdateSourceServerReplicationType'),+ newUpdateSourceServerReplicationType,+ SourceServer (SourceServer'),+ newSourceServer,++ -- ** UpdateWave+ UpdateWave (UpdateWave'),+ newUpdateWave,+ Wave (Wave'),+ newWave,++ -- * Types++ -- ** ApplicationHealthStatus+ ApplicationHealthStatus (..),++ -- ** ApplicationProgressStatus+ ApplicationProgressStatus (..),++ -- ** BootMode+ BootMode (..),++ -- ** ChangeServerLifeCycleStateSourceServerLifecycleState+ ChangeServerLifeCycleStateSourceServerLifecycleState (..),++ -- ** DataReplicationErrorString+ DataReplicationErrorString (..),++ -- ** DataReplicationInitiationStepName+ DataReplicationInitiationStepName (..),++ -- ** DataReplicationInitiationStepStatus+ DataReplicationInitiationStepStatus (..),++ -- ** DataReplicationState+ DataReplicationState (..),++ -- ** FirstBoot+ FirstBoot (..),++ -- ** InitiatedBy+ InitiatedBy (..),++ -- ** JobLogEvent+ JobLogEvent (..),++ -- ** JobStatus+ JobStatus (..),++ -- ** JobType+ JobType (..),++ -- ** LaunchDisposition+ LaunchDisposition (..),++ -- ** LaunchStatus+ LaunchStatus (..),++ -- ** LifeCycleState+ LifeCycleState (..),++ -- ** PostLaunchActionExecutionStatus+ PostLaunchActionExecutionStatus (..),++ -- ** PostLaunchActionsDeploymentType+ PostLaunchActionsDeploymentType (..),++ -- ** ReplicationConfigurationDataPlaneRouting+ ReplicationConfigurationDataPlaneRouting (..),++ -- ** ReplicationConfigurationDefaultLargeStagingDiskType+ ReplicationConfigurationDefaultLargeStagingDiskType (..),++ -- ** ReplicationConfigurationEbsEncryption+ ReplicationConfigurationEbsEncryption (..),++ -- ** ReplicationConfigurationReplicatedDiskStagingDiskType+ ReplicationConfigurationReplicatedDiskStagingDiskType (..),++ -- ** ReplicationType+ ReplicationType (..),++ -- ** SsmDocumentType+ SsmDocumentType (..),++ -- ** SsmParameterStoreParameterType+ SsmParameterStoreParameterType (..),++ -- ** TargetInstanceTypeRightSizingMethod+ TargetInstanceTypeRightSizingMethod (..),++ -- ** VolumeType+ VolumeType (..),++ -- ** WaveHealthStatus+ WaveHealthStatus (..),++ -- ** WaveProgressStatus+ WaveProgressStatus (..),++ -- ** Application+ Application (Application'),+ newApplication,++ -- ** ApplicationAggregatedStatus+ ApplicationAggregatedStatus (ApplicationAggregatedStatus'),+ newApplicationAggregatedStatus,++ -- ** CPU+ CPU (CPU'),+ newCPU,++ -- ** ChangeServerLifeCycleStateSourceServerLifecycle+ ChangeServerLifeCycleStateSourceServerLifecycle (ChangeServerLifeCycleStateSourceServerLifecycle'),+ newChangeServerLifeCycleStateSourceServerLifecycle,++ -- ** DataReplicationError+ DataReplicationError (DataReplicationError'),+ newDataReplicationError,++ -- ** DataReplicationInfo+ DataReplicationInfo (DataReplicationInfo'),+ newDataReplicationInfo,++ -- ** DataReplicationInfoReplicatedDisk+ DataReplicationInfoReplicatedDisk (DataReplicationInfoReplicatedDisk'),+ newDataReplicationInfoReplicatedDisk,++ -- ** DataReplicationInitiation+ DataReplicationInitiation (DataReplicationInitiation'),+ newDataReplicationInitiation,++ -- ** DataReplicationInitiationStep+ DataReplicationInitiationStep (DataReplicationInitiationStep'),+ newDataReplicationInitiationStep,++ -- ** DescribeJobsRequestFilters+ DescribeJobsRequestFilters (DescribeJobsRequestFilters'),+ newDescribeJobsRequestFilters,++ -- ** DescribeSourceServersRequestFilters+ DescribeSourceServersRequestFilters (DescribeSourceServersRequestFilters'),+ newDescribeSourceServersRequestFilters,++ -- ** Disk+ Disk (Disk'),+ newDisk,++ -- ** IdentificationHints+ IdentificationHints (IdentificationHints'),+ newIdentificationHints,++ -- ** Job+ Job (Job'),+ newJob,++ -- ** JobLog+ JobLog (JobLog'),+ newJobLog,++ -- ** JobLogEventData+ JobLogEventData (JobLogEventData'),+ newJobLogEventData,++ -- ** JobPostLaunchActionsLaunchStatus+ JobPostLaunchActionsLaunchStatus (JobPostLaunchActionsLaunchStatus'),+ newJobPostLaunchActionsLaunchStatus,++ -- ** LaunchConfiguration+ LaunchConfiguration (LaunchConfiguration'),+ newLaunchConfiguration,++ -- ** LaunchConfigurationTemplate+ LaunchConfigurationTemplate (LaunchConfigurationTemplate'),+ newLaunchConfigurationTemplate,++ -- ** LaunchTemplateDiskConf+ LaunchTemplateDiskConf (LaunchTemplateDiskConf'),+ newLaunchTemplateDiskConf,++ -- ** LaunchedInstance+ LaunchedInstance (LaunchedInstance'),+ newLaunchedInstance,++ -- ** Licensing+ Licensing (Licensing'),+ newLicensing,++ -- ** LifeCycle+ LifeCycle (LifeCycle'),+ newLifeCycle,++ -- ** LifeCycleLastCutover+ LifeCycleLastCutover (LifeCycleLastCutover'),+ newLifeCycleLastCutover,++ -- ** LifeCycleLastCutoverFinalized+ LifeCycleLastCutoverFinalized (LifeCycleLastCutoverFinalized'),+ newLifeCycleLastCutoverFinalized,++ -- ** LifeCycleLastCutoverInitiated+ LifeCycleLastCutoverInitiated (LifeCycleLastCutoverInitiated'),+ newLifeCycleLastCutoverInitiated,++ -- ** LifeCycleLastCutoverReverted+ LifeCycleLastCutoverReverted (LifeCycleLastCutoverReverted'),+ newLifeCycleLastCutoverReverted,++ -- ** LifeCycleLastTest+ LifeCycleLastTest (LifeCycleLastTest'),+ newLifeCycleLastTest,++ -- ** LifeCycleLastTestFinalized+ LifeCycleLastTestFinalized (LifeCycleLastTestFinalized'),+ newLifeCycleLastTestFinalized,++ -- ** LifeCycleLastTestInitiated+ LifeCycleLastTestInitiated (LifeCycleLastTestInitiated'),+ newLifeCycleLastTestInitiated,++ -- ** LifeCycleLastTestReverted+ LifeCycleLastTestReverted (LifeCycleLastTestReverted'),+ newLifeCycleLastTestReverted,++ -- ** ListApplicationsRequestFilters+ ListApplicationsRequestFilters (ListApplicationsRequestFilters'),+ newListApplicationsRequestFilters,++ -- ** ListWavesRequestFilters+ ListWavesRequestFilters (ListWavesRequestFilters'),+ newListWavesRequestFilters,++ -- ** NetworkInterface+ NetworkInterface (NetworkInterface'),+ newNetworkInterface,++ -- ** OS+ OS (OS'),+ newOS,++ -- ** ParticipatingServer+ ParticipatingServer (ParticipatingServer'),+ newParticipatingServer,++ -- ** PostLaunchActions+ PostLaunchActions (PostLaunchActions'),+ newPostLaunchActions,++ -- ** PostLaunchActionsStatus+ PostLaunchActionsStatus (PostLaunchActionsStatus'),+ newPostLaunchActionsStatus,++ -- ** ReplicationConfiguration+ ReplicationConfiguration (ReplicationConfiguration'),+ newReplicationConfiguration,++ -- ** ReplicationConfigurationReplicatedDisk+ ReplicationConfigurationReplicatedDisk (ReplicationConfigurationReplicatedDisk'),+ newReplicationConfigurationReplicatedDisk,++ -- ** ReplicationConfigurationTemplate+ ReplicationConfigurationTemplate (ReplicationConfigurationTemplate'),+ newReplicationConfigurationTemplate,++ -- ** SourceProperties+ SourceProperties (SourceProperties'),+ newSourceProperties,++ -- ** SourceServer+ SourceServer (SourceServer'),+ newSourceServer,++ -- ** SourceServerActionDocument+ SourceServerActionDocument (SourceServerActionDocument'),+ newSourceServerActionDocument,++ -- ** SourceServerActionsRequestFilters+ SourceServerActionsRequestFilters (SourceServerActionsRequestFilters'),+ newSourceServerActionsRequestFilters,++ -- ** SsmDocument+ SsmDocument (SsmDocument'),+ newSsmDocument,++ -- ** SsmParameterStoreParameter+ SsmParameterStoreParameter (SsmParameterStoreParameter'),+ newSsmParameterStoreParameter,++ -- ** TemplateActionDocument+ TemplateActionDocument (TemplateActionDocument'),+ newTemplateActionDocument,++ -- ** TemplateActionsRequestFilters+ TemplateActionsRequestFilters (TemplateActionsRequestFilters'),+ newTemplateActionsRequestFilters,++ -- ** VcenterClient+ VcenterClient (VcenterClient'),+ newVcenterClient,++ -- ** Wave+ Wave (Wave'),+ newWave,++ -- ** WaveAggregatedStatus+ WaveAggregatedStatus (WaveAggregatedStatus'),+ newWaveAggregatedStatus,+ )+where++import Amazonka.MGN.ArchiveApplication+import Amazonka.MGN.ArchiveWave+import Amazonka.MGN.AssociateApplications+import Amazonka.MGN.AssociateSourceServers+import Amazonka.MGN.ChangeServerLifeCycleState+import Amazonka.MGN.CreateApplication+import Amazonka.MGN.CreateLaunchConfigurationTemplate+import Amazonka.MGN.CreateReplicationConfigurationTemplate+import Amazonka.MGN.CreateWave+import Amazonka.MGN.DeleteApplication+import Amazonka.MGN.DeleteJob+import Amazonka.MGN.DeleteLaunchConfigurationTemplate+import Amazonka.MGN.DeleteReplicationConfigurationTemplate+import Amazonka.MGN.DeleteSourceServer+import Amazonka.MGN.DeleteVcenterClient+import Amazonka.MGN.DeleteWave+import Amazonka.MGN.DescribeJobLogItems+import Amazonka.MGN.DescribeJobs+import Amazonka.MGN.DescribeLaunchConfigurationTemplates+import Amazonka.MGN.DescribeReplicationConfigurationTemplates+import Amazonka.MGN.DescribeSourceServers+import Amazonka.MGN.DescribeVcenterClients+import Amazonka.MGN.DisassociateApplications+import Amazonka.MGN.DisassociateSourceServers+import Amazonka.MGN.DisconnectFromService+import Amazonka.MGN.FinalizeCutover+import Amazonka.MGN.GetLaunchConfiguration+import Amazonka.MGN.GetReplicationConfiguration+import Amazonka.MGN.InitializeService+import Amazonka.MGN.Lens+import Amazonka.MGN.ListApplications+import Amazonka.MGN.ListSourceServerActions+import Amazonka.MGN.ListTagsForResource+import Amazonka.MGN.ListTemplateActions+import Amazonka.MGN.ListWaves+import Amazonka.MGN.MarkAsArchived+import Amazonka.MGN.PutSourceServerAction+import Amazonka.MGN.PutTemplateAction+import Amazonka.MGN.RemoveSourceServerAction+import Amazonka.MGN.RemoveTemplateAction+import Amazonka.MGN.RetryDataReplication+import Amazonka.MGN.StartCutover+import Amazonka.MGN.StartReplication+import Amazonka.MGN.StartTest+import Amazonka.MGN.TagResource+import Amazonka.MGN.TerminateTargetInstances+import Amazonka.MGN.Types+import Amazonka.MGN.UnarchiveApplication+import Amazonka.MGN.UnarchiveWave+import Amazonka.MGN.UntagResource+import Amazonka.MGN.UpdateApplication+import Amazonka.MGN.UpdateLaunchConfiguration+import Amazonka.MGN.UpdateLaunchConfigurationTemplate+import Amazonka.MGN.UpdateReplicationConfiguration+import Amazonka.MGN.UpdateReplicationConfigurationTemplate+import Amazonka.MGN.UpdateSourceServerReplicationType+import Amazonka.MGN.UpdateWave+import Amazonka.MGN.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 'MGN'.++-- $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/MGN/ArchiveApplication.hs view
@@ -0,0 +1,128 @@+{-# 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.MGN.ArchiveApplication+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Archive application.+module Amazonka.MGN.ArchiveApplication+ ( -- * Creating a Request+ ArchiveApplication (..),+ newArchiveApplication,++ -- * Request Lenses+ archiveApplication_applicationID,++ -- * Destructuring the Response+ Application (..),+ newApplication,++ -- * Response Lenses+ application_applicationAggregatedStatus,+ application_applicationID,+ application_arn,+ application_creationDateTime,+ application_description,+ application_isArchived,+ application_lastModifiedDateTime,+ application_name,+ application_tags,+ application_waveID,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newArchiveApplication' smart constructor.+data ArchiveApplication = ArchiveApplication'+ { -- | Application ID.+ applicationID :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ArchiveApplication' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationID', 'archiveApplication_applicationID' - Application ID.+newArchiveApplication ::+ -- | 'applicationID'+ Prelude.Text ->+ ArchiveApplication+newArchiveApplication pApplicationID_ =+ ArchiveApplication'+ { applicationID =+ pApplicationID_+ }++-- | Application ID.+archiveApplication_applicationID :: Lens.Lens' ArchiveApplication Prelude.Text+archiveApplication_applicationID = Lens.lens (\ArchiveApplication' {applicationID} -> applicationID) (\s@ArchiveApplication' {} a -> s {applicationID = a} :: ArchiveApplication)++instance Core.AWSRequest ArchiveApplication where+ type AWSResponse ArchiveApplication = Application+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ (\s h x -> Data.eitherParseJSON x)++instance Prelude.Hashable ArchiveApplication where+ hashWithSalt _salt ArchiveApplication' {..} =+ _salt `Prelude.hashWithSalt` applicationID++instance Prelude.NFData ArchiveApplication where+ rnf ArchiveApplication' {..} =+ Prelude.rnf applicationID++instance Data.ToHeaders ArchiveApplication where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ArchiveApplication where+ toJSON ArchiveApplication' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("applicationID" Data..= applicationID)+ ]+ )++instance Data.ToPath ArchiveApplication where+ toPath = Prelude.const "/ArchiveApplication"++instance Data.ToQuery ArchiveApplication where+ toQuery = Prelude.const Prelude.mempty
+ gen/Amazonka/MGN/ArchiveWave.hs view
@@ -0,0 +1,121 @@+{-# 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.MGN.ArchiveWave+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Archive wave.+module Amazonka.MGN.ArchiveWave+ ( -- * Creating a Request+ ArchiveWave (..),+ newArchiveWave,++ -- * Request Lenses+ archiveWave_waveID,++ -- * Destructuring the Response+ Wave (..),+ newWave,++ -- * Response Lenses+ wave_arn,+ wave_creationDateTime,+ wave_description,+ wave_isArchived,+ wave_lastModifiedDateTime,+ wave_name,+ wave_tags,+ wave_waveAggregatedStatus,+ wave_waveID,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newArchiveWave' smart constructor.+data ArchiveWave = ArchiveWave'+ { -- | Wave ID.+ waveID :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ArchiveWave' 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:+--+-- 'waveID', 'archiveWave_waveID' - Wave ID.+newArchiveWave ::+ -- | 'waveID'+ Prelude.Text ->+ ArchiveWave+newArchiveWave pWaveID_ =+ ArchiveWave' {waveID = pWaveID_}++-- | Wave ID.+archiveWave_waveID :: Lens.Lens' ArchiveWave Prelude.Text+archiveWave_waveID = Lens.lens (\ArchiveWave' {waveID} -> waveID) (\s@ArchiveWave' {} a -> s {waveID = a} :: ArchiveWave)++instance Core.AWSRequest ArchiveWave where+ type AWSResponse ArchiveWave = Wave+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ (\s h x -> Data.eitherParseJSON x)++instance Prelude.Hashable ArchiveWave where+ hashWithSalt _salt ArchiveWave' {..} =+ _salt `Prelude.hashWithSalt` waveID++instance Prelude.NFData ArchiveWave where+ rnf ArchiveWave' {..} = Prelude.rnf waveID++instance Data.ToHeaders ArchiveWave where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ArchiveWave where+ toJSON ArchiveWave' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("waveID" Data..= waveID)]+ )++instance Data.ToPath ArchiveWave where+ toPath = Prelude.const "/ArchiveWave"++instance Data.ToQuery ArchiveWave where+ toQuery = Prelude.const Prelude.mempty
+ gen/Amazonka/MGN/AssociateApplications.hs view
@@ -0,0 +1,174 @@+{-# 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.MGN.AssociateApplications+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Associate applications to wave.+module Amazonka.MGN.AssociateApplications+ ( -- * Creating a Request+ AssociateApplications (..),+ newAssociateApplications,++ -- * Request Lenses+ associateApplications_applicationIDs,+ associateApplications_waveID,++ -- * Destructuring the Response+ AssociateApplicationsResponse (..),+ newAssociateApplicationsResponse,++ -- * Response Lenses+ associateApplicationsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newAssociateApplications' smart constructor.+data AssociateApplications = AssociateApplications'+ { -- | Application IDs list.+ applicationIDs :: Prelude.NonEmpty Prelude.Text,+ -- | Wave ID.+ waveID :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AssociateApplications' 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:+--+-- 'applicationIDs', 'associateApplications_applicationIDs' - Application IDs list.+--+-- 'waveID', 'associateApplications_waveID' - Wave ID.+newAssociateApplications ::+ -- | 'applicationIDs'+ Prelude.NonEmpty Prelude.Text ->+ -- | 'waveID'+ Prelude.Text ->+ AssociateApplications+newAssociateApplications pApplicationIDs_ pWaveID_ =+ AssociateApplications'+ { applicationIDs =+ Lens.coerced Lens.# pApplicationIDs_,+ waveID = pWaveID_+ }++-- | Application IDs list.+associateApplications_applicationIDs :: Lens.Lens' AssociateApplications (Prelude.NonEmpty Prelude.Text)+associateApplications_applicationIDs = Lens.lens (\AssociateApplications' {applicationIDs} -> applicationIDs) (\s@AssociateApplications' {} a -> s {applicationIDs = a} :: AssociateApplications) Prelude.. Lens.coerced++-- | Wave ID.+associateApplications_waveID :: Lens.Lens' AssociateApplications Prelude.Text+associateApplications_waveID = Lens.lens (\AssociateApplications' {waveID} -> waveID) (\s@AssociateApplications' {} a -> s {waveID = a} :: AssociateApplications)++instance Core.AWSRequest AssociateApplications where+ type+ AWSResponse AssociateApplications =+ AssociateApplicationsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ AssociateApplicationsResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable AssociateApplications where+ hashWithSalt _salt AssociateApplications' {..} =+ _salt+ `Prelude.hashWithSalt` applicationIDs+ `Prelude.hashWithSalt` waveID++instance Prelude.NFData AssociateApplications where+ rnf AssociateApplications' {..} =+ Prelude.rnf applicationIDs+ `Prelude.seq` Prelude.rnf waveID++instance Data.ToHeaders AssociateApplications where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON AssociateApplications where+ toJSON AssociateApplications' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("applicationIDs" Data..= applicationIDs),+ Prelude.Just ("waveID" Data..= waveID)+ ]+ )++instance Data.ToPath AssociateApplications where+ toPath = Prelude.const "/AssociateApplications"++instance Data.ToQuery AssociateApplications where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newAssociateApplicationsResponse' smart constructor.+data AssociateApplicationsResponse = AssociateApplicationsResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AssociateApplicationsResponse' 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', 'associateApplicationsResponse_httpStatus' - The response's http status code.+newAssociateApplicationsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ AssociateApplicationsResponse+newAssociateApplicationsResponse pHttpStatus_ =+ AssociateApplicationsResponse'+ { httpStatus =+ pHttpStatus_+ }++-- | The response's http status code.+associateApplicationsResponse_httpStatus :: Lens.Lens' AssociateApplicationsResponse Prelude.Int+associateApplicationsResponse_httpStatus = Lens.lens (\AssociateApplicationsResponse' {httpStatus} -> httpStatus) (\s@AssociateApplicationsResponse' {} a -> s {httpStatus = a} :: AssociateApplicationsResponse)++instance Prelude.NFData AssociateApplicationsResponse where+ rnf AssociateApplicationsResponse' {..} =+ Prelude.rnf httpStatus
+ gen/Amazonka/MGN/AssociateSourceServers.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.MGN.AssociateSourceServers+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Associate source servers to application.+module Amazonka.MGN.AssociateSourceServers+ ( -- * Creating a Request+ AssociateSourceServers (..),+ newAssociateSourceServers,++ -- * Request Lenses+ associateSourceServers_applicationID,+ associateSourceServers_sourceServerIDs,++ -- * Destructuring the Response+ AssociateSourceServersResponse (..),+ newAssociateSourceServersResponse,++ -- * Response Lenses+ associateSourceServersResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newAssociateSourceServers' smart constructor.+data AssociateSourceServers = AssociateSourceServers'+ { -- | Application ID.+ applicationID :: Prelude.Text,+ -- | Source server IDs list.+ sourceServerIDs :: Prelude.NonEmpty Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AssociateSourceServers' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationID', 'associateSourceServers_applicationID' - Application ID.+--+-- 'sourceServerIDs', 'associateSourceServers_sourceServerIDs' - Source server IDs list.+newAssociateSourceServers ::+ -- | 'applicationID'+ Prelude.Text ->+ -- | 'sourceServerIDs'+ Prelude.NonEmpty Prelude.Text ->+ AssociateSourceServers+newAssociateSourceServers+ pApplicationID_+ pSourceServerIDs_ =+ AssociateSourceServers'+ { applicationID =+ pApplicationID_,+ sourceServerIDs =+ Lens.coerced Lens.# pSourceServerIDs_+ }++-- | Application ID.+associateSourceServers_applicationID :: Lens.Lens' AssociateSourceServers Prelude.Text+associateSourceServers_applicationID = Lens.lens (\AssociateSourceServers' {applicationID} -> applicationID) (\s@AssociateSourceServers' {} a -> s {applicationID = a} :: AssociateSourceServers)++-- | Source server IDs list.+associateSourceServers_sourceServerIDs :: Lens.Lens' AssociateSourceServers (Prelude.NonEmpty Prelude.Text)+associateSourceServers_sourceServerIDs = Lens.lens (\AssociateSourceServers' {sourceServerIDs} -> sourceServerIDs) (\s@AssociateSourceServers' {} a -> s {sourceServerIDs = a} :: AssociateSourceServers) Prelude.. Lens.coerced++instance Core.AWSRequest AssociateSourceServers where+ type+ AWSResponse AssociateSourceServers =+ AssociateSourceServersResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ AssociateSourceServersResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable AssociateSourceServers where+ hashWithSalt _salt AssociateSourceServers' {..} =+ _salt+ `Prelude.hashWithSalt` applicationID+ `Prelude.hashWithSalt` sourceServerIDs++instance Prelude.NFData AssociateSourceServers where+ rnf AssociateSourceServers' {..} =+ Prelude.rnf applicationID+ `Prelude.seq` Prelude.rnf sourceServerIDs++instance Data.ToHeaders AssociateSourceServers where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON AssociateSourceServers where+ toJSON AssociateSourceServers' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("applicationID" Data..= applicationID),+ Prelude.Just+ ("sourceServerIDs" Data..= sourceServerIDs)+ ]+ )++instance Data.ToPath AssociateSourceServers where+ toPath = Prelude.const "/AssociateSourceServers"++instance Data.ToQuery AssociateSourceServers where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newAssociateSourceServersResponse' smart constructor.+data AssociateSourceServersResponse = AssociateSourceServersResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AssociateSourceServersResponse' 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', 'associateSourceServersResponse_httpStatus' - The response's http status code.+newAssociateSourceServersResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ AssociateSourceServersResponse+newAssociateSourceServersResponse pHttpStatus_ =+ AssociateSourceServersResponse'+ { httpStatus =+ pHttpStatus_+ }++-- | The response's http status code.+associateSourceServersResponse_httpStatus :: Lens.Lens' AssociateSourceServersResponse Prelude.Int+associateSourceServersResponse_httpStatus = Lens.lens (\AssociateSourceServersResponse' {httpStatus} -> httpStatus) (\s@AssociateSourceServersResponse' {} a -> s {httpStatus = a} :: AssociateSourceServersResponse)++instance+ Prelude.NFData+ AssociateSourceServersResponse+ where+ rnf AssociateSourceServersResponse' {..} =+ Prelude.rnf httpStatus
+ gen/Amazonka/MGN/ChangeServerLifeCycleState.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.MGN.ChangeServerLifeCycleState+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Allows the user to set the SourceServer.LifeCycle.state property for+-- specific Source Server IDs to one of the following: READY_FOR_TEST or+-- READY_FOR_CUTOVER. This command only works if the Source Server is+-- already launchable (dataReplicationInfo.lagDuration is not null.)+module Amazonka.MGN.ChangeServerLifeCycleState+ ( -- * Creating a Request+ ChangeServerLifeCycleState (..),+ newChangeServerLifeCycleState,++ -- * Request Lenses+ changeServerLifeCycleState_lifeCycle,+ changeServerLifeCycleState_sourceServerID,++ -- * Destructuring the Response+ SourceServer (..),+ newSourceServer,++ -- * Response Lenses+ sourceServer_applicationID,+ sourceServer_arn,+ sourceServer_dataReplicationInfo,+ sourceServer_isArchived,+ sourceServer_launchedInstance,+ sourceServer_lifeCycle,+ sourceServer_replicationType,+ sourceServer_sourceProperties,+ sourceServer_sourceServerID,+ sourceServer_tags,+ sourceServer_vcenterClientID,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newChangeServerLifeCycleState' smart constructor.+data ChangeServerLifeCycleState = ChangeServerLifeCycleState'+ { -- | The request to change the source server migration lifecycle state.+ lifeCycle :: ChangeServerLifeCycleStateSourceServerLifecycle,+ -- | The request to change the source server migration lifecycle state by+ -- source server ID.+ sourceServerID :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ChangeServerLifeCycleState' 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:+--+-- 'lifeCycle', 'changeServerLifeCycleState_lifeCycle' - The request to change the source server migration lifecycle state.+--+-- 'sourceServerID', 'changeServerLifeCycleState_sourceServerID' - The request to change the source server migration lifecycle state by+-- source server ID.+newChangeServerLifeCycleState ::+ -- | 'lifeCycle'+ ChangeServerLifeCycleStateSourceServerLifecycle ->+ -- | 'sourceServerID'+ Prelude.Text ->+ ChangeServerLifeCycleState+newChangeServerLifeCycleState+ pLifeCycle_+ pSourceServerID_ =+ ChangeServerLifeCycleState'+ { lifeCycle =+ pLifeCycle_,+ sourceServerID = pSourceServerID_+ }++-- | The request to change the source server migration lifecycle state.+changeServerLifeCycleState_lifeCycle :: Lens.Lens' ChangeServerLifeCycleState ChangeServerLifeCycleStateSourceServerLifecycle+changeServerLifeCycleState_lifeCycle = Lens.lens (\ChangeServerLifeCycleState' {lifeCycle} -> lifeCycle) (\s@ChangeServerLifeCycleState' {} a -> s {lifeCycle = a} :: ChangeServerLifeCycleState)++-- | The request to change the source server migration lifecycle state by+-- source server ID.+changeServerLifeCycleState_sourceServerID :: Lens.Lens' ChangeServerLifeCycleState Prelude.Text+changeServerLifeCycleState_sourceServerID = Lens.lens (\ChangeServerLifeCycleState' {sourceServerID} -> sourceServerID) (\s@ChangeServerLifeCycleState' {} a -> s {sourceServerID = a} :: ChangeServerLifeCycleState)++instance Core.AWSRequest ChangeServerLifeCycleState where+ type+ AWSResponse ChangeServerLifeCycleState =+ SourceServer+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ (\s h x -> Data.eitherParseJSON x)++instance Prelude.Hashable ChangeServerLifeCycleState where+ hashWithSalt _salt ChangeServerLifeCycleState' {..} =+ _salt+ `Prelude.hashWithSalt` lifeCycle+ `Prelude.hashWithSalt` sourceServerID++instance Prelude.NFData ChangeServerLifeCycleState where+ rnf ChangeServerLifeCycleState' {..} =+ Prelude.rnf lifeCycle+ `Prelude.seq` Prelude.rnf sourceServerID++instance Data.ToHeaders ChangeServerLifeCycleState where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ChangeServerLifeCycleState where+ toJSON ChangeServerLifeCycleState' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("lifeCycle" Data..= lifeCycle),+ Prelude.Just+ ("sourceServerID" Data..= sourceServerID)+ ]+ )++instance Data.ToPath ChangeServerLifeCycleState where+ toPath = Prelude.const "/ChangeServerLifeCycleState"++instance Data.ToQuery ChangeServerLifeCycleState where+ toQuery = Prelude.const Prelude.mempty
+ gen/Amazonka/MGN/CreateApplication.hs view
@@ -0,0 +1,153 @@+{-# 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.MGN.CreateApplication+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Create application.+module Amazonka.MGN.CreateApplication+ ( -- * Creating a Request+ CreateApplication (..),+ newCreateApplication,++ -- * Request Lenses+ createApplication_description,+ createApplication_tags,+ createApplication_name,++ -- * Destructuring the Response+ Application (..),+ newApplication,++ -- * Response Lenses+ application_applicationAggregatedStatus,+ application_applicationID,+ application_arn,+ application_creationDateTime,+ application_description,+ application_isArchived,+ application_lastModifiedDateTime,+ application_name,+ application_tags,+ application_waveID,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateApplication' smart constructor.+data CreateApplication = CreateApplication'+ { -- | Application description.+ description :: Prelude.Maybe Prelude.Text,+ -- | Application tags.+ tags :: Prelude.Maybe (Data.Sensitive (Prelude.HashMap Prelude.Text Prelude.Text)),+ -- | Application name.+ name :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateApplication' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'description', 'createApplication_description' - Application description.+--+-- 'tags', 'createApplication_tags' - Application tags.+--+-- 'name', 'createApplication_name' - Application name.+newCreateApplication ::+ -- | 'name'+ Prelude.Text ->+ CreateApplication+newCreateApplication pName_ =+ CreateApplication'+ { description = Prelude.Nothing,+ tags = Prelude.Nothing,+ name = pName_+ }++-- | Application description.+createApplication_description :: Lens.Lens' CreateApplication (Prelude.Maybe Prelude.Text)+createApplication_description = Lens.lens (\CreateApplication' {description} -> description) (\s@CreateApplication' {} a -> s {description = a} :: CreateApplication)++-- | Application tags.+createApplication_tags :: Lens.Lens' CreateApplication (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createApplication_tags = Lens.lens (\CreateApplication' {tags} -> tags) (\s@CreateApplication' {} a -> s {tags = a} :: CreateApplication) Prelude.. Lens.mapping (Data._Sensitive Prelude.. Lens.coerced)++-- | Application name.+createApplication_name :: Lens.Lens' CreateApplication Prelude.Text+createApplication_name = Lens.lens (\CreateApplication' {name} -> name) (\s@CreateApplication' {} a -> s {name = a} :: CreateApplication)++instance Core.AWSRequest CreateApplication where+ type AWSResponse CreateApplication = Application+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ (\s h x -> Data.eitherParseJSON x)++instance Prelude.Hashable CreateApplication where+ hashWithSalt _salt CreateApplication' {..} =+ _salt+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` name++instance Prelude.NFData CreateApplication where+ rnf CreateApplication' {..} =+ Prelude.rnf description+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf name++instance Data.ToHeaders CreateApplication where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateApplication where+ toJSON CreateApplication' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("description" Data..=) Prelude.<$> description,+ ("tags" Data..=) Prelude.<$> tags,+ Prelude.Just ("name" Data..= name)+ ]+ )++instance Data.ToPath CreateApplication where+ toPath = Prelude.const "/CreateApplication"++instance Data.ToQuery CreateApplication where+ toQuery = Prelude.const Prelude.mempty
+ gen/Amazonka/MGN/CreateLaunchConfigurationTemplate.hs view
@@ -0,0 +1,341 @@+{-# 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.MGN.CreateLaunchConfigurationTemplate+-- 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 new Launch Configuration Template.+module Amazonka.MGN.CreateLaunchConfigurationTemplate+ ( -- * Creating a Request+ CreateLaunchConfigurationTemplate (..),+ newCreateLaunchConfigurationTemplate,++ -- * Request Lenses+ createLaunchConfigurationTemplate_associatePublicIpAddress,+ createLaunchConfigurationTemplate_bootMode,+ createLaunchConfigurationTemplate_copyPrivateIp,+ createLaunchConfigurationTemplate_copyTags,+ createLaunchConfigurationTemplate_enableMapAutoTagging,+ createLaunchConfigurationTemplate_largeVolumeConf,+ createLaunchConfigurationTemplate_launchDisposition,+ createLaunchConfigurationTemplate_licensing,+ createLaunchConfigurationTemplate_mapAutoTaggingMpeID,+ createLaunchConfigurationTemplate_postLaunchActions,+ createLaunchConfigurationTemplate_smallVolumeConf,+ createLaunchConfigurationTemplate_smallVolumeMaxSize,+ createLaunchConfigurationTemplate_tags,+ createLaunchConfigurationTemplate_targetInstanceTypeRightSizingMethod,++ -- * Destructuring the Response+ LaunchConfigurationTemplate (..),+ newLaunchConfigurationTemplate,++ -- * Response Lenses+ launchConfigurationTemplate_arn,+ launchConfigurationTemplate_associatePublicIpAddress,+ launchConfigurationTemplate_bootMode,+ launchConfigurationTemplate_copyPrivateIp,+ launchConfigurationTemplate_copyTags,+ launchConfigurationTemplate_ec2LaunchTemplateID,+ launchConfigurationTemplate_enableMapAutoTagging,+ launchConfigurationTemplate_largeVolumeConf,+ launchConfigurationTemplate_launchDisposition,+ launchConfigurationTemplate_licensing,+ launchConfigurationTemplate_mapAutoTaggingMpeID,+ launchConfigurationTemplate_postLaunchActions,+ launchConfigurationTemplate_smallVolumeConf,+ launchConfigurationTemplate_smallVolumeMaxSize,+ launchConfigurationTemplate_tags,+ launchConfigurationTemplate_targetInstanceTypeRightSizingMethod,+ launchConfigurationTemplate_launchConfigurationTemplateID,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateLaunchConfigurationTemplate' smart constructor.+data CreateLaunchConfigurationTemplate = CreateLaunchConfigurationTemplate'+ { -- | Associate public Ip address.+ associatePublicIpAddress :: Prelude.Maybe Prelude.Bool,+ -- | Launch configuration template boot mode.+ bootMode :: Prelude.Maybe BootMode,+ -- | Copy private Ip.+ copyPrivateIp :: Prelude.Maybe Prelude.Bool,+ -- | Copy tags.+ copyTags :: Prelude.Maybe Prelude.Bool,+ -- | Enable map auto tagging.+ enableMapAutoTagging :: Prelude.Maybe Prelude.Bool,+ -- | Large volume config.+ largeVolumeConf :: Prelude.Maybe LaunchTemplateDiskConf,+ -- | Launch disposition.+ launchDisposition :: Prelude.Maybe LaunchDisposition,+ licensing :: Prelude.Maybe Licensing,+ -- | Launch configuration template map auto tagging MPE ID.+ mapAutoTaggingMpeID :: Prelude.Maybe Prelude.Text,+ -- | Launch configuration template post launch actions.+ postLaunchActions :: Prelude.Maybe PostLaunchActions,+ -- | Small volume config.+ smallVolumeConf :: Prelude.Maybe LaunchTemplateDiskConf,+ -- | Small volume maximum size.+ smallVolumeMaxSize :: Prelude.Maybe Prelude.Natural,+ -- | Request to associate tags during creation of a Launch Configuration+ -- Template.+ tags :: Prelude.Maybe (Data.Sensitive (Prelude.HashMap Prelude.Text Prelude.Text)),+ -- | Target instance type right-sizing method.+ targetInstanceTypeRightSizingMethod :: Prelude.Maybe TargetInstanceTypeRightSizingMethod+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateLaunchConfigurationTemplate' 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:+--+-- 'associatePublicIpAddress', 'createLaunchConfigurationTemplate_associatePublicIpAddress' - Associate public Ip address.+--+-- 'bootMode', 'createLaunchConfigurationTemplate_bootMode' - Launch configuration template boot mode.+--+-- 'copyPrivateIp', 'createLaunchConfigurationTemplate_copyPrivateIp' - Copy private Ip.+--+-- 'copyTags', 'createLaunchConfigurationTemplate_copyTags' - Copy tags.+--+-- 'enableMapAutoTagging', 'createLaunchConfigurationTemplate_enableMapAutoTagging' - Enable map auto tagging.+--+-- 'largeVolumeConf', 'createLaunchConfigurationTemplate_largeVolumeConf' - Large volume config.+--+-- 'launchDisposition', 'createLaunchConfigurationTemplate_launchDisposition' - Launch disposition.+--+-- 'licensing', 'createLaunchConfigurationTemplate_licensing' - Undocumented member.+--+-- 'mapAutoTaggingMpeID', 'createLaunchConfigurationTemplate_mapAutoTaggingMpeID' - Launch configuration template map auto tagging MPE ID.+--+-- 'postLaunchActions', 'createLaunchConfigurationTemplate_postLaunchActions' - Launch configuration template post launch actions.+--+-- 'smallVolumeConf', 'createLaunchConfigurationTemplate_smallVolumeConf' - Small volume config.+--+-- 'smallVolumeMaxSize', 'createLaunchConfigurationTemplate_smallVolumeMaxSize' - Small volume maximum size.+--+-- 'tags', 'createLaunchConfigurationTemplate_tags' - Request to associate tags during creation of a Launch Configuration+-- Template.+--+-- 'targetInstanceTypeRightSizingMethod', 'createLaunchConfigurationTemplate_targetInstanceTypeRightSizingMethod' - Target instance type right-sizing method.+newCreateLaunchConfigurationTemplate ::+ CreateLaunchConfigurationTemplate+newCreateLaunchConfigurationTemplate =+ CreateLaunchConfigurationTemplate'+ { associatePublicIpAddress =+ Prelude.Nothing,+ bootMode = Prelude.Nothing,+ copyPrivateIp = Prelude.Nothing,+ copyTags = Prelude.Nothing,+ enableMapAutoTagging = Prelude.Nothing,+ largeVolumeConf = Prelude.Nothing,+ launchDisposition = Prelude.Nothing,+ licensing = Prelude.Nothing,+ mapAutoTaggingMpeID = Prelude.Nothing,+ postLaunchActions = Prelude.Nothing,+ smallVolumeConf = Prelude.Nothing,+ smallVolumeMaxSize = Prelude.Nothing,+ tags = Prelude.Nothing,+ targetInstanceTypeRightSizingMethod =+ Prelude.Nothing+ }++-- | Associate public Ip address.+createLaunchConfigurationTemplate_associatePublicIpAddress :: Lens.Lens' CreateLaunchConfigurationTemplate (Prelude.Maybe Prelude.Bool)+createLaunchConfigurationTemplate_associatePublicIpAddress = Lens.lens (\CreateLaunchConfigurationTemplate' {associatePublicIpAddress} -> associatePublicIpAddress) (\s@CreateLaunchConfigurationTemplate' {} a -> s {associatePublicIpAddress = a} :: CreateLaunchConfigurationTemplate)++-- | Launch configuration template boot mode.+createLaunchConfigurationTemplate_bootMode :: Lens.Lens' CreateLaunchConfigurationTemplate (Prelude.Maybe BootMode)+createLaunchConfigurationTemplate_bootMode = Lens.lens (\CreateLaunchConfigurationTemplate' {bootMode} -> bootMode) (\s@CreateLaunchConfigurationTemplate' {} a -> s {bootMode = a} :: CreateLaunchConfigurationTemplate)++-- | Copy private Ip.+createLaunchConfigurationTemplate_copyPrivateIp :: Lens.Lens' CreateLaunchConfigurationTemplate (Prelude.Maybe Prelude.Bool)+createLaunchConfigurationTemplate_copyPrivateIp = Lens.lens (\CreateLaunchConfigurationTemplate' {copyPrivateIp} -> copyPrivateIp) (\s@CreateLaunchConfigurationTemplate' {} a -> s {copyPrivateIp = a} :: CreateLaunchConfigurationTemplate)++-- | Copy tags.+createLaunchConfigurationTemplate_copyTags :: Lens.Lens' CreateLaunchConfigurationTemplate (Prelude.Maybe Prelude.Bool)+createLaunchConfigurationTemplate_copyTags = Lens.lens (\CreateLaunchConfigurationTemplate' {copyTags} -> copyTags) (\s@CreateLaunchConfigurationTemplate' {} a -> s {copyTags = a} :: CreateLaunchConfigurationTemplate)++-- | Enable map auto tagging.+createLaunchConfigurationTemplate_enableMapAutoTagging :: Lens.Lens' CreateLaunchConfigurationTemplate (Prelude.Maybe Prelude.Bool)+createLaunchConfigurationTemplate_enableMapAutoTagging = Lens.lens (\CreateLaunchConfigurationTemplate' {enableMapAutoTagging} -> enableMapAutoTagging) (\s@CreateLaunchConfigurationTemplate' {} a -> s {enableMapAutoTagging = a} :: CreateLaunchConfigurationTemplate)++-- | Large volume config.+createLaunchConfigurationTemplate_largeVolumeConf :: Lens.Lens' CreateLaunchConfigurationTemplate (Prelude.Maybe LaunchTemplateDiskConf)+createLaunchConfigurationTemplate_largeVolumeConf = Lens.lens (\CreateLaunchConfigurationTemplate' {largeVolumeConf} -> largeVolumeConf) (\s@CreateLaunchConfigurationTemplate' {} a -> s {largeVolumeConf = a} :: CreateLaunchConfigurationTemplate)++-- | Launch disposition.+createLaunchConfigurationTemplate_launchDisposition :: Lens.Lens' CreateLaunchConfigurationTemplate (Prelude.Maybe LaunchDisposition)+createLaunchConfigurationTemplate_launchDisposition = Lens.lens (\CreateLaunchConfigurationTemplate' {launchDisposition} -> launchDisposition) (\s@CreateLaunchConfigurationTemplate' {} a -> s {launchDisposition = a} :: CreateLaunchConfigurationTemplate)++-- | Undocumented member.+createLaunchConfigurationTemplate_licensing :: Lens.Lens' CreateLaunchConfigurationTemplate (Prelude.Maybe Licensing)+createLaunchConfigurationTemplate_licensing = Lens.lens (\CreateLaunchConfigurationTemplate' {licensing} -> licensing) (\s@CreateLaunchConfigurationTemplate' {} a -> s {licensing = a} :: CreateLaunchConfigurationTemplate)++-- | Launch configuration template map auto tagging MPE ID.+createLaunchConfigurationTemplate_mapAutoTaggingMpeID :: Lens.Lens' CreateLaunchConfigurationTemplate (Prelude.Maybe Prelude.Text)+createLaunchConfigurationTemplate_mapAutoTaggingMpeID = Lens.lens (\CreateLaunchConfigurationTemplate' {mapAutoTaggingMpeID} -> mapAutoTaggingMpeID) (\s@CreateLaunchConfigurationTemplate' {} a -> s {mapAutoTaggingMpeID = a} :: CreateLaunchConfigurationTemplate)++-- | Launch configuration template post launch actions.+createLaunchConfigurationTemplate_postLaunchActions :: Lens.Lens' CreateLaunchConfigurationTemplate (Prelude.Maybe PostLaunchActions)+createLaunchConfigurationTemplate_postLaunchActions = Lens.lens (\CreateLaunchConfigurationTemplate' {postLaunchActions} -> postLaunchActions) (\s@CreateLaunchConfigurationTemplate' {} a -> s {postLaunchActions = a} :: CreateLaunchConfigurationTemplate)++-- | Small volume config.+createLaunchConfigurationTemplate_smallVolumeConf :: Lens.Lens' CreateLaunchConfigurationTemplate (Prelude.Maybe LaunchTemplateDiskConf)+createLaunchConfigurationTemplate_smallVolumeConf = Lens.lens (\CreateLaunchConfigurationTemplate' {smallVolumeConf} -> smallVolumeConf) (\s@CreateLaunchConfigurationTemplate' {} a -> s {smallVolumeConf = a} :: CreateLaunchConfigurationTemplate)++-- | Small volume maximum size.+createLaunchConfigurationTemplate_smallVolumeMaxSize :: Lens.Lens' CreateLaunchConfigurationTemplate (Prelude.Maybe Prelude.Natural)+createLaunchConfigurationTemplate_smallVolumeMaxSize = Lens.lens (\CreateLaunchConfigurationTemplate' {smallVolumeMaxSize} -> smallVolumeMaxSize) (\s@CreateLaunchConfigurationTemplate' {} a -> s {smallVolumeMaxSize = a} :: CreateLaunchConfigurationTemplate)++-- | Request to associate tags during creation of a Launch Configuration+-- Template.+createLaunchConfigurationTemplate_tags :: Lens.Lens' CreateLaunchConfigurationTemplate (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createLaunchConfigurationTemplate_tags = Lens.lens (\CreateLaunchConfigurationTemplate' {tags} -> tags) (\s@CreateLaunchConfigurationTemplate' {} a -> s {tags = a} :: CreateLaunchConfigurationTemplate) Prelude.. Lens.mapping (Data._Sensitive Prelude.. Lens.coerced)++-- | Target instance type right-sizing method.+createLaunchConfigurationTemplate_targetInstanceTypeRightSizingMethod :: Lens.Lens' CreateLaunchConfigurationTemplate (Prelude.Maybe TargetInstanceTypeRightSizingMethod)+createLaunchConfigurationTemplate_targetInstanceTypeRightSizingMethod = Lens.lens (\CreateLaunchConfigurationTemplate' {targetInstanceTypeRightSizingMethod} -> targetInstanceTypeRightSizingMethod) (\s@CreateLaunchConfigurationTemplate' {} a -> s {targetInstanceTypeRightSizingMethod = a} :: CreateLaunchConfigurationTemplate)++instance+ Core.AWSRequest+ CreateLaunchConfigurationTemplate+ where+ type+ AWSResponse CreateLaunchConfigurationTemplate =+ LaunchConfigurationTemplate+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ (\s h x -> Data.eitherParseJSON x)++instance+ Prelude.Hashable+ CreateLaunchConfigurationTemplate+ where+ hashWithSalt+ _salt+ CreateLaunchConfigurationTemplate' {..} =+ _salt+ `Prelude.hashWithSalt` associatePublicIpAddress+ `Prelude.hashWithSalt` bootMode+ `Prelude.hashWithSalt` copyPrivateIp+ `Prelude.hashWithSalt` copyTags+ `Prelude.hashWithSalt` enableMapAutoTagging+ `Prelude.hashWithSalt` largeVolumeConf+ `Prelude.hashWithSalt` launchDisposition+ `Prelude.hashWithSalt` licensing+ `Prelude.hashWithSalt` mapAutoTaggingMpeID+ `Prelude.hashWithSalt` postLaunchActions+ `Prelude.hashWithSalt` smallVolumeConf+ `Prelude.hashWithSalt` smallVolumeMaxSize+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` targetInstanceTypeRightSizingMethod++instance+ Prelude.NFData+ CreateLaunchConfigurationTemplate+ where+ rnf CreateLaunchConfigurationTemplate' {..} =+ Prelude.rnf associatePublicIpAddress+ `Prelude.seq` Prelude.rnf bootMode+ `Prelude.seq` Prelude.rnf copyPrivateIp+ `Prelude.seq` Prelude.rnf copyTags+ `Prelude.seq` Prelude.rnf enableMapAutoTagging+ `Prelude.seq` Prelude.rnf largeVolumeConf+ `Prelude.seq` Prelude.rnf launchDisposition+ `Prelude.seq` Prelude.rnf licensing+ `Prelude.seq` Prelude.rnf mapAutoTaggingMpeID+ `Prelude.seq` Prelude.rnf postLaunchActions+ `Prelude.seq` Prelude.rnf smallVolumeConf+ `Prelude.seq` Prelude.rnf smallVolumeMaxSize+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf+ targetInstanceTypeRightSizingMethod++instance+ Data.ToHeaders+ CreateLaunchConfigurationTemplate+ where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance+ Data.ToJSON+ CreateLaunchConfigurationTemplate+ where+ toJSON CreateLaunchConfigurationTemplate' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("associatePublicIpAddress" Data..=)+ Prelude.<$> associatePublicIpAddress,+ ("bootMode" Data..=) Prelude.<$> bootMode,+ ("copyPrivateIp" Data..=) Prelude.<$> copyPrivateIp,+ ("copyTags" Data..=) Prelude.<$> copyTags,+ ("enableMapAutoTagging" Data..=)+ Prelude.<$> enableMapAutoTagging,+ ("largeVolumeConf" Data..=)+ Prelude.<$> largeVolumeConf,+ ("launchDisposition" Data..=)+ Prelude.<$> launchDisposition,+ ("licensing" Data..=) Prelude.<$> licensing,+ ("mapAutoTaggingMpeID" Data..=)+ Prelude.<$> mapAutoTaggingMpeID,+ ("postLaunchActions" Data..=)+ Prelude.<$> postLaunchActions,+ ("smallVolumeConf" Data..=)+ Prelude.<$> smallVolumeConf,+ ("smallVolumeMaxSize" Data..=)+ Prelude.<$> smallVolumeMaxSize,+ ("tags" Data..=) Prelude.<$> tags,+ ("targetInstanceTypeRightSizingMethod" Data..=)+ Prelude.<$> targetInstanceTypeRightSizingMethod+ ]+ )++instance+ Data.ToPath+ CreateLaunchConfigurationTemplate+ where+ toPath =+ Prelude.const "/CreateLaunchConfigurationTemplate"++instance+ Data.ToQuery+ CreateLaunchConfigurationTemplate+ where+ toQuery = Prelude.const Prelude.mempty
+ gen/Amazonka/MGN/CreateReplicationConfigurationTemplate.hs view
@@ -0,0 +1,407 @@+{-# 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.MGN.CreateReplicationConfigurationTemplate+-- 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 new ReplicationConfigurationTemplate.+module Amazonka.MGN.CreateReplicationConfigurationTemplate+ ( -- * Creating a Request+ CreateReplicationConfigurationTemplate (..),+ newCreateReplicationConfigurationTemplate,++ -- * Request Lenses+ createReplicationConfigurationTemplate_ebsEncryptionKeyArn,+ createReplicationConfigurationTemplate_tags,+ createReplicationConfigurationTemplate_associateDefaultSecurityGroup,+ createReplicationConfigurationTemplate_bandwidthThrottling,+ createReplicationConfigurationTemplate_createPublicIP,+ createReplicationConfigurationTemplate_dataPlaneRouting,+ createReplicationConfigurationTemplate_defaultLargeStagingDiskType,+ createReplicationConfigurationTemplate_ebsEncryption,+ createReplicationConfigurationTemplate_replicationServerInstanceType,+ createReplicationConfigurationTemplate_replicationServersSecurityGroupsIDs,+ createReplicationConfigurationTemplate_stagingAreaSubnetId,+ createReplicationConfigurationTemplate_stagingAreaTags,+ createReplicationConfigurationTemplate_useDedicatedReplicationServer,++ -- * Destructuring the Response+ ReplicationConfigurationTemplate (..),+ newReplicationConfigurationTemplate,++ -- * Response Lenses+ replicationConfigurationTemplate_arn,+ replicationConfigurationTemplate_associateDefaultSecurityGroup,+ replicationConfigurationTemplate_bandwidthThrottling,+ replicationConfigurationTemplate_createPublicIP,+ replicationConfigurationTemplate_dataPlaneRouting,+ replicationConfigurationTemplate_defaultLargeStagingDiskType,+ replicationConfigurationTemplate_ebsEncryption,+ replicationConfigurationTemplate_ebsEncryptionKeyArn,+ replicationConfigurationTemplate_replicationServerInstanceType,+ replicationConfigurationTemplate_replicationServersSecurityGroupsIDs,+ replicationConfigurationTemplate_stagingAreaSubnetId,+ replicationConfigurationTemplate_stagingAreaTags,+ replicationConfigurationTemplate_tags,+ replicationConfigurationTemplate_useDedicatedReplicationServer,+ replicationConfigurationTemplate_replicationConfigurationTemplateID,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateReplicationConfigurationTemplate' smart constructor.+data CreateReplicationConfigurationTemplate = CreateReplicationConfigurationTemplate'+ { -- | Request to configure an EBS encryption key during Replication Settings+ -- template creation.+ ebsEncryptionKeyArn :: Prelude.Maybe Prelude.Text,+ -- | Request to configure tags during Replication Settings template creation.+ tags :: Prelude.Maybe (Data.Sensitive (Prelude.HashMap Prelude.Text Prelude.Text)),+ -- | Request to associate the default Application Migration Service Security+ -- group with the Replication Settings template.+ associateDefaultSecurityGroup :: Prelude.Bool,+ -- | Request to configure bandwidth throttling during Replication Settings+ -- template creation.+ bandwidthThrottling :: Prelude.Natural,+ -- | Request to create Public IP during Replication Settings template+ -- creation.+ createPublicIP :: Prelude.Bool,+ -- | Request to configure data plane routing during Replication Settings+ -- template creation.+ dataPlaneRouting :: ReplicationConfigurationDataPlaneRouting,+ -- | Request to configure the default large staging disk EBS volume type+ -- during Replication Settings template creation.+ defaultLargeStagingDiskType :: ReplicationConfigurationDefaultLargeStagingDiskType,+ -- | Request to configure EBS encryption during Replication Settings template+ -- creation.+ ebsEncryption :: ReplicationConfigurationEbsEncryption,+ -- | Request to configure the Replication Server instance type during+ -- Replication Settings template creation.+ replicationServerInstanceType :: Prelude.Text,+ -- | Request to configure the Replication Server Security group ID during+ -- Replication Settings template creation.+ replicationServersSecurityGroupsIDs :: [Prelude.Text],+ -- | Request to configure the Staging Area subnet ID during Replication+ -- Settings template creation.+ stagingAreaSubnetId :: Prelude.Text,+ -- | Request to configure Staging Area tags during Replication Settings+ -- template creation.+ stagingAreaTags :: Data.Sensitive (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | Request to use Dedicated Replication Servers during Replication Settings+ -- template creation.+ useDedicatedReplicationServer :: Prelude.Bool+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateReplicationConfigurationTemplate' 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:+--+-- 'ebsEncryptionKeyArn', 'createReplicationConfigurationTemplate_ebsEncryptionKeyArn' - Request to configure an EBS encryption key during Replication Settings+-- template creation.+--+-- 'tags', 'createReplicationConfigurationTemplate_tags' - Request to configure tags during Replication Settings template creation.+--+-- 'associateDefaultSecurityGroup', 'createReplicationConfigurationTemplate_associateDefaultSecurityGroup' - Request to associate the default Application Migration Service Security+-- group with the Replication Settings template.+--+-- 'bandwidthThrottling', 'createReplicationConfigurationTemplate_bandwidthThrottling' - Request to configure bandwidth throttling during Replication Settings+-- template creation.+--+-- 'createPublicIP', 'createReplicationConfigurationTemplate_createPublicIP' - Request to create Public IP during Replication Settings template+-- creation.+--+-- 'dataPlaneRouting', 'createReplicationConfigurationTemplate_dataPlaneRouting' - Request to configure data plane routing during Replication Settings+-- template creation.+--+-- 'defaultLargeStagingDiskType', 'createReplicationConfigurationTemplate_defaultLargeStagingDiskType' - Request to configure the default large staging disk EBS volume type+-- during Replication Settings template creation.+--+-- 'ebsEncryption', 'createReplicationConfigurationTemplate_ebsEncryption' - Request to configure EBS encryption during Replication Settings template+-- creation.+--+-- 'replicationServerInstanceType', 'createReplicationConfigurationTemplate_replicationServerInstanceType' - Request to configure the Replication Server instance type during+-- Replication Settings template creation.+--+-- 'replicationServersSecurityGroupsIDs', 'createReplicationConfigurationTemplate_replicationServersSecurityGroupsIDs' - Request to configure the Replication Server Security group ID during+-- Replication Settings template creation.+--+-- 'stagingAreaSubnetId', 'createReplicationConfigurationTemplate_stagingAreaSubnetId' - Request to configure the Staging Area subnet ID during Replication+-- Settings template creation.+--+-- 'stagingAreaTags', 'createReplicationConfigurationTemplate_stagingAreaTags' - Request to configure Staging Area tags during Replication Settings+-- template creation.+--+-- 'useDedicatedReplicationServer', 'createReplicationConfigurationTemplate_useDedicatedReplicationServer' - Request to use Dedicated Replication Servers during Replication Settings+-- template creation.+newCreateReplicationConfigurationTemplate ::+ -- | 'associateDefaultSecurityGroup'+ Prelude.Bool ->+ -- | 'bandwidthThrottling'+ Prelude.Natural ->+ -- | 'createPublicIP'+ Prelude.Bool ->+ -- | 'dataPlaneRouting'+ ReplicationConfigurationDataPlaneRouting ->+ -- | 'defaultLargeStagingDiskType'+ ReplicationConfigurationDefaultLargeStagingDiskType ->+ -- | 'ebsEncryption'+ ReplicationConfigurationEbsEncryption ->+ -- | 'replicationServerInstanceType'+ Prelude.Text ->+ -- | 'stagingAreaSubnetId'+ Prelude.Text ->+ -- | 'useDedicatedReplicationServer'+ Prelude.Bool ->+ CreateReplicationConfigurationTemplate+newCreateReplicationConfigurationTemplate+ pAssociateDefaultSecurityGroup_+ pBandwidthThrottling_+ pCreatePublicIP_+ pDataPlaneRouting_+ pDefaultLargeStagingDiskType_+ pEbsEncryption_+ pReplicationServerInstanceType_+ pStagingAreaSubnetId_+ pUseDedicatedReplicationServer_ =+ CreateReplicationConfigurationTemplate'+ { ebsEncryptionKeyArn =+ Prelude.Nothing,+ tags = Prelude.Nothing,+ associateDefaultSecurityGroup =+ pAssociateDefaultSecurityGroup_,+ bandwidthThrottling =+ pBandwidthThrottling_,+ createPublicIP = pCreatePublicIP_,+ dataPlaneRouting =+ pDataPlaneRouting_,+ defaultLargeStagingDiskType =+ pDefaultLargeStagingDiskType_,+ ebsEncryption = pEbsEncryption_,+ replicationServerInstanceType =+ pReplicationServerInstanceType_,+ replicationServersSecurityGroupsIDs =+ Prelude.mempty,+ stagingAreaSubnetId =+ pStagingAreaSubnetId_,+ stagingAreaTags = Prelude.mempty,+ useDedicatedReplicationServer =+ pUseDedicatedReplicationServer_+ }++-- | Request to configure an EBS encryption key during Replication Settings+-- template creation.+createReplicationConfigurationTemplate_ebsEncryptionKeyArn :: Lens.Lens' CreateReplicationConfigurationTemplate (Prelude.Maybe Prelude.Text)+createReplicationConfigurationTemplate_ebsEncryptionKeyArn = Lens.lens (\CreateReplicationConfigurationTemplate' {ebsEncryptionKeyArn} -> ebsEncryptionKeyArn) (\s@CreateReplicationConfigurationTemplate' {} a -> s {ebsEncryptionKeyArn = a} :: CreateReplicationConfigurationTemplate)++-- | Request to configure tags during Replication Settings template creation.+createReplicationConfigurationTemplate_tags :: Lens.Lens' CreateReplicationConfigurationTemplate (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createReplicationConfigurationTemplate_tags = Lens.lens (\CreateReplicationConfigurationTemplate' {tags} -> tags) (\s@CreateReplicationConfigurationTemplate' {} a -> s {tags = a} :: CreateReplicationConfigurationTemplate) Prelude.. Lens.mapping (Data._Sensitive Prelude.. Lens.coerced)++-- | Request to associate the default Application Migration Service Security+-- group with the Replication Settings template.+createReplicationConfigurationTemplate_associateDefaultSecurityGroup :: Lens.Lens' CreateReplicationConfigurationTemplate Prelude.Bool+createReplicationConfigurationTemplate_associateDefaultSecurityGroup = Lens.lens (\CreateReplicationConfigurationTemplate' {associateDefaultSecurityGroup} -> associateDefaultSecurityGroup) (\s@CreateReplicationConfigurationTemplate' {} a -> s {associateDefaultSecurityGroup = a} :: CreateReplicationConfigurationTemplate)++-- | Request to configure bandwidth throttling during Replication Settings+-- template creation.+createReplicationConfigurationTemplate_bandwidthThrottling :: Lens.Lens' CreateReplicationConfigurationTemplate Prelude.Natural+createReplicationConfigurationTemplate_bandwidthThrottling = Lens.lens (\CreateReplicationConfigurationTemplate' {bandwidthThrottling} -> bandwidthThrottling) (\s@CreateReplicationConfigurationTemplate' {} a -> s {bandwidthThrottling = a} :: CreateReplicationConfigurationTemplate)++-- | Request to create Public IP during Replication Settings template+-- creation.+createReplicationConfigurationTemplate_createPublicIP :: Lens.Lens' CreateReplicationConfigurationTemplate Prelude.Bool+createReplicationConfigurationTemplate_createPublicIP = Lens.lens (\CreateReplicationConfigurationTemplate' {createPublicIP} -> createPublicIP) (\s@CreateReplicationConfigurationTemplate' {} a -> s {createPublicIP = a} :: CreateReplicationConfigurationTemplate)++-- | Request to configure data plane routing during Replication Settings+-- template creation.+createReplicationConfigurationTemplate_dataPlaneRouting :: Lens.Lens' CreateReplicationConfigurationTemplate ReplicationConfigurationDataPlaneRouting+createReplicationConfigurationTemplate_dataPlaneRouting = Lens.lens (\CreateReplicationConfigurationTemplate' {dataPlaneRouting} -> dataPlaneRouting) (\s@CreateReplicationConfigurationTemplate' {} a -> s {dataPlaneRouting = a} :: CreateReplicationConfigurationTemplate)++-- | Request to configure the default large staging disk EBS volume type+-- during Replication Settings template creation.+createReplicationConfigurationTemplate_defaultLargeStagingDiskType :: Lens.Lens' CreateReplicationConfigurationTemplate ReplicationConfigurationDefaultLargeStagingDiskType+createReplicationConfigurationTemplate_defaultLargeStagingDiskType = Lens.lens (\CreateReplicationConfigurationTemplate' {defaultLargeStagingDiskType} -> defaultLargeStagingDiskType) (\s@CreateReplicationConfigurationTemplate' {} a -> s {defaultLargeStagingDiskType = a} :: CreateReplicationConfigurationTemplate)++-- | Request to configure EBS encryption during Replication Settings template+-- creation.+createReplicationConfigurationTemplate_ebsEncryption :: Lens.Lens' CreateReplicationConfigurationTemplate ReplicationConfigurationEbsEncryption+createReplicationConfigurationTemplate_ebsEncryption = Lens.lens (\CreateReplicationConfigurationTemplate' {ebsEncryption} -> ebsEncryption) (\s@CreateReplicationConfigurationTemplate' {} a -> s {ebsEncryption = a} :: CreateReplicationConfigurationTemplate)++-- | Request to configure the Replication Server instance type during+-- Replication Settings template creation.+createReplicationConfigurationTemplate_replicationServerInstanceType :: Lens.Lens' CreateReplicationConfigurationTemplate Prelude.Text+createReplicationConfigurationTemplate_replicationServerInstanceType = Lens.lens (\CreateReplicationConfigurationTemplate' {replicationServerInstanceType} -> replicationServerInstanceType) (\s@CreateReplicationConfigurationTemplate' {} a -> s {replicationServerInstanceType = a} :: CreateReplicationConfigurationTemplate)++-- | Request to configure the Replication Server Security group ID during+-- Replication Settings template creation.+createReplicationConfigurationTemplate_replicationServersSecurityGroupsIDs :: Lens.Lens' CreateReplicationConfigurationTemplate [Prelude.Text]+createReplicationConfigurationTemplate_replicationServersSecurityGroupsIDs = Lens.lens (\CreateReplicationConfigurationTemplate' {replicationServersSecurityGroupsIDs} -> replicationServersSecurityGroupsIDs) (\s@CreateReplicationConfigurationTemplate' {} a -> s {replicationServersSecurityGroupsIDs = a} :: CreateReplicationConfigurationTemplate) Prelude.. Lens.coerced++-- | Request to configure the Staging Area subnet ID during Replication+-- Settings template creation.+createReplicationConfigurationTemplate_stagingAreaSubnetId :: Lens.Lens' CreateReplicationConfigurationTemplate Prelude.Text+createReplicationConfigurationTemplate_stagingAreaSubnetId = Lens.lens (\CreateReplicationConfigurationTemplate' {stagingAreaSubnetId} -> stagingAreaSubnetId) (\s@CreateReplicationConfigurationTemplate' {} a -> s {stagingAreaSubnetId = a} :: CreateReplicationConfigurationTemplate)++-- | Request to configure Staging Area tags during Replication Settings+-- template creation.+createReplicationConfigurationTemplate_stagingAreaTags :: Lens.Lens' CreateReplicationConfigurationTemplate (Prelude.HashMap Prelude.Text Prelude.Text)+createReplicationConfigurationTemplate_stagingAreaTags = Lens.lens (\CreateReplicationConfigurationTemplate' {stagingAreaTags} -> stagingAreaTags) (\s@CreateReplicationConfigurationTemplate' {} a -> s {stagingAreaTags = a} :: CreateReplicationConfigurationTemplate) Prelude.. Data._Sensitive Prelude.. Lens.coerced++-- | Request to use Dedicated Replication Servers during Replication Settings+-- template creation.+createReplicationConfigurationTemplate_useDedicatedReplicationServer :: Lens.Lens' CreateReplicationConfigurationTemplate Prelude.Bool+createReplicationConfigurationTemplate_useDedicatedReplicationServer = Lens.lens (\CreateReplicationConfigurationTemplate' {useDedicatedReplicationServer} -> useDedicatedReplicationServer) (\s@CreateReplicationConfigurationTemplate' {} a -> s {useDedicatedReplicationServer = a} :: CreateReplicationConfigurationTemplate)++instance+ Core.AWSRequest+ CreateReplicationConfigurationTemplate+ where+ type+ AWSResponse+ CreateReplicationConfigurationTemplate =+ ReplicationConfigurationTemplate+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ (\s h x -> Data.eitherParseJSON x)++instance+ Prelude.Hashable+ CreateReplicationConfigurationTemplate+ where+ hashWithSalt+ _salt+ CreateReplicationConfigurationTemplate' {..} =+ _salt+ `Prelude.hashWithSalt` ebsEncryptionKeyArn+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` associateDefaultSecurityGroup+ `Prelude.hashWithSalt` bandwidthThrottling+ `Prelude.hashWithSalt` createPublicIP+ `Prelude.hashWithSalt` dataPlaneRouting+ `Prelude.hashWithSalt` defaultLargeStagingDiskType+ `Prelude.hashWithSalt` ebsEncryption+ `Prelude.hashWithSalt` replicationServerInstanceType+ `Prelude.hashWithSalt` replicationServersSecurityGroupsIDs+ `Prelude.hashWithSalt` stagingAreaSubnetId+ `Prelude.hashWithSalt` stagingAreaTags+ `Prelude.hashWithSalt` useDedicatedReplicationServer++instance+ Prelude.NFData+ CreateReplicationConfigurationTemplate+ where+ rnf CreateReplicationConfigurationTemplate' {..} =+ Prelude.rnf ebsEncryptionKeyArn+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf associateDefaultSecurityGroup+ `Prelude.seq` Prelude.rnf bandwidthThrottling+ `Prelude.seq` Prelude.rnf createPublicIP+ `Prelude.seq` Prelude.rnf dataPlaneRouting+ `Prelude.seq` Prelude.rnf defaultLargeStagingDiskType+ `Prelude.seq` Prelude.rnf ebsEncryption+ `Prelude.seq` Prelude.rnf replicationServerInstanceType+ `Prelude.seq` Prelude.rnf replicationServersSecurityGroupsIDs+ `Prelude.seq` Prelude.rnf stagingAreaSubnetId+ `Prelude.seq` Prelude.rnf stagingAreaTags+ `Prelude.seq` Prelude.rnf useDedicatedReplicationServer++instance+ Data.ToHeaders+ CreateReplicationConfigurationTemplate+ where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance+ Data.ToJSON+ CreateReplicationConfigurationTemplate+ where+ toJSON CreateReplicationConfigurationTemplate' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("ebsEncryptionKeyArn" Data..=)+ Prelude.<$> ebsEncryptionKeyArn,+ ("tags" Data..=) Prelude.<$> tags,+ Prelude.Just+ ( "associateDefaultSecurityGroup"+ Data..= associateDefaultSecurityGroup+ ),+ Prelude.Just+ ("bandwidthThrottling" Data..= bandwidthThrottling),+ Prelude.Just+ ("createPublicIP" Data..= createPublicIP),+ Prelude.Just+ ("dataPlaneRouting" Data..= dataPlaneRouting),+ Prelude.Just+ ( "defaultLargeStagingDiskType"+ Data..= defaultLargeStagingDiskType+ ),+ Prelude.Just ("ebsEncryption" Data..= ebsEncryption),+ Prelude.Just+ ( "replicationServerInstanceType"+ Data..= replicationServerInstanceType+ ),+ Prelude.Just+ ( "replicationServersSecurityGroupsIDs"+ Data..= replicationServersSecurityGroupsIDs+ ),+ Prelude.Just+ ("stagingAreaSubnetId" Data..= stagingAreaSubnetId),+ Prelude.Just+ ("stagingAreaTags" Data..= stagingAreaTags),+ Prelude.Just+ ( "useDedicatedReplicationServer"+ Data..= useDedicatedReplicationServer+ )+ ]+ )++instance+ Data.ToPath+ CreateReplicationConfigurationTemplate+ where+ toPath =+ Prelude.const+ "/CreateReplicationConfigurationTemplate"++instance+ Data.ToQuery+ CreateReplicationConfigurationTemplate+ where+ toQuery = Prelude.const Prelude.mempty
+ gen/Amazonka/MGN/CreateWave.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.MGN.CreateWave+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Create wave.+module Amazonka.MGN.CreateWave+ ( -- * Creating a Request+ CreateWave (..),+ newCreateWave,++ -- * Request Lenses+ createWave_description,+ createWave_tags,+ createWave_name,++ -- * Destructuring the Response+ Wave (..),+ newWave,++ -- * Response Lenses+ wave_arn,+ wave_creationDateTime,+ wave_description,+ wave_isArchived,+ wave_lastModifiedDateTime,+ wave_name,+ wave_tags,+ wave_waveAggregatedStatus,+ wave_waveID,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateWave' smart constructor.+data CreateWave = CreateWave'+ { -- | Wave description.+ description :: Prelude.Maybe Prelude.Text,+ -- | Wave tags.+ tags :: Prelude.Maybe (Data.Sensitive (Prelude.HashMap Prelude.Text Prelude.Text)),+ -- | Wave name.+ name :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateWave' 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:+--+-- 'description', 'createWave_description' - Wave description.+--+-- 'tags', 'createWave_tags' - Wave tags.+--+-- 'name', 'createWave_name' - Wave name.+newCreateWave ::+ -- | 'name'+ Prelude.Text ->+ CreateWave+newCreateWave pName_ =+ CreateWave'+ { description = Prelude.Nothing,+ tags = Prelude.Nothing,+ name = pName_+ }++-- | Wave description.+createWave_description :: Lens.Lens' CreateWave (Prelude.Maybe Prelude.Text)+createWave_description = Lens.lens (\CreateWave' {description} -> description) (\s@CreateWave' {} a -> s {description = a} :: CreateWave)++-- | Wave tags.+createWave_tags :: Lens.Lens' CreateWave (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createWave_tags = Lens.lens (\CreateWave' {tags} -> tags) (\s@CreateWave' {} a -> s {tags = a} :: CreateWave) Prelude.. Lens.mapping (Data._Sensitive Prelude.. Lens.coerced)++-- | Wave name.+createWave_name :: Lens.Lens' CreateWave Prelude.Text+createWave_name = Lens.lens (\CreateWave' {name} -> name) (\s@CreateWave' {} a -> s {name = a} :: CreateWave)++instance Core.AWSRequest CreateWave where+ type AWSResponse CreateWave = Wave+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ (\s h x -> Data.eitherParseJSON x)++instance Prelude.Hashable CreateWave where+ hashWithSalt _salt CreateWave' {..} =+ _salt+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` name++instance Prelude.NFData CreateWave where+ rnf CreateWave' {..} =+ Prelude.rnf description+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf name++instance Data.ToHeaders CreateWave where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateWave where+ toJSON CreateWave' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("description" Data..=) Prelude.<$> description,+ ("tags" Data..=) Prelude.<$> tags,+ Prelude.Just ("name" Data..= name)+ ]+ )++instance Data.ToPath CreateWave where+ toPath = Prelude.const "/CreateWave"++instance Data.ToQuery CreateWave where+ toQuery = Prelude.const Prelude.mempty
+ gen/Amazonka/MGN/DeleteApplication.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.MGN.DeleteApplication+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Delete application.+module Amazonka.MGN.DeleteApplication+ ( -- * Creating a Request+ DeleteApplication (..),+ newDeleteApplication,++ -- * Request Lenses+ deleteApplication_applicationID,++ -- * Destructuring the Response+ DeleteApplicationResponse (..),+ newDeleteApplicationResponse,++ -- * Response Lenses+ deleteApplicationResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteApplication' smart constructor.+data DeleteApplication = DeleteApplication'+ { -- | Application ID.+ applicationID :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteApplication' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationID', 'deleteApplication_applicationID' - Application ID.+newDeleteApplication ::+ -- | 'applicationID'+ Prelude.Text ->+ DeleteApplication+newDeleteApplication pApplicationID_ =+ DeleteApplication' {applicationID = pApplicationID_}++-- | Application ID.+deleteApplication_applicationID :: Lens.Lens' DeleteApplication Prelude.Text+deleteApplication_applicationID = Lens.lens (\DeleteApplication' {applicationID} -> applicationID) (\s@DeleteApplication' {} a -> s {applicationID = a} :: DeleteApplication)++instance Core.AWSRequest DeleteApplication where+ type+ AWSResponse DeleteApplication =+ DeleteApplicationResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ DeleteApplicationResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DeleteApplication where+ hashWithSalt _salt DeleteApplication' {..} =+ _salt `Prelude.hashWithSalt` applicationID++instance Prelude.NFData DeleteApplication where+ rnf DeleteApplication' {..} =+ Prelude.rnf applicationID++instance Data.ToHeaders DeleteApplication where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON DeleteApplication where+ toJSON DeleteApplication' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("applicationID" Data..= applicationID)+ ]+ )++instance Data.ToPath DeleteApplication where+ toPath = Prelude.const "/DeleteApplication"++instance Data.ToQuery DeleteApplication where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteApplicationResponse' smart constructor.+data DeleteApplicationResponse = DeleteApplicationResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteApplicationResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'deleteApplicationResponse_httpStatus' - The response's http status code.+newDeleteApplicationResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeleteApplicationResponse+newDeleteApplicationResponse pHttpStatus_ =+ DeleteApplicationResponse'+ { httpStatus =+ pHttpStatus_+ }++-- | The response's http status code.+deleteApplicationResponse_httpStatus :: Lens.Lens' DeleteApplicationResponse Prelude.Int+deleteApplicationResponse_httpStatus = Lens.lens (\DeleteApplicationResponse' {httpStatus} -> httpStatus) (\s@DeleteApplicationResponse' {} a -> s {httpStatus = a} :: DeleteApplicationResponse)++instance Prelude.NFData DeleteApplicationResponse where+ rnf DeleteApplicationResponse' {..} =+ Prelude.rnf httpStatus
+ gen/Amazonka/MGN/DeleteJob.hs view
@@ -0,0 +1,145 @@+{-# 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.MGN.DeleteJob+-- 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 single Job by ID.+module Amazonka.MGN.DeleteJob+ ( -- * Creating a Request+ DeleteJob (..),+ newDeleteJob,++ -- * Request Lenses+ deleteJob_jobID,++ -- * Destructuring the Response+ DeleteJobResponse (..),+ newDeleteJobResponse,++ -- * Response Lenses+ deleteJobResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteJob' smart constructor.+data DeleteJob = DeleteJob'+ { -- | Request to delete Job from service by Job ID.+ jobID :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteJob' 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:+--+-- 'jobID', 'deleteJob_jobID' - Request to delete Job from service by Job ID.+newDeleteJob ::+ -- | 'jobID'+ Prelude.Text ->+ DeleteJob+newDeleteJob pJobID_ = DeleteJob' {jobID = pJobID_}++-- | Request to delete Job from service by Job ID.+deleteJob_jobID :: Lens.Lens' DeleteJob Prelude.Text+deleteJob_jobID = Lens.lens (\DeleteJob' {jobID} -> jobID) (\s@DeleteJob' {} a -> s {jobID = a} :: DeleteJob)++instance Core.AWSRequest DeleteJob where+ type AWSResponse DeleteJob = DeleteJobResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ DeleteJobResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DeleteJob where+ hashWithSalt _salt DeleteJob' {..} =+ _salt `Prelude.hashWithSalt` jobID++instance Prelude.NFData DeleteJob where+ rnf DeleteJob' {..} = Prelude.rnf jobID++instance Data.ToHeaders DeleteJob where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON DeleteJob where+ toJSON DeleteJob' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("jobID" Data..= jobID)]+ )++instance Data.ToPath DeleteJob where+ toPath = Prelude.const "/DeleteJob"++instance Data.ToQuery DeleteJob where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteJobResponse' smart constructor.+data DeleteJobResponse = DeleteJobResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteJobResponse' 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', 'deleteJobResponse_httpStatus' - The response's http status code.+newDeleteJobResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeleteJobResponse+newDeleteJobResponse pHttpStatus_ =+ DeleteJobResponse' {httpStatus = pHttpStatus_}++-- | The response's http status code.+deleteJobResponse_httpStatus :: Lens.Lens' DeleteJobResponse Prelude.Int+deleteJobResponse_httpStatus = Lens.lens (\DeleteJobResponse' {httpStatus} -> httpStatus) (\s@DeleteJobResponse' {} a -> s {httpStatus = a} :: DeleteJobResponse)++instance Prelude.NFData DeleteJobResponse where+ rnf DeleteJobResponse' {..} = Prelude.rnf httpStatus
+ gen/Amazonka/MGN/DeleteLaunchConfigurationTemplate.hs view
@@ -0,0 +1,190 @@+{-# 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.MGN.DeleteLaunchConfigurationTemplate+-- 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 single Launch Configuration Template by ID.+module Amazonka.MGN.DeleteLaunchConfigurationTemplate+ ( -- * Creating a Request+ DeleteLaunchConfigurationTemplate (..),+ newDeleteLaunchConfigurationTemplate,++ -- * Request Lenses+ deleteLaunchConfigurationTemplate_launchConfigurationTemplateID,++ -- * Destructuring the Response+ DeleteLaunchConfigurationTemplateResponse (..),+ newDeleteLaunchConfigurationTemplateResponse,++ -- * Response Lenses+ deleteLaunchConfigurationTemplateResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteLaunchConfigurationTemplate' smart constructor.+data DeleteLaunchConfigurationTemplate = DeleteLaunchConfigurationTemplate'+ { -- | ID of resource to be deleted.+ launchConfigurationTemplateID :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteLaunchConfigurationTemplate' 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:+--+-- 'launchConfigurationTemplateID', 'deleteLaunchConfigurationTemplate_launchConfigurationTemplateID' - ID of resource to be deleted.+newDeleteLaunchConfigurationTemplate ::+ -- | 'launchConfigurationTemplateID'+ Prelude.Text ->+ DeleteLaunchConfigurationTemplate+newDeleteLaunchConfigurationTemplate+ pLaunchConfigurationTemplateID_ =+ DeleteLaunchConfigurationTemplate'+ { launchConfigurationTemplateID =+ pLaunchConfigurationTemplateID_+ }++-- | ID of resource to be deleted.+deleteLaunchConfigurationTemplate_launchConfigurationTemplateID :: Lens.Lens' DeleteLaunchConfigurationTemplate Prelude.Text+deleteLaunchConfigurationTemplate_launchConfigurationTemplateID = Lens.lens (\DeleteLaunchConfigurationTemplate' {launchConfigurationTemplateID} -> launchConfigurationTemplateID) (\s@DeleteLaunchConfigurationTemplate' {} a -> s {launchConfigurationTemplateID = a} :: DeleteLaunchConfigurationTemplate)++instance+ Core.AWSRequest+ DeleteLaunchConfigurationTemplate+ where+ type+ AWSResponse DeleteLaunchConfigurationTemplate =+ DeleteLaunchConfigurationTemplateResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ DeleteLaunchConfigurationTemplateResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ DeleteLaunchConfigurationTemplate+ where+ hashWithSalt+ _salt+ DeleteLaunchConfigurationTemplate' {..} =+ _salt+ `Prelude.hashWithSalt` launchConfigurationTemplateID++instance+ Prelude.NFData+ DeleteLaunchConfigurationTemplate+ where+ rnf DeleteLaunchConfigurationTemplate' {..} =+ Prelude.rnf launchConfigurationTemplateID++instance+ Data.ToHeaders+ DeleteLaunchConfigurationTemplate+ where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance+ Data.ToJSON+ DeleteLaunchConfigurationTemplate+ where+ toJSON DeleteLaunchConfigurationTemplate' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ( "launchConfigurationTemplateID"+ Data..= launchConfigurationTemplateID+ )+ ]+ )++instance+ Data.ToPath+ DeleteLaunchConfigurationTemplate+ where+ toPath =+ Prelude.const "/DeleteLaunchConfigurationTemplate"++instance+ Data.ToQuery+ DeleteLaunchConfigurationTemplate+ where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteLaunchConfigurationTemplateResponse' smart constructor.+data DeleteLaunchConfigurationTemplateResponse = DeleteLaunchConfigurationTemplateResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteLaunchConfigurationTemplateResponse' 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', 'deleteLaunchConfigurationTemplateResponse_httpStatus' - The response's http status code.+newDeleteLaunchConfigurationTemplateResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeleteLaunchConfigurationTemplateResponse+newDeleteLaunchConfigurationTemplateResponse+ pHttpStatus_ =+ DeleteLaunchConfigurationTemplateResponse'+ { httpStatus =+ pHttpStatus_+ }++-- | The response's http status code.+deleteLaunchConfigurationTemplateResponse_httpStatus :: Lens.Lens' DeleteLaunchConfigurationTemplateResponse Prelude.Int+deleteLaunchConfigurationTemplateResponse_httpStatus = Lens.lens (\DeleteLaunchConfigurationTemplateResponse' {httpStatus} -> httpStatus) (\s@DeleteLaunchConfigurationTemplateResponse' {} a -> s {httpStatus = a} :: DeleteLaunchConfigurationTemplateResponse)++instance+ Prelude.NFData+ DeleteLaunchConfigurationTemplateResponse+ where+ rnf DeleteLaunchConfigurationTemplateResponse' {..} =+ Prelude.rnf httpStatus
+ gen/Amazonka/MGN/DeleteReplicationConfigurationTemplate.hs view
@@ -0,0 +1,196 @@+{-# 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.MGN.DeleteReplicationConfigurationTemplate+-- 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 single Replication Configuration Template by ID+module Amazonka.MGN.DeleteReplicationConfigurationTemplate+ ( -- * Creating a Request+ DeleteReplicationConfigurationTemplate (..),+ newDeleteReplicationConfigurationTemplate,++ -- * Request Lenses+ deleteReplicationConfigurationTemplate_replicationConfigurationTemplateID,++ -- * Destructuring the Response+ DeleteReplicationConfigurationTemplateResponse (..),+ newDeleteReplicationConfigurationTemplateResponse,++ -- * Response Lenses+ deleteReplicationConfigurationTemplateResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteReplicationConfigurationTemplate' smart constructor.+data DeleteReplicationConfigurationTemplate = DeleteReplicationConfigurationTemplate'+ { -- | Request to delete Replication Configuration Template from service by+ -- Replication Configuration Template ID.+ replicationConfigurationTemplateID :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteReplicationConfigurationTemplate' 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:+--+-- 'replicationConfigurationTemplateID', 'deleteReplicationConfigurationTemplate_replicationConfigurationTemplateID' - Request to delete Replication Configuration Template from service by+-- Replication Configuration Template ID.+newDeleteReplicationConfigurationTemplate ::+ -- | 'replicationConfigurationTemplateID'+ Prelude.Text ->+ DeleteReplicationConfigurationTemplate+newDeleteReplicationConfigurationTemplate+ pReplicationConfigurationTemplateID_ =+ DeleteReplicationConfigurationTemplate'+ { replicationConfigurationTemplateID =+ pReplicationConfigurationTemplateID_+ }++-- | Request to delete Replication Configuration Template from service by+-- Replication Configuration Template ID.+deleteReplicationConfigurationTemplate_replicationConfigurationTemplateID :: Lens.Lens' DeleteReplicationConfigurationTemplate Prelude.Text+deleteReplicationConfigurationTemplate_replicationConfigurationTemplateID = Lens.lens (\DeleteReplicationConfigurationTemplate' {replicationConfigurationTemplateID} -> replicationConfigurationTemplateID) (\s@DeleteReplicationConfigurationTemplate' {} a -> s {replicationConfigurationTemplateID = a} :: DeleteReplicationConfigurationTemplate)++instance+ Core.AWSRequest+ DeleteReplicationConfigurationTemplate+ where+ type+ AWSResponse+ DeleteReplicationConfigurationTemplate =+ DeleteReplicationConfigurationTemplateResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ DeleteReplicationConfigurationTemplateResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ DeleteReplicationConfigurationTemplate+ where+ hashWithSalt+ _salt+ DeleteReplicationConfigurationTemplate' {..} =+ _salt+ `Prelude.hashWithSalt` replicationConfigurationTemplateID++instance+ Prelude.NFData+ DeleteReplicationConfigurationTemplate+ where+ rnf DeleteReplicationConfigurationTemplate' {..} =+ Prelude.rnf replicationConfigurationTemplateID++instance+ Data.ToHeaders+ DeleteReplicationConfigurationTemplate+ where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance+ Data.ToJSON+ DeleteReplicationConfigurationTemplate+ where+ toJSON DeleteReplicationConfigurationTemplate' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ( "replicationConfigurationTemplateID"+ Data..= replicationConfigurationTemplateID+ )+ ]+ )++instance+ Data.ToPath+ DeleteReplicationConfigurationTemplate+ where+ toPath =+ Prelude.const+ "/DeleteReplicationConfigurationTemplate"++instance+ Data.ToQuery+ DeleteReplicationConfigurationTemplate+ where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteReplicationConfigurationTemplateResponse' smart constructor.+data DeleteReplicationConfigurationTemplateResponse = DeleteReplicationConfigurationTemplateResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteReplicationConfigurationTemplateResponse' 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', 'deleteReplicationConfigurationTemplateResponse_httpStatus' - The response's http status code.+newDeleteReplicationConfigurationTemplateResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeleteReplicationConfigurationTemplateResponse+newDeleteReplicationConfigurationTemplateResponse+ pHttpStatus_ =+ DeleteReplicationConfigurationTemplateResponse'+ { httpStatus =+ pHttpStatus_+ }++-- | The response's http status code.+deleteReplicationConfigurationTemplateResponse_httpStatus :: Lens.Lens' DeleteReplicationConfigurationTemplateResponse Prelude.Int+deleteReplicationConfigurationTemplateResponse_httpStatus = Lens.lens (\DeleteReplicationConfigurationTemplateResponse' {httpStatus} -> httpStatus) (\s@DeleteReplicationConfigurationTemplateResponse' {} a -> s {httpStatus = a} :: DeleteReplicationConfigurationTemplateResponse)++instance+ Prelude.NFData+ DeleteReplicationConfigurationTemplateResponse+ where+ rnf+ DeleteReplicationConfigurationTemplateResponse' {..} =+ Prelude.rnf httpStatus
+ gen/Amazonka/MGN/DeleteSourceServer.hs view
@@ -0,0 +1,158 @@+{-# 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.MGN.DeleteSourceServer+-- 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 single source server by ID.+module Amazonka.MGN.DeleteSourceServer+ ( -- * Creating a Request+ DeleteSourceServer (..),+ newDeleteSourceServer,++ -- * Request Lenses+ deleteSourceServer_sourceServerID,++ -- * Destructuring the Response+ DeleteSourceServerResponse (..),+ newDeleteSourceServerResponse,++ -- * Response Lenses+ deleteSourceServerResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteSourceServer' smart constructor.+data DeleteSourceServer = DeleteSourceServer'+ { -- | Request to delete Source Server from service by Server ID.+ sourceServerID :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteSourceServer' 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:+--+-- 'sourceServerID', 'deleteSourceServer_sourceServerID' - Request to delete Source Server from service by Server ID.+newDeleteSourceServer ::+ -- | 'sourceServerID'+ Prelude.Text ->+ DeleteSourceServer+newDeleteSourceServer pSourceServerID_ =+ DeleteSourceServer'+ { sourceServerID =+ pSourceServerID_+ }++-- | Request to delete Source Server from service by Server ID.+deleteSourceServer_sourceServerID :: Lens.Lens' DeleteSourceServer Prelude.Text+deleteSourceServer_sourceServerID = Lens.lens (\DeleteSourceServer' {sourceServerID} -> sourceServerID) (\s@DeleteSourceServer' {} a -> s {sourceServerID = a} :: DeleteSourceServer)++instance Core.AWSRequest DeleteSourceServer where+ type+ AWSResponse DeleteSourceServer =+ DeleteSourceServerResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ DeleteSourceServerResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DeleteSourceServer where+ hashWithSalt _salt DeleteSourceServer' {..} =+ _salt `Prelude.hashWithSalt` sourceServerID++instance Prelude.NFData DeleteSourceServer where+ rnf DeleteSourceServer' {..} =+ Prelude.rnf sourceServerID++instance Data.ToHeaders DeleteSourceServer where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON DeleteSourceServer where+ toJSON DeleteSourceServer' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("sourceServerID" Data..= sourceServerID)+ ]+ )++instance Data.ToPath DeleteSourceServer where+ toPath = Prelude.const "/DeleteSourceServer"++instance Data.ToQuery DeleteSourceServer where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteSourceServerResponse' smart constructor.+data DeleteSourceServerResponse = DeleteSourceServerResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteSourceServerResponse' 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', 'deleteSourceServerResponse_httpStatus' - The response's http status code.+newDeleteSourceServerResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeleteSourceServerResponse+newDeleteSourceServerResponse pHttpStatus_ =+ DeleteSourceServerResponse'+ { httpStatus =+ pHttpStatus_+ }++-- | The response's http status code.+deleteSourceServerResponse_httpStatus :: Lens.Lens' DeleteSourceServerResponse Prelude.Int+deleteSourceServerResponse_httpStatus = Lens.lens (\DeleteSourceServerResponse' {httpStatus} -> httpStatus) (\s@DeleteSourceServerResponse' {} a -> s {httpStatus = a} :: DeleteSourceServerResponse)++instance Prelude.NFData DeleteSourceServerResponse where+ rnf DeleteSourceServerResponse' {..} =+ Prelude.rnf httpStatus
+ gen/Amazonka/MGN/DeleteVcenterClient.hs view
@@ -0,0 +1,135 @@+{-# 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.MGN.DeleteVcenterClient+-- 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 given vCenter client by ID.+module Amazonka.MGN.DeleteVcenterClient+ ( -- * Creating a Request+ DeleteVcenterClient (..),+ newDeleteVcenterClient,++ -- * Request Lenses+ deleteVcenterClient_vcenterClientID,++ -- * Destructuring the Response+ DeleteVcenterClientResponse (..),+ newDeleteVcenterClientResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteVcenterClient' smart constructor.+data DeleteVcenterClient = DeleteVcenterClient'+ { -- | ID of resource to be deleted.+ vcenterClientID :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteVcenterClient' 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:+--+-- 'vcenterClientID', 'deleteVcenterClient_vcenterClientID' - ID of resource to be deleted.+newDeleteVcenterClient ::+ -- | 'vcenterClientID'+ Prelude.Text ->+ DeleteVcenterClient+newDeleteVcenterClient pVcenterClientID_ =+ DeleteVcenterClient'+ { vcenterClientID =+ pVcenterClientID_+ }++-- | ID of resource to be deleted.+deleteVcenterClient_vcenterClientID :: Lens.Lens' DeleteVcenterClient Prelude.Text+deleteVcenterClient_vcenterClientID = Lens.lens (\DeleteVcenterClient' {vcenterClientID} -> vcenterClientID) (\s@DeleteVcenterClient' {} a -> s {vcenterClientID = a} :: DeleteVcenterClient)++instance Core.AWSRequest DeleteVcenterClient where+ type+ AWSResponse DeleteVcenterClient =+ DeleteVcenterClientResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveNull DeleteVcenterClientResponse'++instance Prelude.Hashable DeleteVcenterClient where+ hashWithSalt _salt DeleteVcenterClient' {..} =+ _salt `Prelude.hashWithSalt` vcenterClientID++instance Prelude.NFData DeleteVcenterClient where+ rnf DeleteVcenterClient' {..} =+ Prelude.rnf vcenterClientID++instance Data.ToHeaders DeleteVcenterClient where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON DeleteVcenterClient where+ toJSON DeleteVcenterClient' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("vcenterClientID" Data..= vcenterClientID)+ ]+ )++instance Data.ToPath DeleteVcenterClient where+ toPath = Prelude.const "/DeleteVcenterClient"++instance Data.ToQuery DeleteVcenterClient where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteVcenterClientResponse' smart constructor.+data DeleteVcenterClientResponse = DeleteVcenterClientResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteVcenterClientResponse' 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.+newDeleteVcenterClientResponse ::+ DeleteVcenterClientResponse+newDeleteVcenterClientResponse =+ DeleteVcenterClientResponse'++instance Prelude.NFData DeleteVcenterClientResponse where+ rnf _ = ()
+ gen/Amazonka/MGN/DeleteWave.hs view
@@ -0,0 +1,146 @@+{-# 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.MGN.DeleteWave+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Delete wave.+module Amazonka.MGN.DeleteWave+ ( -- * Creating a Request+ DeleteWave (..),+ newDeleteWave,++ -- * Request Lenses+ deleteWave_waveID,++ -- * Destructuring the Response+ DeleteWaveResponse (..),+ newDeleteWaveResponse,++ -- * Response Lenses+ deleteWaveResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteWave' smart constructor.+data DeleteWave = DeleteWave'+ { -- | Wave ID.+ waveID :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteWave' 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:+--+-- 'waveID', 'deleteWave_waveID' - Wave ID.+newDeleteWave ::+ -- | 'waveID'+ Prelude.Text ->+ DeleteWave+newDeleteWave pWaveID_ =+ DeleteWave' {waveID = pWaveID_}++-- | Wave ID.+deleteWave_waveID :: Lens.Lens' DeleteWave Prelude.Text+deleteWave_waveID = Lens.lens (\DeleteWave' {waveID} -> waveID) (\s@DeleteWave' {} a -> s {waveID = a} :: DeleteWave)++instance Core.AWSRequest DeleteWave where+ type AWSResponse DeleteWave = DeleteWaveResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ DeleteWaveResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DeleteWave where+ hashWithSalt _salt DeleteWave' {..} =+ _salt `Prelude.hashWithSalt` waveID++instance Prelude.NFData DeleteWave where+ rnf DeleteWave' {..} = Prelude.rnf waveID++instance Data.ToHeaders DeleteWave where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON DeleteWave where+ toJSON DeleteWave' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("waveID" Data..= waveID)]+ )++instance Data.ToPath DeleteWave where+ toPath = Prelude.const "/DeleteWave"++instance Data.ToQuery DeleteWave where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteWaveResponse' smart constructor.+data DeleteWaveResponse = DeleteWaveResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteWaveResponse' 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', 'deleteWaveResponse_httpStatus' - The response's http status code.+newDeleteWaveResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeleteWaveResponse+newDeleteWaveResponse pHttpStatus_ =+ DeleteWaveResponse' {httpStatus = pHttpStatus_}++-- | The response's http status code.+deleteWaveResponse_httpStatus :: Lens.Lens' DeleteWaveResponse Prelude.Int+deleteWaveResponse_httpStatus = Lens.lens (\DeleteWaveResponse' {httpStatus} -> httpStatus) (\s@DeleteWaveResponse' {} a -> s {httpStatus = a} :: DeleteWaveResponse)++instance Prelude.NFData DeleteWaveResponse where+ rnf DeleteWaveResponse' {..} = Prelude.rnf httpStatus
+ gen/Amazonka/MGN/DescribeJobLogItems.hs view
@@ -0,0 +1,231 @@+{-# 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.MGN.DescribeJobLogItems+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieves detailed job log items with paging.+--+-- This operation returns paginated results.+module Amazonka.MGN.DescribeJobLogItems+ ( -- * Creating a Request+ DescribeJobLogItems (..),+ newDescribeJobLogItems,++ -- * Request Lenses+ describeJobLogItems_maxResults,+ describeJobLogItems_nextToken,+ describeJobLogItems_jobID,++ -- * Destructuring the Response+ DescribeJobLogItemsResponse (..),+ newDescribeJobLogItemsResponse,++ -- * Response Lenses+ describeJobLogItemsResponse_items,+ describeJobLogItemsResponse_nextToken,+ describeJobLogItemsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDescribeJobLogItems' smart constructor.+data DescribeJobLogItems = DescribeJobLogItems'+ { -- | Request to describe Job log item maximum results.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | Request to describe Job log next token.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | Request to describe Job log job ID.+ jobID :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeJobLogItems' 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', 'describeJobLogItems_maxResults' - Request to describe Job log item maximum results.+--+-- 'nextToken', 'describeJobLogItems_nextToken' - Request to describe Job log next token.+--+-- 'jobID', 'describeJobLogItems_jobID' - Request to describe Job log job ID.+newDescribeJobLogItems ::+ -- | 'jobID'+ Prelude.Text ->+ DescribeJobLogItems+newDescribeJobLogItems pJobID_ =+ DescribeJobLogItems'+ { maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ jobID = pJobID_+ }++-- | Request to describe Job log item maximum results.+describeJobLogItems_maxResults :: Lens.Lens' DescribeJobLogItems (Prelude.Maybe Prelude.Natural)+describeJobLogItems_maxResults = Lens.lens (\DescribeJobLogItems' {maxResults} -> maxResults) (\s@DescribeJobLogItems' {} a -> s {maxResults = a} :: DescribeJobLogItems)++-- | Request to describe Job log next token.+describeJobLogItems_nextToken :: Lens.Lens' DescribeJobLogItems (Prelude.Maybe Prelude.Text)+describeJobLogItems_nextToken = Lens.lens (\DescribeJobLogItems' {nextToken} -> nextToken) (\s@DescribeJobLogItems' {} a -> s {nextToken = a} :: DescribeJobLogItems)++-- | Request to describe Job log job ID.+describeJobLogItems_jobID :: Lens.Lens' DescribeJobLogItems Prelude.Text+describeJobLogItems_jobID = Lens.lens (\DescribeJobLogItems' {jobID} -> jobID) (\s@DescribeJobLogItems' {} a -> s {jobID = a} :: DescribeJobLogItems)++instance Core.AWSPager DescribeJobLogItems where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? describeJobLogItemsResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? describeJobLogItemsResponse_items+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& describeJobLogItems_nextToken+ Lens..~ rs+ Lens.^? describeJobLogItemsResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest DescribeJobLogItems where+ type+ AWSResponse DescribeJobLogItems =+ DescribeJobLogItemsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribeJobLogItemsResponse'+ Prelude.<$> (x Data..?> "items" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "nextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DescribeJobLogItems where+ hashWithSalt _salt DescribeJobLogItems' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` jobID++instance Prelude.NFData DescribeJobLogItems where+ rnf DescribeJobLogItems' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf jobID++instance Data.ToHeaders DescribeJobLogItems where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON DescribeJobLogItems where+ toJSON DescribeJobLogItems' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("maxResults" Data..=) Prelude.<$> maxResults,+ ("nextToken" Data..=) Prelude.<$> nextToken,+ Prelude.Just ("jobID" Data..= jobID)+ ]+ )++instance Data.ToPath DescribeJobLogItems where+ toPath = Prelude.const "/DescribeJobLogItems"++instance Data.ToQuery DescribeJobLogItems where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDescribeJobLogItemsResponse' smart constructor.+data DescribeJobLogItemsResponse = DescribeJobLogItemsResponse'+ { -- | Request to describe Job log response items.+ items :: Prelude.Maybe [JobLog],+ -- | Request to describe Job log response next token.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeJobLogItemsResponse' 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:+--+-- 'items', 'describeJobLogItemsResponse_items' - Request to describe Job log response items.+--+-- 'nextToken', 'describeJobLogItemsResponse_nextToken' - Request to describe Job log response next token.+--+-- 'httpStatus', 'describeJobLogItemsResponse_httpStatus' - The response's http status code.+newDescribeJobLogItemsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeJobLogItemsResponse+newDescribeJobLogItemsResponse pHttpStatus_ =+ DescribeJobLogItemsResponse'+ { items =+ Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Request to describe Job log response items.+describeJobLogItemsResponse_items :: Lens.Lens' DescribeJobLogItemsResponse (Prelude.Maybe [JobLog])+describeJobLogItemsResponse_items = Lens.lens (\DescribeJobLogItemsResponse' {items} -> items) (\s@DescribeJobLogItemsResponse' {} a -> s {items = a} :: DescribeJobLogItemsResponse) Prelude.. Lens.mapping Lens.coerced++-- | Request to describe Job log response next token.+describeJobLogItemsResponse_nextToken :: Lens.Lens' DescribeJobLogItemsResponse (Prelude.Maybe Prelude.Text)+describeJobLogItemsResponse_nextToken = Lens.lens (\DescribeJobLogItemsResponse' {nextToken} -> nextToken) (\s@DescribeJobLogItemsResponse' {} a -> s {nextToken = a} :: DescribeJobLogItemsResponse)++-- | The response's http status code.+describeJobLogItemsResponse_httpStatus :: Lens.Lens' DescribeJobLogItemsResponse Prelude.Int+describeJobLogItemsResponse_httpStatus = Lens.lens (\DescribeJobLogItemsResponse' {httpStatus} -> httpStatus) (\s@DescribeJobLogItemsResponse' {} a -> s {httpStatus = a} :: DescribeJobLogItemsResponse)++instance Prelude.NFData DescribeJobLogItemsResponse where+ rnf DescribeJobLogItemsResponse' {..} =+ Prelude.rnf items+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MGN/DescribeJobs.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.MGN.DescribeJobs+-- 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 Jobs. Use the JobsID and fromDate and toData filters+-- to limit which jobs are returned. The response is sorted by+-- creationDataTime - latest date first. Jobs are normally created by the+-- StartTest, StartCutover, and TerminateTargetInstances APIs. Jobs are+-- also created by DiagnosticLaunch and TerminateDiagnosticInstances, which+-- are APIs available only to *Support* and only used in response to+-- relevant support tickets.+--+-- This operation returns paginated results.+module Amazonka.MGN.DescribeJobs+ ( -- * Creating a Request+ DescribeJobs (..),+ newDescribeJobs,++ -- * Request Lenses+ describeJobs_filters,+ describeJobs_maxResults,+ describeJobs_nextToken,++ -- * Destructuring the Response+ DescribeJobsResponse (..),+ newDescribeJobsResponse,++ -- * Response Lenses+ describeJobsResponse_items,+ describeJobsResponse_nextToken,+ describeJobsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDescribeJobs' smart constructor.+data DescribeJobs = DescribeJobs'+ { -- | Request to describe Job log filters.+ filters :: Prelude.Maybe DescribeJobsRequestFilters,+ -- | Request to describe job log items by max results.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | Request to describe job log items by next token.+ nextToken :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeJobs' 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', 'describeJobs_filters' - Request to describe Job log filters.+--+-- 'maxResults', 'describeJobs_maxResults' - Request to describe job log items by max results.+--+-- 'nextToken', 'describeJobs_nextToken' - Request to describe job log items by next token.+newDescribeJobs ::+ DescribeJobs+newDescribeJobs =+ DescribeJobs'+ { filters = Prelude.Nothing,+ maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing+ }++-- | Request to describe Job log filters.+describeJobs_filters :: Lens.Lens' DescribeJobs (Prelude.Maybe DescribeJobsRequestFilters)+describeJobs_filters = Lens.lens (\DescribeJobs' {filters} -> filters) (\s@DescribeJobs' {} a -> s {filters = a} :: DescribeJobs)++-- | Request to describe job log items by max results.+describeJobs_maxResults :: Lens.Lens' DescribeJobs (Prelude.Maybe Prelude.Natural)+describeJobs_maxResults = Lens.lens (\DescribeJobs' {maxResults} -> maxResults) (\s@DescribeJobs' {} a -> s {maxResults = a} :: DescribeJobs)++-- | Request to describe job log items by next token.+describeJobs_nextToken :: Lens.Lens' DescribeJobs (Prelude.Maybe Prelude.Text)+describeJobs_nextToken = Lens.lens (\DescribeJobs' {nextToken} -> nextToken) (\s@DescribeJobs' {} a -> s {nextToken = a} :: DescribeJobs)++instance Core.AWSPager DescribeJobs where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? describeJobsResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? describeJobsResponse_items+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& describeJobs_nextToken+ Lens..~ rs+ Lens.^? describeJobsResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest DescribeJobs where+ type AWSResponse DescribeJobs = DescribeJobsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribeJobsResponse'+ Prelude.<$> (x Data..?> "items" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "nextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DescribeJobs where+ hashWithSalt _salt DescribeJobs' {..} =+ _salt+ `Prelude.hashWithSalt` filters+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken++instance Prelude.NFData DescribeJobs where+ rnf DescribeJobs' {..} =+ Prelude.rnf filters+ `Prelude.seq` Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken++instance Data.ToHeaders DescribeJobs where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON DescribeJobs where+ toJSON DescribeJobs' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("filters" Data..=) Prelude.<$> filters,+ ("maxResults" Data..=) Prelude.<$> maxResults,+ ("nextToken" Data..=) Prelude.<$> nextToken+ ]+ )++instance Data.ToPath DescribeJobs where+ toPath = Prelude.const "/DescribeJobs"++instance Data.ToQuery DescribeJobs where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDescribeJobsResponse' smart constructor.+data DescribeJobsResponse = DescribeJobsResponse'+ { -- | Request to describe Job log items.+ items :: Prelude.Maybe [Job],+ -- | Request to describe Job response by next token.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeJobsResponse' 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:+--+-- 'items', 'describeJobsResponse_items' - Request to describe Job log items.+--+-- 'nextToken', 'describeJobsResponse_nextToken' - Request to describe Job response by next token.+--+-- 'httpStatus', 'describeJobsResponse_httpStatus' - The response's http status code.+newDescribeJobsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeJobsResponse+newDescribeJobsResponse pHttpStatus_ =+ DescribeJobsResponse'+ { items = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Request to describe Job log items.+describeJobsResponse_items :: Lens.Lens' DescribeJobsResponse (Prelude.Maybe [Job])+describeJobsResponse_items = Lens.lens (\DescribeJobsResponse' {items} -> items) (\s@DescribeJobsResponse' {} a -> s {items = a} :: DescribeJobsResponse) Prelude.. Lens.mapping Lens.coerced++-- | Request to describe Job response by next token.+describeJobsResponse_nextToken :: Lens.Lens' DescribeJobsResponse (Prelude.Maybe Prelude.Text)+describeJobsResponse_nextToken = Lens.lens (\DescribeJobsResponse' {nextToken} -> nextToken) (\s@DescribeJobsResponse' {} a -> s {nextToken = a} :: DescribeJobsResponse)++-- | The response's http status code.+describeJobsResponse_httpStatus :: Lens.Lens' DescribeJobsResponse Prelude.Int+describeJobsResponse_httpStatus = Lens.lens (\DescribeJobsResponse' {httpStatus} -> httpStatus) (\s@DescribeJobsResponse' {} a -> s {httpStatus = a} :: DescribeJobsResponse)++instance Prelude.NFData DescribeJobsResponse where+ rnf DescribeJobsResponse' {..} =+ Prelude.rnf items+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MGN/DescribeLaunchConfigurationTemplates.hs view
@@ -0,0 +1,273 @@+{-# 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.MGN.DescribeLaunchConfigurationTemplates+-- 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 Launch Configuration Templates, filtered by Launch+-- Configuration Template IDs+--+-- This operation returns paginated results.+module Amazonka.MGN.DescribeLaunchConfigurationTemplates+ ( -- * Creating a Request+ DescribeLaunchConfigurationTemplates (..),+ newDescribeLaunchConfigurationTemplates,++ -- * Request Lenses+ describeLaunchConfigurationTemplates_launchConfigurationTemplateIDs,+ describeLaunchConfigurationTemplates_maxResults,+ describeLaunchConfigurationTemplates_nextToken,++ -- * Destructuring the Response+ DescribeLaunchConfigurationTemplatesResponse (..),+ newDescribeLaunchConfigurationTemplatesResponse,++ -- * Response Lenses+ describeLaunchConfigurationTemplatesResponse_items,+ describeLaunchConfigurationTemplatesResponse_nextToken,+ describeLaunchConfigurationTemplatesResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDescribeLaunchConfigurationTemplates' smart constructor.+data DescribeLaunchConfigurationTemplates = DescribeLaunchConfigurationTemplates'+ { -- | Request to filter Launch Configuration Templates list by Launch+ -- Configuration Template ID.+ launchConfigurationTemplateIDs :: Prelude.Maybe [Prelude.Text],+ -- | Maximum results to be returned in DescribeLaunchConfigurationTemplates.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | Next pagination token returned from+ -- DescribeLaunchConfigurationTemplates.+ nextToken :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeLaunchConfigurationTemplates' 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:+--+-- 'launchConfigurationTemplateIDs', 'describeLaunchConfigurationTemplates_launchConfigurationTemplateIDs' - Request to filter Launch Configuration Templates list by Launch+-- Configuration Template ID.+--+-- 'maxResults', 'describeLaunchConfigurationTemplates_maxResults' - Maximum results to be returned in DescribeLaunchConfigurationTemplates.+--+-- 'nextToken', 'describeLaunchConfigurationTemplates_nextToken' - Next pagination token returned from+-- DescribeLaunchConfigurationTemplates.+newDescribeLaunchConfigurationTemplates ::+ DescribeLaunchConfigurationTemplates+newDescribeLaunchConfigurationTemplates =+ DescribeLaunchConfigurationTemplates'+ { launchConfigurationTemplateIDs =+ Prelude.Nothing,+ maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing+ }++-- | Request to filter Launch Configuration Templates list by Launch+-- Configuration Template ID.+describeLaunchConfigurationTemplates_launchConfigurationTemplateIDs :: Lens.Lens' DescribeLaunchConfigurationTemplates (Prelude.Maybe [Prelude.Text])+describeLaunchConfigurationTemplates_launchConfigurationTemplateIDs = Lens.lens (\DescribeLaunchConfigurationTemplates' {launchConfigurationTemplateIDs} -> launchConfigurationTemplateIDs) (\s@DescribeLaunchConfigurationTemplates' {} a -> s {launchConfigurationTemplateIDs = a} :: DescribeLaunchConfigurationTemplates) Prelude.. Lens.mapping Lens.coerced++-- | Maximum results to be returned in DescribeLaunchConfigurationTemplates.+describeLaunchConfigurationTemplates_maxResults :: Lens.Lens' DescribeLaunchConfigurationTemplates (Prelude.Maybe Prelude.Natural)+describeLaunchConfigurationTemplates_maxResults = Lens.lens (\DescribeLaunchConfigurationTemplates' {maxResults} -> maxResults) (\s@DescribeLaunchConfigurationTemplates' {} a -> s {maxResults = a} :: DescribeLaunchConfigurationTemplates)++-- | Next pagination token returned from+-- DescribeLaunchConfigurationTemplates.+describeLaunchConfigurationTemplates_nextToken :: Lens.Lens' DescribeLaunchConfigurationTemplates (Prelude.Maybe Prelude.Text)+describeLaunchConfigurationTemplates_nextToken = Lens.lens (\DescribeLaunchConfigurationTemplates' {nextToken} -> nextToken) (\s@DescribeLaunchConfigurationTemplates' {} a -> s {nextToken = a} :: DescribeLaunchConfigurationTemplates)++instance+ Core.AWSPager+ DescribeLaunchConfigurationTemplates+ where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? describeLaunchConfigurationTemplatesResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? describeLaunchConfigurationTemplatesResponse_items+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& describeLaunchConfigurationTemplates_nextToken+ Lens..~ rs+ Lens.^? describeLaunchConfigurationTemplatesResponse_nextToken+ Prelude.. Lens._Just++instance+ Core.AWSRequest+ DescribeLaunchConfigurationTemplates+ where+ type+ AWSResponse DescribeLaunchConfigurationTemplates =+ DescribeLaunchConfigurationTemplatesResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribeLaunchConfigurationTemplatesResponse'+ Prelude.<$> (x Data..?> "items" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "nextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ DescribeLaunchConfigurationTemplates+ where+ hashWithSalt+ _salt+ DescribeLaunchConfigurationTemplates' {..} =+ _salt+ `Prelude.hashWithSalt` launchConfigurationTemplateIDs+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken++instance+ Prelude.NFData+ DescribeLaunchConfigurationTemplates+ where+ rnf DescribeLaunchConfigurationTemplates' {..} =+ Prelude.rnf launchConfigurationTemplateIDs+ `Prelude.seq` Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken++instance+ Data.ToHeaders+ DescribeLaunchConfigurationTemplates+ where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance+ Data.ToJSON+ DescribeLaunchConfigurationTemplates+ where+ toJSON DescribeLaunchConfigurationTemplates' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("launchConfigurationTemplateIDs" Data..=)+ Prelude.<$> launchConfigurationTemplateIDs,+ ("maxResults" Data..=) Prelude.<$> maxResults,+ ("nextToken" Data..=) Prelude.<$> nextToken+ ]+ )++instance+ Data.ToPath+ DescribeLaunchConfigurationTemplates+ where+ toPath =+ Prelude.const+ "/DescribeLaunchConfigurationTemplates"++instance+ Data.ToQuery+ DescribeLaunchConfigurationTemplates+ where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDescribeLaunchConfigurationTemplatesResponse' smart constructor.+data DescribeLaunchConfigurationTemplatesResponse = DescribeLaunchConfigurationTemplatesResponse'+ { -- | List of items returned by DescribeLaunchConfigurationTemplates.+ items :: Prelude.Maybe [LaunchConfigurationTemplate],+ -- | Next pagination token returned from+ -- DescribeLaunchConfigurationTemplates.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeLaunchConfigurationTemplatesResponse' 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:+--+-- 'items', 'describeLaunchConfigurationTemplatesResponse_items' - List of items returned by DescribeLaunchConfigurationTemplates.+--+-- 'nextToken', 'describeLaunchConfigurationTemplatesResponse_nextToken' - Next pagination token returned from+-- DescribeLaunchConfigurationTemplates.+--+-- 'httpStatus', 'describeLaunchConfigurationTemplatesResponse_httpStatus' - The response's http status code.+newDescribeLaunchConfigurationTemplatesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeLaunchConfigurationTemplatesResponse+newDescribeLaunchConfigurationTemplatesResponse+ pHttpStatus_ =+ DescribeLaunchConfigurationTemplatesResponse'+ { items =+ Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | List of items returned by DescribeLaunchConfigurationTemplates.+describeLaunchConfigurationTemplatesResponse_items :: Lens.Lens' DescribeLaunchConfigurationTemplatesResponse (Prelude.Maybe [LaunchConfigurationTemplate])+describeLaunchConfigurationTemplatesResponse_items = Lens.lens (\DescribeLaunchConfigurationTemplatesResponse' {items} -> items) (\s@DescribeLaunchConfigurationTemplatesResponse' {} a -> s {items = a} :: DescribeLaunchConfigurationTemplatesResponse) Prelude.. Lens.mapping Lens.coerced++-- | Next pagination token returned from+-- DescribeLaunchConfigurationTemplates.+describeLaunchConfigurationTemplatesResponse_nextToken :: Lens.Lens' DescribeLaunchConfigurationTemplatesResponse (Prelude.Maybe Prelude.Text)+describeLaunchConfigurationTemplatesResponse_nextToken = Lens.lens (\DescribeLaunchConfigurationTemplatesResponse' {nextToken} -> nextToken) (\s@DescribeLaunchConfigurationTemplatesResponse' {} a -> s {nextToken = a} :: DescribeLaunchConfigurationTemplatesResponse)++-- | The response's http status code.+describeLaunchConfigurationTemplatesResponse_httpStatus :: Lens.Lens' DescribeLaunchConfigurationTemplatesResponse Prelude.Int+describeLaunchConfigurationTemplatesResponse_httpStatus = Lens.lens (\DescribeLaunchConfigurationTemplatesResponse' {httpStatus} -> httpStatus) (\s@DescribeLaunchConfigurationTemplatesResponse' {} a -> s {httpStatus = a} :: DescribeLaunchConfigurationTemplatesResponse)++instance+ Prelude.NFData+ DescribeLaunchConfigurationTemplatesResponse+ where+ rnf DescribeLaunchConfigurationTemplatesResponse' {..} =+ Prelude.rnf items+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MGN/DescribeReplicationConfigurationTemplates.hs view
@@ -0,0 +1,269 @@+{-# 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.MGN.DescribeReplicationConfigurationTemplates+-- 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 ReplicationConfigurationTemplates, filtered by Source Server+-- IDs.+--+-- This operation returns paginated results.+module Amazonka.MGN.DescribeReplicationConfigurationTemplates+ ( -- * Creating a Request+ DescribeReplicationConfigurationTemplates (..),+ newDescribeReplicationConfigurationTemplates,++ -- * Request Lenses+ describeReplicationConfigurationTemplates_maxResults,+ describeReplicationConfigurationTemplates_nextToken,+ describeReplicationConfigurationTemplates_replicationConfigurationTemplateIDs,++ -- * Destructuring the Response+ DescribeReplicationConfigurationTemplatesResponse (..),+ newDescribeReplicationConfigurationTemplatesResponse,++ -- * Response Lenses+ describeReplicationConfigurationTemplatesResponse_items,+ describeReplicationConfigurationTemplatesResponse_nextToken,+ describeReplicationConfigurationTemplatesResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDescribeReplicationConfigurationTemplates' smart constructor.+data DescribeReplicationConfigurationTemplates = DescribeReplicationConfigurationTemplates'+ { -- | Request to describe Replication Configuration template by max results.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | Request to describe Replication Configuration template by next token.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | Request to describe Replication Configuration template by template IDs.+ replicationConfigurationTemplateIDs :: Prelude.Maybe [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeReplicationConfigurationTemplates' 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', 'describeReplicationConfigurationTemplates_maxResults' - Request to describe Replication Configuration template by max results.+--+-- 'nextToken', 'describeReplicationConfigurationTemplates_nextToken' - Request to describe Replication Configuration template by next token.+--+-- 'replicationConfigurationTemplateIDs', 'describeReplicationConfigurationTemplates_replicationConfigurationTemplateIDs' - Request to describe Replication Configuration template by template IDs.+newDescribeReplicationConfigurationTemplates ::+ DescribeReplicationConfigurationTemplates+newDescribeReplicationConfigurationTemplates =+ DescribeReplicationConfigurationTemplates'+ { maxResults =+ Prelude.Nothing,+ nextToken = Prelude.Nothing,+ replicationConfigurationTemplateIDs =+ Prelude.Nothing+ }++-- | Request to describe Replication Configuration template by max results.+describeReplicationConfigurationTemplates_maxResults :: Lens.Lens' DescribeReplicationConfigurationTemplates (Prelude.Maybe Prelude.Natural)+describeReplicationConfigurationTemplates_maxResults = Lens.lens (\DescribeReplicationConfigurationTemplates' {maxResults} -> maxResults) (\s@DescribeReplicationConfigurationTemplates' {} a -> s {maxResults = a} :: DescribeReplicationConfigurationTemplates)++-- | Request to describe Replication Configuration template by next token.+describeReplicationConfigurationTemplates_nextToken :: Lens.Lens' DescribeReplicationConfigurationTemplates (Prelude.Maybe Prelude.Text)+describeReplicationConfigurationTemplates_nextToken = Lens.lens (\DescribeReplicationConfigurationTemplates' {nextToken} -> nextToken) (\s@DescribeReplicationConfigurationTemplates' {} a -> s {nextToken = a} :: DescribeReplicationConfigurationTemplates)++-- | Request to describe Replication Configuration template by template IDs.+describeReplicationConfigurationTemplates_replicationConfigurationTemplateIDs :: Lens.Lens' DescribeReplicationConfigurationTemplates (Prelude.Maybe [Prelude.Text])+describeReplicationConfigurationTemplates_replicationConfigurationTemplateIDs = Lens.lens (\DescribeReplicationConfigurationTemplates' {replicationConfigurationTemplateIDs} -> replicationConfigurationTemplateIDs) (\s@DescribeReplicationConfigurationTemplates' {} a -> s {replicationConfigurationTemplateIDs = a} :: DescribeReplicationConfigurationTemplates) Prelude.. Lens.mapping Lens.coerced++instance+ Core.AWSPager+ DescribeReplicationConfigurationTemplates+ where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? describeReplicationConfigurationTemplatesResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? describeReplicationConfigurationTemplatesResponse_items+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& describeReplicationConfigurationTemplates_nextToken+ Lens..~ rs+ Lens.^? describeReplicationConfigurationTemplatesResponse_nextToken+ Prelude.. Lens._Just++instance+ Core.AWSRequest+ DescribeReplicationConfigurationTemplates+ where+ type+ AWSResponse+ DescribeReplicationConfigurationTemplates =+ DescribeReplicationConfigurationTemplatesResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribeReplicationConfigurationTemplatesResponse'+ Prelude.<$> (x Data..?> "items" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "nextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ DescribeReplicationConfigurationTemplates+ where+ hashWithSalt+ _salt+ DescribeReplicationConfigurationTemplates' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` replicationConfigurationTemplateIDs++instance+ Prelude.NFData+ DescribeReplicationConfigurationTemplates+ where+ rnf DescribeReplicationConfigurationTemplates' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf replicationConfigurationTemplateIDs++instance+ Data.ToHeaders+ DescribeReplicationConfigurationTemplates+ where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance+ Data.ToJSON+ DescribeReplicationConfigurationTemplates+ where+ toJSON DescribeReplicationConfigurationTemplates' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("maxResults" Data..=) Prelude.<$> maxResults,+ ("nextToken" Data..=) Prelude.<$> nextToken,+ ("replicationConfigurationTemplateIDs" Data..=)+ Prelude.<$> replicationConfigurationTemplateIDs+ ]+ )++instance+ Data.ToPath+ DescribeReplicationConfigurationTemplates+ where+ toPath =+ Prelude.const+ "/DescribeReplicationConfigurationTemplates"++instance+ Data.ToQuery+ DescribeReplicationConfigurationTemplates+ where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDescribeReplicationConfigurationTemplatesResponse' smart constructor.+data DescribeReplicationConfigurationTemplatesResponse = DescribeReplicationConfigurationTemplatesResponse'+ { -- | Request to describe Replication Configuration template by items.+ items :: Prelude.Maybe [ReplicationConfigurationTemplate],+ -- | Request to describe Replication Configuration template by next token.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeReplicationConfigurationTemplatesResponse' 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:+--+-- 'items', 'describeReplicationConfigurationTemplatesResponse_items' - Request to describe Replication Configuration template by items.+--+-- 'nextToken', 'describeReplicationConfigurationTemplatesResponse_nextToken' - Request to describe Replication Configuration template by next token.+--+-- 'httpStatus', 'describeReplicationConfigurationTemplatesResponse_httpStatus' - The response's http status code.+newDescribeReplicationConfigurationTemplatesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeReplicationConfigurationTemplatesResponse+newDescribeReplicationConfigurationTemplatesResponse+ pHttpStatus_ =+ DescribeReplicationConfigurationTemplatesResponse'+ { items =+ Prelude.Nothing,+ nextToken =+ Prelude.Nothing,+ httpStatus =+ pHttpStatus_+ }++-- | Request to describe Replication Configuration template by items.+describeReplicationConfigurationTemplatesResponse_items :: Lens.Lens' DescribeReplicationConfigurationTemplatesResponse (Prelude.Maybe [ReplicationConfigurationTemplate])+describeReplicationConfigurationTemplatesResponse_items = Lens.lens (\DescribeReplicationConfigurationTemplatesResponse' {items} -> items) (\s@DescribeReplicationConfigurationTemplatesResponse' {} a -> s {items = a} :: DescribeReplicationConfigurationTemplatesResponse) Prelude.. Lens.mapping Lens.coerced++-- | Request to describe Replication Configuration template by next token.+describeReplicationConfigurationTemplatesResponse_nextToken :: Lens.Lens' DescribeReplicationConfigurationTemplatesResponse (Prelude.Maybe Prelude.Text)+describeReplicationConfigurationTemplatesResponse_nextToken = Lens.lens (\DescribeReplicationConfigurationTemplatesResponse' {nextToken} -> nextToken) (\s@DescribeReplicationConfigurationTemplatesResponse' {} a -> s {nextToken = a} :: DescribeReplicationConfigurationTemplatesResponse)++-- | The response's http status code.+describeReplicationConfigurationTemplatesResponse_httpStatus :: Lens.Lens' DescribeReplicationConfigurationTemplatesResponse Prelude.Int+describeReplicationConfigurationTemplatesResponse_httpStatus = Lens.lens (\DescribeReplicationConfigurationTemplatesResponse' {httpStatus} -> httpStatus) (\s@DescribeReplicationConfigurationTemplatesResponse' {} a -> s {httpStatus = a} :: DescribeReplicationConfigurationTemplatesResponse)++instance+ Prelude.NFData+ DescribeReplicationConfigurationTemplatesResponse+ where+ rnf+ DescribeReplicationConfigurationTemplatesResponse' {..} =+ Prelude.rnf items+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MGN/DescribeSourceServers.hs view
@@ -0,0 +1,229 @@+{-# 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.MGN.DescribeSourceServers+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieves all SourceServers or multiple SourceServers by ID.+--+-- This operation returns paginated results.+module Amazonka.MGN.DescribeSourceServers+ ( -- * Creating a Request+ DescribeSourceServers (..),+ newDescribeSourceServers,++ -- * Request Lenses+ describeSourceServers_filters,+ describeSourceServers_maxResults,+ describeSourceServers_nextToken,++ -- * Destructuring the Response+ DescribeSourceServersResponse (..),+ newDescribeSourceServersResponse,++ -- * Response Lenses+ describeSourceServersResponse_items,+ describeSourceServersResponse_nextToken,+ describeSourceServersResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDescribeSourceServers' smart constructor.+data DescribeSourceServers = DescribeSourceServers'+ { -- | Request to filter Source Servers list.+ filters :: Prelude.Maybe DescribeSourceServersRequestFilters,+ -- | Request to filter Source Servers list by maximum results.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | Request to filter Source Servers list by next token.+ nextToken :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeSourceServers' 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', 'describeSourceServers_filters' - Request to filter Source Servers list.+--+-- 'maxResults', 'describeSourceServers_maxResults' - Request to filter Source Servers list by maximum results.+--+-- 'nextToken', 'describeSourceServers_nextToken' - Request to filter Source Servers list by next token.+newDescribeSourceServers ::+ DescribeSourceServers+newDescribeSourceServers =+ DescribeSourceServers'+ { filters = Prelude.Nothing,+ maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing+ }++-- | Request to filter Source Servers list.+describeSourceServers_filters :: Lens.Lens' DescribeSourceServers (Prelude.Maybe DescribeSourceServersRequestFilters)+describeSourceServers_filters = Lens.lens (\DescribeSourceServers' {filters} -> filters) (\s@DescribeSourceServers' {} a -> s {filters = a} :: DescribeSourceServers)++-- | Request to filter Source Servers list by maximum results.+describeSourceServers_maxResults :: Lens.Lens' DescribeSourceServers (Prelude.Maybe Prelude.Natural)+describeSourceServers_maxResults = Lens.lens (\DescribeSourceServers' {maxResults} -> maxResults) (\s@DescribeSourceServers' {} a -> s {maxResults = a} :: DescribeSourceServers)++-- | Request to filter Source Servers list by next token.+describeSourceServers_nextToken :: Lens.Lens' DescribeSourceServers (Prelude.Maybe Prelude.Text)+describeSourceServers_nextToken = Lens.lens (\DescribeSourceServers' {nextToken} -> nextToken) (\s@DescribeSourceServers' {} a -> s {nextToken = a} :: DescribeSourceServers)++instance Core.AWSPager DescribeSourceServers where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? describeSourceServersResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? describeSourceServersResponse_items+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& describeSourceServers_nextToken+ Lens..~ rs+ Lens.^? describeSourceServersResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest DescribeSourceServers where+ type+ AWSResponse DescribeSourceServers =+ DescribeSourceServersResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribeSourceServersResponse'+ Prelude.<$> (x Data..?> "items" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "nextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DescribeSourceServers where+ hashWithSalt _salt DescribeSourceServers' {..} =+ _salt+ `Prelude.hashWithSalt` filters+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken++instance Prelude.NFData DescribeSourceServers where+ rnf DescribeSourceServers' {..} =+ Prelude.rnf filters+ `Prelude.seq` Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken++instance Data.ToHeaders DescribeSourceServers where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON DescribeSourceServers where+ toJSON DescribeSourceServers' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("filters" Data..=) Prelude.<$> filters,+ ("maxResults" Data..=) Prelude.<$> maxResults,+ ("nextToken" Data..=) Prelude.<$> nextToken+ ]+ )++instance Data.ToPath DescribeSourceServers where+ toPath = Prelude.const "/DescribeSourceServers"++instance Data.ToQuery DescribeSourceServers where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDescribeSourceServersResponse' smart constructor.+data DescribeSourceServersResponse = DescribeSourceServersResponse'+ { -- | Request to filter Source Servers list by item.+ items :: Prelude.Maybe [SourceServer],+ -- | Request to filter Source Servers next token.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeSourceServersResponse' 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:+--+-- 'items', 'describeSourceServersResponse_items' - Request to filter Source Servers list by item.+--+-- 'nextToken', 'describeSourceServersResponse_nextToken' - Request to filter Source Servers next token.+--+-- 'httpStatus', 'describeSourceServersResponse_httpStatus' - The response's http status code.+newDescribeSourceServersResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeSourceServersResponse+newDescribeSourceServersResponse pHttpStatus_ =+ DescribeSourceServersResponse'+ { items =+ Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Request to filter Source Servers list by item.+describeSourceServersResponse_items :: Lens.Lens' DescribeSourceServersResponse (Prelude.Maybe [SourceServer])+describeSourceServersResponse_items = Lens.lens (\DescribeSourceServersResponse' {items} -> items) (\s@DescribeSourceServersResponse' {} a -> s {items = a} :: DescribeSourceServersResponse) Prelude.. Lens.mapping Lens.coerced++-- | Request to filter Source Servers next token.+describeSourceServersResponse_nextToken :: Lens.Lens' DescribeSourceServersResponse (Prelude.Maybe Prelude.Text)+describeSourceServersResponse_nextToken = Lens.lens (\DescribeSourceServersResponse' {nextToken} -> nextToken) (\s@DescribeSourceServersResponse' {} a -> s {nextToken = a} :: DescribeSourceServersResponse)++-- | The response's http status code.+describeSourceServersResponse_httpStatus :: Lens.Lens' DescribeSourceServersResponse Prelude.Int+describeSourceServersResponse_httpStatus = Lens.lens (\DescribeSourceServersResponse' {httpStatus} -> httpStatus) (\s@DescribeSourceServersResponse' {} a -> s {httpStatus = a} :: DescribeSourceServersResponse)++instance Prelude.NFData DescribeSourceServersResponse where+ rnf DescribeSourceServersResponse' {..} =+ Prelude.rnf items+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MGN/DescribeVcenterClients.hs view
@@ -0,0 +1,215 @@+{-# 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.MGN.DescribeVcenterClients+-- 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 the installed vCenter clients.+--+-- This operation returns paginated results.+module Amazonka.MGN.DescribeVcenterClients+ ( -- * Creating a Request+ DescribeVcenterClients (..),+ newDescribeVcenterClients,++ -- * Request Lenses+ describeVcenterClients_maxResults,+ describeVcenterClients_nextToken,++ -- * Destructuring the Response+ DescribeVcenterClientsResponse (..),+ newDescribeVcenterClientsResponse,++ -- * Response Lenses+ describeVcenterClientsResponse_items,+ describeVcenterClientsResponse_nextToken,+ describeVcenterClientsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDescribeVcenterClients' smart constructor.+data DescribeVcenterClients = DescribeVcenterClients'+ { -- | Maximum results to be returned in DescribeVcenterClients.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | Next pagination token to be provided for DescribeVcenterClients.+ nextToken :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeVcenterClients' 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', 'describeVcenterClients_maxResults' - Maximum results to be returned in DescribeVcenterClients.+--+-- 'nextToken', 'describeVcenterClients_nextToken' - Next pagination token to be provided for DescribeVcenterClients.+newDescribeVcenterClients ::+ DescribeVcenterClients+newDescribeVcenterClients =+ DescribeVcenterClients'+ { maxResults =+ Prelude.Nothing,+ nextToken = Prelude.Nothing+ }++-- | Maximum results to be returned in DescribeVcenterClients.+describeVcenterClients_maxResults :: Lens.Lens' DescribeVcenterClients (Prelude.Maybe Prelude.Natural)+describeVcenterClients_maxResults = Lens.lens (\DescribeVcenterClients' {maxResults} -> maxResults) (\s@DescribeVcenterClients' {} a -> s {maxResults = a} :: DescribeVcenterClients)++-- | Next pagination token to be provided for DescribeVcenterClients.+describeVcenterClients_nextToken :: Lens.Lens' DescribeVcenterClients (Prelude.Maybe Prelude.Text)+describeVcenterClients_nextToken = Lens.lens (\DescribeVcenterClients' {nextToken} -> nextToken) (\s@DescribeVcenterClients' {} a -> s {nextToken = a} :: DescribeVcenterClients)++instance Core.AWSPager DescribeVcenterClients where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? describeVcenterClientsResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? describeVcenterClientsResponse_items+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& describeVcenterClients_nextToken+ Lens..~ rs+ Lens.^? describeVcenterClientsResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest DescribeVcenterClients where+ type+ AWSResponse DescribeVcenterClients =+ DescribeVcenterClientsResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribeVcenterClientsResponse'+ Prelude.<$> (x Data..?> "items" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "nextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DescribeVcenterClients where+ hashWithSalt _salt DescribeVcenterClients' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken++instance Prelude.NFData DescribeVcenterClients where+ rnf DescribeVcenterClients' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken++instance Data.ToHeaders DescribeVcenterClients where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath DescribeVcenterClients where+ toPath = Prelude.const "/DescribeVcenterClients"++instance Data.ToQuery DescribeVcenterClients where+ toQuery DescribeVcenterClients' {..} =+ Prelude.mconcat+ [ "maxResults" Data.=: maxResults,+ "nextToken" Data.=: nextToken+ ]++-- | /See:/ 'newDescribeVcenterClientsResponse' smart constructor.+data DescribeVcenterClientsResponse = DescribeVcenterClientsResponse'+ { -- | List of items returned by DescribeVcenterClients.+ items :: Prelude.Maybe [VcenterClient],+ -- | Next pagination token returned from DescribeVcenterClients.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeVcenterClientsResponse' 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:+--+-- 'items', 'describeVcenterClientsResponse_items' - List of items returned by DescribeVcenterClients.+--+-- 'nextToken', 'describeVcenterClientsResponse_nextToken' - Next pagination token returned from DescribeVcenterClients.+--+-- 'httpStatus', 'describeVcenterClientsResponse_httpStatus' - The response's http status code.+newDescribeVcenterClientsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeVcenterClientsResponse+newDescribeVcenterClientsResponse pHttpStatus_ =+ DescribeVcenterClientsResponse'+ { items =+ Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | List of items returned by DescribeVcenterClients.+describeVcenterClientsResponse_items :: Lens.Lens' DescribeVcenterClientsResponse (Prelude.Maybe [VcenterClient])+describeVcenterClientsResponse_items = Lens.lens (\DescribeVcenterClientsResponse' {items} -> items) (\s@DescribeVcenterClientsResponse' {} a -> s {items = a} :: DescribeVcenterClientsResponse) Prelude.. Lens.mapping Lens.coerced++-- | Next pagination token returned from DescribeVcenterClients.+describeVcenterClientsResponse_nextToken :: Lens.Lens' DescribeVcenterClientsResponse (Prelude.Maybe Prelude.Text)+describeVcenterClientsResponse_nextToken = Lens.lens (\DescribeVcenterClientsResponse' {nextToken} -> nextToken) (\s@DescribeVcenterClientsResponse' {} a -> s {nextToken = a} :: DescribeVcenterClientsResponse)++-- | The response's http status code.+describeVcenterClientsResponse_httpStatus :: Lens.Lens' DescribeVcenterClientsResponse Prelude.Int+describeVcenterClientsResponse_httpStatus = Lens.lens (\DescribeVcenterClientsResponse' {httpStatus} -> httpStatus) (\s@DescribeVcenterClientsResponse' {} a -> s {httpStatus = a} :: DescribeVcenterClientsResponse)++instance+ Prelude.NFData+ DescribeVcenterClientsResponse+ where+ rnf DescribeVcenterClientsResponse' {..} =+ Prelude.rnf items+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MGN/DisassociateApplications.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.MGN.DisassociateApplications+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Disassociate applications from wave.+module Amazonka.MGN.DisassociateApplications+ ( -- * Creating a Request+ DisassociateApplications (..),+ newDisassociateApplications,++ -- * Request Lenses+ disassociateApplications_applicationIDs,+ disassociateApplications_waveID,++ -- * Destructuring the Response+ DisassociateApplicationsResponse (..),+ newDisassociateApplicationsResponse,++ -- * Response Lenses+ disassociateApplicationsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDisassociateApplications' smart constructor.+data DisassociateApplications = DisassociateApplications'+ { -- | Application IDs list.+ applicationIDs :: Prelude.NonEmpty Prelude.Text,+ -- | Wave ID.+ waveID :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DisassociateApplications' 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:+--+-- 'applicationIDs', 'disassociateApplications_applicationIDs' - Application IDs list.+--+-- 'waveID', 'disassociateApplications_waveID' - Wave ID.+newDisassociateApplications ::+ -- | 'applicationIDs'+ Prelude.NonEmpty Prelude.Text ->+ -- | 'waveID'+ Prelude.Text ->+ DisassociateApplications+newDisassociateApplications pApplicationIDs_ pWaveID_ =+ DisassociateApplications'+ { applicationIDs =+ Lens.coerced Lens.# pApplicationIDs_,+ waveID = pWaveID_+ }++-- | Application IDs list.+disassociateApplications_applicationIDs :: Lens.Lens' DisassociateApplications (Prelude.NonEmpty Prelude.Text)+disassociateApplications_applicationIDs = Lens.lens (\DisassociateApplications' {applicationIDs} -> applicationIDs) (\s@DisassociateApplications' {} a -> s {applicationIDs = a} :: DisassociateApplications) Prelude.. Lens.coerced++-- | Wave ID.+disassociateApplications_waveID :: Lens.Lens' DisassociateApplications Prelude.Text+disassociateApplications_waveID = Lens.lens (\DisassociateApplications' {waveID} -> waveID) (\s@DisassociateApplications' {} a -> s {waveID = a} :: DisassociateApplications)++instance Core.AWSRequest DisassociateApplications where+ type+ AWSResponse DisassociateApplications =+ DisassociateApplicationsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ DisassociateApplicationsResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DisassociateApplications where+ hashWithSalt _salt DisassociateApplications' {..} =+ _salt+ `Prelude.hashWithSalt` applicationIDs+ `Prelude.hashWithSalt` waveID++instance Prelude.NFData DisassociateApplications where+ rnf DisassociateApplications' {..} =+ Prelude.rnf applicationIDs+ `Prelude.seq` Prelude.rnf waveID++instance Data.ToHeaders DisassociateApplications where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON DisassociateApplications where+ toJSON DisassociateApplications' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("applicationIDs" Data..= applicationIDs),+ Prelude.Just ("waveID" Data..= waveID)+ ]+ )++instance Data.ToPath DisassociateApplications where+ toPath = Prelude.const "/DisassociateApplications"++instance Data.ToQuery DisassociateApplications where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDisassociateApplicationsResponse' smart constructor.+data DisassociateApplicationsResponse = DisassociateApplicationsResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DisassociateApplicationsResponse' 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', 'disassociateApplicationsResponse_httpStatus' - The response's http status code.+newDisassociateApplicationsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DisassociateApplicationsResponse+newDisassociateApplicationsResponse pHttpStatus_ =+ DisassociateApplicationsResponse'+ { httpStatus =+ pHttpStatus_+ }++-- | The response's http status code.+disassociateApplicationsResponse_httpStatus :: Lens.Lens' DisassociateApplicationsResponse Prelude.Int+disassociateApplicationsResponse_httpStatus = Lens.lens (\DisassociateApplicationsResponse' {httpStatus} -> httpStatus) (\s@DisassociateApplicationsResponse' {} a -> s {httpStatus = a} :: DisassociateApplicationsResponse)++instance+ Prelude.NFData+ DisassociateApplicationsResponse+ where+ rnf DisassociateApplicationsResponse' {..} =+ Prelude.rnf httpStatus
+ gen/Amazonka/MGN/DisassociateSourceServers.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.MGN.DisassociateSourceServers+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Disassociate source servers from application.+module Amazonka.MGN.DisassociateSourceServers+ ( -- * Creating a Request+ DisassociateSourceServers (..),+ newDisassociateSourceServers,++ -- * Request Lenses+ disassociateSourceServers_applicationID,+ disassociateSourceServers_sourceServerIDs,++ -- * Destructuring the Response+ DisassociateSourceServersResponse (..),+ newDisassociateSourceServersResponse,++ -- * Response Lenses+ disassociateSourceServersResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDisassociateSourceServers' smart constructor.+data DisassociateSourceServers = DisassociateSourceServers'+ { -- | Application ID.+ applicationID :: Prelude.Text,+ -- | Source server IDs list.+ sourceServerIDs :: Prelude.NonEmpty Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DisassociateSourceServers' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationID', 'disassociateSourceServers_applicationID' - Application ID.+--+-- 'sourceServerIDs', 'disassociateSourceServers_sourceServerIDs' - Source server IDs list.+newDisassociateSourceServers ::+ -- | 'applicationID'+ Prelude.Text ->+ -- | 'sourceServerIDs'+ Prelude.NonEmpty Prelude.Text ->+ DisassociateSourceServers+newDisassociateSourceServers+ pApplicationID_+ pSourceServerIDs_ =+ DisassociateSourceServers'+ { applicationID =+ pApplicationID_,+ sourceServerIDs =+ Lens.coerced Lens.# pSourceServerIDs_+ }++-- | Application ID.+disassociateSourceServers_applicationID :: Lens.Lens' DisassociateSourceServers Prelude.Text+disassociateSourceServers_applicationID = Lens.lens (\DisassociateSourceServers' {applicationID} -> applicationID) (\s@DisassociateSourceServers' {} a -> s {applicationID = a} :: DisassociateSourceServers)++-- | Source server IDs list.+disassociateSourceServers_sourceServerIDs :: Lens.Lens' DisassociateSourceServers (Prelude.NonEmpty Prelude.Text)+disassociateSourceServers_sourceServerIDs = Lens.lens (\DisassociateSourceServers' {sourceServerIDs} -> sourceServerIDs) (\s@DisassociateSourceServers' {} a -> s {sourceServerIDs = a} :: DisassociateSourceServers) Prelude.. Lens.coerced++instance Core.AWSRequest DisassociateSourceServers where+ type+ AWSResponse DisassociateSourceServers =+ DisassociateSourceServersResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ DisassociateSourceServersResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DisassociateSourceServers where+ hashWithSalt _salt DisassociateSourceServers' {..} =+ _salt+ `Prelude.hashWithSalt` applicationID+ `Prelude.hashWithSalt` sourceServerIDs++instance Prelude.NFData DisassociateSourceServers where+ rnf DisassociateSourceServers' {..} =+ Prelude.rnf applicationID+ `Prelude.seq` Prelude.rnf sourceServerIDs++instance Data.ToHeaders DisassociateSourceServers where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON DisassociateSourceServers where+ toJSON DisassociateSourceServers' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("applicationID" Data..= applicationID),+ Prelude.Just+ ("sourceServerIDs" Data..= sourceServerIDs)+ ]+ )++instance Data.ToPath DisassociateSourceServers where+ toPath = Prelude.const "/DisassociateSourceServers"++instance Data.ToQuery DisassociateSourceServers where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDisassociateSourceServersResponse' smart constructor.+data DisassociateSourceServersResponse = DisassociateSourceServersResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DisassociateSourceServersResponse' 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', 'disassociateSourceServersResponse_httpStatus' - The response's http status code.+newDisassociateSourceServersResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DisassociateSourceServersResponse+newDisassociateSourceServersResponse pHttpStatus_ =+ DisassociateSourceServersResponse'+ { httpStatus =+ pHttpStatus_+ }++-- | The response's http status code.+disassociateSourceServersResponse_httpStatus :: Lens.Lens' DisassociateSourceServersResponse Prelude.Int+disassociateSourceServersResponse_httpStatus = Lens.lens (\DisassociateSourceServersResponse' {httpStatus} -> httpStatus) (\s@DisassociateSourceServersResponse' {} a -> s {httpStatus = a} :: DisassociateSourceServersResponse)++instance+ Prelude.NFData+ DisassociateSourceServersResponse+ where+ rnf DisassociateSourceServersResponse' {..} =+ Prelude.rnf httpStatus
+ gen/Amazonka/MGN/DisconnectFromService.hs view
@@ -0,0 +1,142 @@+{-# 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.MGN.DisconnectFromService+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Disconnects specific Source Servers from Application Migration Service.+-- Data replication is stopped immediately. All AWS resources created by+-- Application Migration Service for enabling the replication of these+-- source servers will be terminated \/ deleted within 90 minutes. Launched+-- Test or Cutover instances will NOT be terminated. If the agent on the+-- source server has not been prevented from communicating with the+-- Application Migration Service service, then it will receive a command to+-- uninstall itself (within approximately 10 minutes). The following+-- properties of the SourceServer will be changed immediately:+-- dataReplicationInfo.dataReplicationState will be set to DISCONNECTED;+-- The totalStorageBytes property for each of+-- dataReplicationInfo.replicatedDisks will be set to zero;+-- dataReplicationInfo.lagDuration and dataReplicationInfo.lagDuration will+-- be nullified.+module Amazonka.MGN.DisconnectFromService+ ( -- * Creating a Request+ DisconnectFromService (..),+ newDisconnectFromService,++ -- * Request Lenses+ disconnectFromService_sourceServerID,++ -- * Destructuring the Response+ SourceServer (..),+ newSourceServer,++ -- * Response Lenses+ sourceServer_applicationID,+ sourceServer_arn,+ sourceServer_dataReplicationInfo,+ sourceServer_isArchived,+ sourceServer_launchedInstance,+ sourceServer_lifeCycle,+ sourceServer_replicationType,+ sourceServer_sourceProperties,+ sourceServer_sourceServerID,+ sourceServer_tags,+ sourceServer_vcenterClientID,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDisconnectFromService' smart constructor.+data DisconnectFromService = DisconnectFromService'+ { -- | Request to disconnect Source Server from service by Server ID.+ sourceServerID :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DisconnectFromService' 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:+--+-- 'sourceServerID', 'disconnectFromService_sourceServerID' - Request to disconnect Source Server from service by Server ID.+newDisconnectFromService ::+ -- | 'sourceServerID'+ Prelude.Text ->+ DisconnectFromService+newDisconnectFromService pSourceServerID_ =+ DisconnectFromService'+ { sourceServerID =+ pSourceServerID_+ }++-- | Request to disconnect Source Server from service by Server ID.+disconnectFromService_sourceServerID :: Lens.Lens' DisconnectFromService Prelude.Text+disconnectFromService_sourceServerID = Lens.lens (\DisconnectFromService' {sourceServerID} -> sourceServerID) (\s@DisconnectFromService' {} a -> s {sourceServerID = a} :: DisconnectFromService)++instance Core.AWSRequest DisconnectFromService where+ type AWSResponse DisconnectFromService = SourceServer+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ (\s h x -> Data.eitherParseJSON x)++instance Prelude.Hashable DisconnectFromService where+ hashWithSalt _salt DisconnectFromService' {..} =+ _salt `Prelude.hashWithSalt` sourceServerID++instance Prelude.NFData DisconnectFromService where+ rnf DisconnectFromService' {..} =+ Prelude.rnf sourceServerID++instance Data.ToHeaders DisconnectFromService where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON DisconnectFromService where+ toJSON DisconnectFromService' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("sourceServerID" Data..= sourceServerID)+ ]+ )++instance Data.ToPath DisconnectFromService where+ toPath = Prelude.const "/DisconnectFromService"++instance Data.ToQuery DisconnectFromService where+ toQuery = Prelude.const Prelude.mempty
+ gen/Amazonka/MGN/FinalizeCutover.hs view
@@ -0,0 +1,136 @@+{-# 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.MGN.FinalizeCutover+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Finalizes the cutover immediately for specific Source Servers. All AWS+-- resources created by Application Migration Service for enabling the+-- replication of these source servers will be terminated \/ deleted within+-- 90 minutes. Launched Test or Cutover instances will NOT be terminated.+-- The AWS Replication Agent will receive a command to uninstall itself+-- (within 10 minutes). The following properties of the SourceServer will+-- be changed immediately: dataReplicationInfo.dataReplicationState will be+-- changed to DISCONNECTED; The SourceServer.lifeCycle.state will be+-- changed to CUTOVER; The totalStorageBytes property fo each of+-- dataReplicationInfo.replicatedDisks will be set to zero;+-- dataReplicationInfo.lagDuration and dataReplicationInfo.lagDuration will+-- be nullified.+module Amazonka.MGN.FinalizeCutover+ ( -- * Creating a Request+ FinalizeCutover (..),+ newFinalizeCutover,++ -- * Request Lenses+ finalizeCutover_sourceServerID,++ -- * Destructuring the Response+ SourceServer (..),+ newSourceServer,++ -- * Response Lenses+ sourceServer_applicationID,+ sourceServer_arn,+ sourceServer_dataReplicationInfo,+ sourceServer_isArchived,+ sourceServer_launchedInstance,+ sourceServer_lifeCycle,+ sourceServer_replicationType,+ sourceServer_sourceProperties,+ sourceServer_sourceServerID,+ sourceServer_tags,+ sourceServer_vcenterClientID,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newFinalizeCutover' smart constructor.+data FinalizeCutover = FinalizeCutover'+ { -- | Request to finalize Cutover by Source Server ID.+ sourceServerID :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'FinalizeCutover' 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:+--+-- 'sourceServerID', 'finalizeCutover_sourceServerID' - Request to finalize Cutover by Source Server ID.+newFinalizeCutover ::+ -- | 'sourceServerID'+ Prelude.Text ->+ FinalizeCutover+newFinalizeCutover pSourceServerID_ =+ FinalizeCutover' {sourceServerID = pSourceServerID_}++-- | Request to finalize Cutover by Source Server ID.+finalizeCutover_sourceServerID :: Lens.Lens' FinalizeCutover Prelude.Text+finalizeCutover_sourceServerID = Lens.lens (\FinalizeCutover' {sourceServerID} -> sourceServerID) (\s@FinalizeCutover' {} a -> s {sourceServerID = a} :: FinalizeCutover)++instance Core.AWSRequest FinalizeCutover where+ type AWSResponse FinalizeCutover = SourceServer+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ (\s h x -> Data.eitherParseJSON x)++instance Prelude.Hashable FinalizeCutover where+ hashWithSalt _salt FinalizeCutover' {..} =+ _salt `Prelude.hashWithSalt` sourceServerID++instance Prelude.NFData FinalizeCutover where+ rnf FinalizeCutover' {..} = Prelude.rnf sourceServerID++instance Data.ToHeaders FinalizeCutover where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON FinalizeCutover where+ toJSON FinalizeCutover' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("sourceServerID" Data..= sourceServerID)+ ]+ )++instance Data.ToPath FinalizeCutover where+ toPath = Prelude.const "/FinalizeCutover"++instance Data.ToQuery FinalizeCutover where+ toQuery = Prelude.const Prelude.mempty
+ gen/Amazonka/MGN/GetLaunchConfiguration.hs view
@@ -0,0 +1,132 @@+{-# 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.MGN.GetLaunchConfiguration+-- 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 LaunchConfigurations available, filtered by Source Server IDs.+module Amazonka.MGN.GetLaunchConfiguration+ ( -- * Creating a Request+ GetLaunchConfiguration (..),+ newGetLaunchConfiguration,++ -- * Request Lenses+ getLaunchConfiguration_sourceServerID,++ -- * Destructuring the Response+ LaunchConfiguration (..),+ newLaunchConfiguration,++ -- * Response Lenses+ launchConfiguration_bootMode,+ launchConfiguration_copyPrivateIp,+ launchConfiguration_copyTags,+ launchConfiguration_ec2LaunchTemplateID,+ launchConfiguration_enableMapAutoTagging,+ launchConfiguration_launchDisposition,+ launchConfiguration_licensing,+ launchConfiguration_mapAutoTaggingMpeID,+ launchConfiguration_name,+ launchConfiguration_postLaunchActions,+ launchConfiguration_sourceServerID,+ launchConfiguration_targetInstanceTypeRightSizingMethod,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetLaunchConfiguration' smart constructor.+data GetLaunchConfiguration = GetLaunchConfiguration'+ { -- | Request to get Launch Configuration information by Source Server ID.+ sourceServerID :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetLaunchConfiguration' 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:+--+-- 'sourceServerID', 'getLaunchConfiguration_sourceServerID' - Request to get Launch Configuration information by Source Server ID.+newGetLaunchConfiguration ::+ -- | 'sourceServerID'+ Prelude.Text ->+ GetLaunchConfiguration+newGetLaunchConfiguration pSourceServerID_ =+ GetLaunchConfiguration'+ { sourceServerID =+ pSourceServerID_+ }++-- | Request to get Launch Configuration information by Source Server ID.+getLaunchConfiguration_sourceServerID :: Lens.Lens' GetLaunchConfiguration Prelude.Text+getLaunchConfiguration_sourceServerID = Lens.lens (\GetLaunchConfiguration' {sourceServerID} -> sourceServerID) (\s@GetLaunchConfiguration' {} a -> s {sourceServerID = a} :: GetLaunchConfiguration)++instance Core.AWSRequest GetLaunchConfiguration where+ type+ AWSResponse GetLaunchConfiguration =+ LaunchConfiguration+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ (\s h x -> Data.eitherParseJSON x)++instance Prelude.Hashable GetLaunchConfiguration where+ hashWithSalt _salt GetLaunchConfiguration' {..} =+ _salt `Prelude.hashWithSalt` sourceServerID++instance Prelude.NFData GetLaunchConfiguration where+ rnf GetLaunchConfiguration' {..} =+ Prelude.rnf sourceServerID++instance Data.ToHeaders GetLaunchConfiguration where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON GetLaunchConfiguration where+ toJSON GetLaunchConfiguration' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("sourceServerID" Data..= sourceServerID)+ ]+ )++instance Data.ToPath GetLaunchConfiguration where+ toPath = Prelude.const "/GetLaunchConfiguration"++instance Data.ToQuery GetLaunchConfiguration where+ toQuery = Prelude.const Prelude.mempty
+ gen/Amazonka/MGN/GetReplicationConfiguration.hs view
@@ -0,0 +1,135 @@+{-# 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.MGN.GetReplicationConfiguration+-- 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 ReplicationConfigurations, filtered by Source Server ID.+module Amazonka.MGN.GetReplicationConfiguration+ ( -- * Creating a Request+ GetReplicationConfiguration (..),+ newGetReplicationConfiguration,++ -- * Request Lenses+ getReplicationConfiguration_sourceServerID,++ -- * Destructuring the Response+ ReplicationConfiguration (..),+ newReplicationConfiguration,++ -- * Response Lenses+ replicationConfiguration_associateDefaultSecurityGroup,+ replicationConfiguration_bandwidthThrottling,+ replicationConfiguration_createPublicIP,+ replicationConfiguration_dataPlaneRouting,+ replicationConfiguration_defaultLargeStagingDiskType,+ replicationConfiguration_ebsEncryption,+ replicationConfiguration_ebsEncryptionKeyArn,+ replicationConfiguration_name,+ replicationConfiguration_replicatedDisks,+ replicationConfiguration_replicationServerInstanceType,+ replicationConfiguration_replicationServersSecurityGroupsIDs,+ replicationConfiguration_sourceServerID,+ replicationConfiguration_stagingAreaSubnetId,+ replicationConfiguration_stagingAreaTags,+ replicationConfiguration_useDedicatedReplicationServer,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetReplicationConfiguration' smart constructor.+data GetReplicationConfiguration = GetReplicationConfiguration'+ { -- | Request to get Replication Configuration by Source Server ID.+ sourceServerID :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetReplicationConfiguration' 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:+--+-- 'sourceServerID', 'getReplicationConfiguration_sourceServerID' - Request to get Replication Configuration by Source Server ID.+newGetReplicationConfiguration ::+ -- | 'sourceServerID'+ Prelude.Text ->+ GetReplicationConfiguration+newGetReplicationConfiguration pSourceServerID_ =+ GetReplicationConfiguration'+ { sourceServerID =+ pSourceServerID_+ }++-- | Request to get Replication Configuration by Source Server ID.+getReplicationConfiguration_sourceServerID :: Lens.Lens' GetReplicationConfiguration Prelude.Text+getReplicationConfiguration_sourceServerID = Lens.lens (\GetReplicationConfiguration' {sourceServerID} -> sourceServerID) (\s@GetReplicationConfiguration' {} a -> s {sourceServerID = a} :: GetReplicationConfiguration)++instance Core.AWSRequest GetReplicationConfiguration where+ type+ AWSResponse GetReplicationConfiguration =+ ReplicationConfiguration+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ (\s h x -> Data.eitherParseJSON x)++instance Prelude.Hashable GetReplicationConfiguration where+ hashWithSalt _salt GetReplicationConfiguration' {..} =+ _salt `Prelude.hashWithSalt` sourceServerID++instance Prelude.NFData GetReplicationConfiguration where+ rnf GetReplicationConfiguration' {..} =+ Prelude.rnf sourceServerID++instance Data.ToHeaders GetReplicationConfiguration where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON GetReplicationConfiguration where+ toJSON GetReplicationConfiguration' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("sourceServerID" Data..= sourceServerID)+ ]+ )++instance Data.ToPath GetReplicationConfiguration where+ toPath = Prelude.const "/GetReplicationConfiguration"++instance Data.ToQuery GetReplicationConfiguration where+ toQuery = Prelude.const Prelude.mempty
+ gen/Amazonka/MGN/InitializeService.hs view
@@ -0,0 +1,132 @@+{-# 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.MGN.InitializeService+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Initialize Application Migration Service.+module Amazonka.MGN.InitializeService+ ( -- * Creating a Request+ InitializeService (..),+ newInitializeService,++ -- * Destructuring the Response+ InitializeServiceResponse (..),+ newInitializeServiceResponse,++ -- * Response Lenses+ initializeServiceResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newInitializeService' smart constructor.+data InitializeService = InitializeService'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'InitializeService' 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.+newInitializeService ::+ InitializeService+newInitializeService = InitializeService'++instance Core.AWSRequest InitializeService where+ type+ AWSResponse InitializeService =+ InitializeServiceResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ InitializeServiceResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable InitializeService where+ hashWithSalt _salt _ =+ _salt `Prelude.hashWithSalt` ()++instance Prelude.NFData InitializeService where+ rnf _ = ()++instance Data.ToHeaders InitializeService where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON InitializeService where+ toJSON = Prelude.const (Data.Object Prelude.mempty)++instance Data.ToPath InitializeService where+ toPath = Prelude.const "/InitializeService"++instance Data.ToQuery InitializeService where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newInitializeServiceResponse' smart constructor.+data InitializeServiceResponse = InitializeServiceResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'InitializeServiceResponse' 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', 'initializeServiceResponse_httpStatus' - The response's http status code.+newInitializeServiceResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ InitializeServiceResponse+newInitializeServiceResponse pHttpStatus_ =+ InitializeServiceResponse'+ { httpStatus =+ pHttpStatus_+ }++-- | The response's http status code.+initializeServiceResponse_httpStatus :: Lens.Lens' InitializeServiceResponse Prelude.Int+initializeServiceResponse_httpStatus = Lens.lens (\InitializeServiceResponse' {httpStatus} -> httpStatus) (\s@InitializeServiceResponse' {} a -> s {httpStatus = a} :: InitializeServiceResponse)++instance Prelude.NFData InitializeServiceResponse where+ rnf InitializeServiceResponse' {..} =+ Prelude.rnf httpStatus
+ gen/Amazonka/MGN/Lens.hs view
@@ -0,0 +1,1125 @@+{-# 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.MGN.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.MGN.Lens+ ( -- * Operations++ -- ** ArchiveApplication+ archiveApplication_applicationID,+ application_applicationAggregatedStatus,+ application_applicationID,+ application_arn,+ application_creationDateTime,+ application_description,+ application_isArchived,+ application_lastModifiedDateTime,+ application_name,+ application_tags,+ application_waveID,++ -- ** ArchiveWave+ archiveWave_waveID,+ wave_arn,+ wave_creationDateTime,+ wave_description,+ wave_isArchived,+ wave_lastModifiedDateTime,+ wave_name,+ wave_tags,+ wave_waveAggregatedStatus,+ wave_waveID,++ -- ** AssociateApplications+ associateApplications_applicationIDs,+ associateApplications_waveID,+ associateApplicationsResponse_httpStatus,++ -- ** AssociateSourceServers+ associateSourceServers_applicationID,+ associateSourceServers_sourceServerIDs,+ associateSourceServersResponse_httpStatus,++ -- ** ChangeServerLifeCycleState+ changeServerLifeCycleState_lifeCycle,+ changeServerLifeCycleState_sourceServerID,+ sourceServer_applicationID,+ sourceServer_arn,+ sourceServer_dataReplicationInfo,+ sourceServer_isArchived,+ sourceServer_launchedInstance,+ sourceServer_lifeCycle,+ sourceServer_replicationType,+ sourceServer_sourceProperties,+ sourceServer_sourceServerID,+ sourceServer_tags,+ sourceServer_vcenterClientID,++ -- ** CreateApplication+ createApplication_description,+ createApplication_tags,+ createApplication_name,+ application_applicationAggregatedStatus,+ application_applicationID,+ application_arn,+ application_creationDateTime,+ application_description,+ application_isArchived,+ application_lastModifiedDateTime,+ application_name,+ application_tags,+ application_waveID,++ -- ** CreateLaunchConfigurationTemplate+ createLaunchConfigurationTemplate_associatePublicIpAddress,+ createLaunchConfigurationTemplate_bootMode,+ createLaunchConfigurationTemplate_copyPrivateIp,+ createLaunchConfigurationTemplate_copyTags,+ createLaunchConfigurationTemplate_enableMapAutoTagging,+ createLaunchConfigurationTemplate_largeVolumeConf,+ createLaunchConfigurationTemplate_launchDisposition,+ createLaunchConfigurationTemplate_licensing,+ createLaunchConfigurationTemplate_mapAutoTaggingMpeID,+ createLaunchConfigurationTemplate_postLaunchActions,+ createLaunchConfigurationTemplate_smallVolumeConf,+ createLaunchConfigurationTemplate_smallVolumeMaxSize,+ createLaunchConfigurationTemplate_tags,+ createLaunchConfigurationTemplate_targetInstanceTypeRightSizingMethod,+ launchConfigurationTemplate_arn,+ launchConfigurationTemplate_associatePublicIpAddress,+ launchConfigurationTemplate_bootMode,+ launchConfigurationTemplate_copyPrivateIp,+ launchConfigurationTemplate_copyTags,+ launchConfigurationTemplate_ec2LaunchTemplateID,+ launchConfigurationTemplate_enableMapAutoTagging,+ launchConfigurationTemplate_largeVolumeConf,+ launchConfigurationTemplate_launchDisposition,+ launchConfigurationTemplate_licensing,+ launchConfigurationTemplate_mapAutoTaggingMpeID,+ launchConfigurationTemplate_postLaunchActions,+ launchConfigurationTemplate_smallVolumeConf,+ launchConfigurationTemplate_smallVolumeMaxSize,+ launchConfigurationTemplate_tags,+ launchConfigurationTemplate_targetInstanceTypeRightSizingMethod,+ launchConfigurationTemplate_launchConfigurationTemplateID,++ -- ** CreateReplicationConfigurationTemplate+ createReplicationConfigurationTemplate_ebsEncryptionKeyArn,+ createReplicationConfigurationTemplate_tags,+ createReplicationConfigurationTemplate_associateDefaultSecurityGroup,+ createReplicationConfigurationTemplate_bandwidthThrottling,+ createReplicationConfigurationTemplate_createPublicIP,+ createReplicationConfigurationTemplate_dataPlaneRouting,+ createReplicationConfigurationTemplate_defaultLargeStagingDiskType,+ createReplicationConfigurationTemplate_ebsEncryption,+ createReplicationConfigurationTemplate_replicationServerInstanceType,+ createReplicationConfigurationTemplate_replicationServersSecurityGroupsIDs,+ createReplicationConfigurationTemplate_stagingAreaSubnetId,+ createReplicationConfigurationTemplate_stagingAreaTags,+ createReplicationConfigurationTemplate_useDedicatedReplicationServer,+ replicationConfigurationTemplate_arn,+ replicationConfigurationTemplate_associateDefaultSecurityGroup,+ replicationConfigurationTemplate_bandwidthThrottling,+ replicationConfigurationTemplate_createPublicIP,+ replicationConfigurationTemplate_dataPlaneRouting,+ replicationConfigurationTemplate_defaultLargeStagingDiskType,+ replicationConfigurationTemplate_ebsEncryption,+ replicationConfigurationTemplate_ebsEncryptionKeyArn,+ replicationConfigurationTemplate_replicationServerInstanceType,+ replicationConfigurationTemplate_replicationServersSecurityGroupsIDs,+ replicationConfigurationTemplate_stagingAreaSubnetId,+ replicationConfigurationTemplate_stagingAreaTags,+ replicationConfigurationTemplate_tags,+ replicationConfigurationTemplate_useDedicatedReplicationServer,+ replicationConfigurationTemplate_replicationConfigurationTemplateID,++ -- ** CreateWave+ createWave_description,+ createWave_tags,+ createWave_name,+ wave_arn,+ wave_creationDateTime,+ wave_description,+ wave_isArchived,+ wave_lastModifiedDateTime,+ wave_name,+ wave_tags,+ wave_waveAggregatedStatus,+ wave_waveID,++ -- ** DeleteApplication+ deleteApplication_applicationID,+ deleteApplicationResponse_httpStatus,++ -- ** DeleteJob+ deleteJob_jobID,+ deleteJobResponse_httpStatus,++ -- ** DeleteLaunchConfigurationTemplate+ deleteLaunchConfigurationTemplate_launchConfigurationTemplateID,+ deleteLaunchConfigurationTemplateResponse_httpStatus,++ -- ** DeleteReplicationConfigurationTemplate+ deleteReplicationConfigurationTemplate_replicationConfigurationTemplateID,+ deleteReplicationConfigurationTemplateResponse_httpStatus,++ -- ** DeleteSourceServer+ deleteSourceServer_sourceServerID,+ deleteSourceServerResponse_httpStatus,++ -- ** DeleteVcenterClient+ deleteVcenterClient_vcenterClientID,++ -- ** DeleteWave+ deleteWave_waveID,+ deleteWaveResponse_httpStatus,++ -- ** DescribeJobLogItems+ describeJobLogItems_maxResults,+ describeJobLogItems_nextToken,+ describeJobLogItems_jobID,+ describeJobLogItemsResponse_items,+ describeJobLogItemsResponse_nextToken,+ describeJobLogItemsResponse_httpStatus,++ -- ** DescribeJobs+ describeJobs_filters,+ describeJobs_maxResults,+ describeJobs_nextToken,+ describeJobsResponse_items,+ describeJobsResponse_nextToken,+ describeJobsResponse_httpStatus,++ -- ** DescribeLaunchConfigurationTemplates+ describeLaunchConfigurationTemplates_launchConfigurationTemplateIDs,+ describeLaunchConfigurationTemplates_maxResults,+ describeLaunchConfigurationTemplates_nextToken,+ describeLaunchConfigurationTemplatesResponse_items,+ describeLaunchConfigurationTemplatesResponse_nextToken,+ describeLaunchConfigurationTemplatesResponse_httpStatus,++ -- ** DescribeReplicationConfigurationTemplates+ describeReplicationConfigurationTemplates_maxResults,+ describeReplicationConfigurationTemplates_nextToken,+ describeReplicationConfigurationTemplates_replicationConfigurationTemplateIDs,+ describeReplicationConfigurationTemplatesResponse_items,+ describeReplicationConfigurationTemplatesResponse_nextToken,+ describeReplicationConfigurationTemplatesResponse_httpStatus,++ -- ** DescribeSourceServers+ describeSourceServers_filters,+ describeSourceServers_maxResults,+ describeSourceServers_nextToken,+ describeSourceServersResponse_items,+ describeSourceServersResponse_nextToken,+ describeSourceServersResponse_httpStatus,++ -- ** DescribeVcenterClients+ describeVcenterClients_maxResults,+ describeVcenterClients_nextToken,+ describeVcenterClientsResponse_items,+ describeVcenterClientsResponse_nextToken,+ describeVcenterClientsResponse_httpStatus,++ -- ** DisassociateApplications+ disassociateApplications_applicationIDs,+ disassociateApplications_waveID,+ disassociateApplicationsResponse_httpStatus,++ -- ** DisassociateSourceServers+ disassociateSourceServers_applicationID,+ disassociateSourceServers_sourceServerIDs,+ disassociateSourceServersResponse_httpStatus,++ -- ** DisconnectFromService+ disconnectFromService_sourceServerID,+ sourceServer_applicationID,+ sourceServer_arn,+ sourceServer_dataReplicationInfo,+ sourceServer_isArchived,+ sourceServer_launchedInstance,+ sourceServer_lifeCycle,+ sourceServer_replicationType,+ sourceServer_sourceProperties,+ sourceServer_sourceServerID,+ sourceServer_tags,+ sourceServer_vcenterClientID,++ -- ** FinalizeCutover+ finalizeCutover_sourceServerID,+ sourceServer_applicationID,+ sourceServer_arn,+ sourceServer_dataReplicationInfo,+ sourceServer_isArchived,+ sourceServer_launchedInstance,+ sourceServer_lifeCycle,+ sourceServer_replicationType,+ sourceServer_sourceProperties,+ sourceServer_sourceServerID,+ sourceServer_tags,+ sourceServer_vcenterClientID,++ -- ** GetLaunchConfiguration+ getLaunchConfiguration_sourceServerID,+ launchConfiguration_bootMode,+ launchConfiguration_copyPrivateIp,+ launchConfiguration_copyTags,+ launchConfiguration_ec2LaunchTemplateID,+ launchConfiguration_enableMapAutoTagging,+ launchConfiguration_launchDisposition,+ launchConfiguration_licensing,+ launchConfiguration_mapAutoTaggingMpeID,+ launchConfiguration_name,+ launchConfiguration_postLaunchActions,+ launchConfiguration_sourceServerID,+ launchConfiguration_targetInstanceTypeRightSizingMethod,++ -- ** GetReplicationConfiguration+ getReplicationConfiguration_sourceServerID,+ replicationConfiguration_associateDefaultSecurityGroup,+ replicationConfiguration_bandwidthThrottling,+ replicationConfiguration_createPublicIP,+ replicationConfiguration_dataPlaneRouting,+ replicationConfiguration_defaultLargeStagingDiskType,+ replicationConfiguration_ebsEncryption,+ replicationConfiguration_ebsEncryptionKeyArn,+ replicationConfiguration_name,+ replicationConfiguration_replicatedDisks,+ replicationConfiguration_replicationServerInstanceType,+ replicationConfiguration_replicationServersSecurityGroupsIDs,+ replicationConfiguration_sourceServerID,+ replicationConfiguration_stagingAreaSubnetId,+ replicationConfiguration_stagingAreaTags,+ replicationConfiguration_useDedicatedReplicationServer,++ -- ** InitializeService+ initializeServiceResponse_httpStatus,++ -- ** ListApplications+ listApplications_filters,+ listApplications_maxResults,+ listApplications_nextToken,+ listApplicationsResponse_items,+ listApplicationsResponse_nextToken,+ listApplicationsResponse_httpStatus,++ -- ** ListSourceServerActions+ listSourceServerActions_filters,+ listSourceServerActions_maxResults,+ listSourceServerActions_nextToken,+ listSourceServerActions_sourceServerID,+ listSourceServerActionsResponse_items,+ listSourceServerActionsResponse_nextToken,+ listSourceServerActionsResponse_httpStatus,++ -- ** ListTagsForResource+ listTagsForResource_resourceArn,+ listTagsForResourceResponse_tags,+ listTagsForResourceResponse_httpStatus,++ -- ** ListTemplateActions+ listTemplateActions_filters,+ listTemplateActions_maxResults,+ listTemplateActions_nextToken,+ listTemplateActions_launchConfigurationTemplateID,+ listTemplateActionsResponse_items,+ listTemplateActionsResponse_nextToken,+ listTemplateActionsResponse_httpStatus,++ -- ** ListWaves+ listWaves_filters,+ listWaves_maxResults,+ listWaves_nextToken,+ listWavesResponse_items,+ listWavesResponse_nextToken,+ listWavesResponse_httpStatus,++ -- ** MarkAsArchived+ markAsArchived_sourceServerID,+ sourceServer_applicationID,+ sourceServer_arn,+ sourceServer_dataReplicationInfo,+ sourceServer_isArchived,+ sourceServer_launchedInstance,+ sourceServer_lifeCycle,+ sourceServer_replicationType,+ sourceServer_sourceProperties,+ sourceServer_sourceServerID,+ sourceServer_tags,+ sourceServer_vcenterClientID,++ -- ** PutSourceServerAction+ putSourceServerAction_active,+ putSourceServerAction_documentVersion,+ putSourceServerAction_mustSucceedForCutover,+ putSourceServerAction_parameters,+ putSourceServerAction_timeoutSeconds,+ putSourceServerAction_actionID,+ putSourceServerAction_actionName,+ putSourceServerAction_documentIdentifier,+ putSourceServerAction_order,+ putSourceServerAction_sourceServerID,+ sourceServerActionDocument_actionID,+ sourceServerActionDocument_actionName,+ sourceServerActionDocument_active,+ sourceServerActionDocument_documentIdentifier,+ sourceServerActionDocument_documentVersion,+ sourceServerActionDocument_mustSucceedForCutover,+ sourceServerActionDocument_order,+ sourceServerActionDocument_parameters,+ sourceServerActionDocument_timeoutSeconds,++ -- ** PutTemplateAction+ putTemplateAction_active,+ putTemplateAction_documentVersion,+ putTemplateAction_mustSucceedForCutover,+ putTemplateAction_operatingSystem,+ putTemplateAction_parameters,+ putTemplateAction_timeoutSeconds,+ putTemplateAction_actionID,+ putTemplateAction_actionName,+ putTemplateAction_documentIdentifier,+ putTemplateAction_launchConfigurationTemplateID,+ putTemplateAction_order,+ templateActionDocument_actionID,+ templateActionDocument_actionName,+ templateActionDocument_active,+ templateActionDocument_documentIdentifier,+ templateActionDocument_documentVersion,+ templateActionDocument_mustSucceedForCutover,+ templateActionDocument_operatingSystem,+ templateActionDocument_order,+ templateActionDocument_parameters,+ templateActionDocument_timeoutSeconds,++ -- ** RemoveSourceServerAction+ removeSourceServerAction_actionID,+ removeSourceServerAction_sourceServerID,+ removeSourceServerActionResponse_httpStatus,++ -- ** RemoveTemplateAction+ removeTemplateAction_actionID,+ removeTemplateAction_launchConfigurationTemplateID,+ removeTemplateActionResponse_httpStatus,++ -- ** RetryDataReplication+ retryDataReplication_sourceServerID,+ sourceServer_applicationID,+ sourceServer_arn,+ sourceServer_dataReplicationInfo,+ sourceServer_isArchived,+ sourceServer_launchedInstance,+ sourceServer_lifeCycle,+ sourceServer_replicationType,+ sourceServer_sourceProperties,+ sourceServer_sourceServerID,+ sourceServer_tags,+ sourceServer_vcenterClientID,++ -- ** StartCutover+ startCutover_tags,+ startCutover_sourceServerIDs,+ startCutoverResponse_job,+ startCutoverResponse_httpStatus,++ -- ** StartReplication+ startReplication_sourceServerID,+ sourceServer_applicationID,+ sourceServer_arn,+ sourceServer_dataReplicationInfo,+ sourceServer_isArchived,+ sourceServer_launchedInstance,+ sourceServer_lifeCycle,+ sourceServer_replicationType,+ sourceServer_sourceProperties,+ sourceServer_sourceServerID,+ sourceServer_tags,+ sourceServer_vcenterClientID,++ -- ** StartTest+ startTest_tags,+ startTest_sourceServerIDs,+ startTestResponse_job,+ startTestResponse_httpStatus,++ -- ** TagResource+ tagResource_resourceArn,+ tagResource_tags,++ -- ** TerminateTargetInstances+ terminateTargetInstances_tags,+ terminateTargetInstances_sourceServerIDs,+ terminateTargetInstancesResponse_job,+ terminateTargetInstancesResponse_httpStatus,++ -- ** UnarchiveApplication+ unarchiveApplication_applicationID,+ application_applicationAggregatedStatus,+ application_applicationID,+ application_arn,+ application_creationDateTime,+ application_description,+ application_isArchived,+ application_lastModifiedDateTime,+ application_name,+ application_tags,+ application_waveID,++ -- ** UnarchiveWave+ unarchiveWave_waveID,+ wave_arn,+ wave_creationDateTime,+ wave_description,+ wave_isArchived,+ wave_lastModifiedDateTime,+ wave_name,+ wave_tags,+ wave_waveAggregatedStatus,+ wave_waveID,++ -- ** UntagResource+ untagResource_resourceArn,+ untagResource_tagKeys,++ -- ** UpdateApplication+ updateApplication_description,+ updateApplication_name,+ updateApplication_applicationID,+ application_applicationAggregatedStatus,+ application_applicationID,+ application_arn,+ application_creationDateTime,+ application_description,+ application_isArchived,+ application_lastModifiedDateTime,+ application_name,+ application_tags,+ application_waveID,++ -- ** UpdateLaunchConfiguration+ updateLaunchConfiguration_bootMode,+ updateLaunchConfiguration_copyPrivateIp,+ updateLaunchConfiguration_copyTags,+ updateLaunchConfiguration_enableMapAutoTagging,+ updateLaunchConfiguration_launchDisposition,+ updateLaunchConfiguration_licensing,+ updateLaunchConfiguration_mapAutoTaggingMpeID,+ updateLaunchConfiguration_name,+ updateLaunchConfiguration_postLaunchActions,+ updateLaunchConfiguration_targetInstanceTypeRightSizingMethod,+ updateLaunchConfiguration_sourceServerID,+ launchConfiguration_bootMode,+ launchConfiguration_copyPrivateIp,+ launchConfiguration_copyTags,+ launchConfiguration_ec2LaunchTemplateID,+ launchConfiguration_enableMapAutoTagging,+ launchConfiguration_launchDisposition,+ launchConfiguration_licensing,+ launchConfiguration_mapAutoTaggingMpeID,+ launchConfiguration_name,+ launchConfiguration_postLaunchActions,+ launchConfiguration_sourceServerID,+ launchConfiguration_targetInstanceTypeRightSizingMethod,++ -- ** UpdateLaunchConfigurationTemplate+ updateLaunchConfigurationTemplate_associatePublicIpAddress,+ updateLaunchConfigurationTemplate_bootMode,+ updateLaunchConfigurationTemplate_copyPrivateIp,+ updateLaunchConfigurationTemplate_copyTags,+ updateLaunchConfigurationTemplate_enableMapAutoTagging,+ updateLaunchConfigurationTemplate_largeVolumeConf,+ updateLaunchConfigurationTemplate_launchDisposition,+ updateLaunchConfigurationTemplate_licensing,+ updateLaunchConfigurationTemplate_mapAutoTaggingMpeID,+ updateLaunchConfigurationTemplate_postLaunchActions,+ updateLaunchConfigurationTemplate_smallVolumeConf,+ updateLaunchConfigurationTemplate_smallVolumeMaxSize,+ updateLaunchConfigurationTemplate_targetInstanceTypeRightSizingMethod,+ updateLaunchConfigurationTemplate_launchConfigurationTemplateID,+ launchConfigurationTemplate_arn,+ launchConfigurationTemplate_associatePublicIpAddress,+ launchConfigurationTemplate_bootMode,+ launchConfigurationTemplate_copyPrivateIp,+ launchConfigurationTemplate_copyTags,+ launchConfigurationTemplate_ec2LaunchTemplateID,+ launchConfigurationTemplate_enableMapAutoTagging,+ launchConfigurationTemplate_largeVolumeConf,+ launchConfigurationTemplate_launchDisposition,+ launchConfigurationTemplate_licensing,+ launchConfigurationTemplate_mapAutoTaggingMpeID,+ launchConfigurationTemplate_postLaunchActions,+ launchConfigurationTemplate_smallVolumeConf,+ launchConfigurationTemplate_smallVolumeMaxSize,+ launchConfigurationTemplate_tags,+ launchConfigurationTemplate_targetInstanceTypeRightSizingMethod,+ launchConfigurationTemplate_launchConfigurationTemplateID,++ -- ** UpdateReplicationConfiguration+ updateReplicationConfiguration_associateDefaultSecurityGroup,+ updateReplicationConfiguration_bandwidthThrottling,+ updateReplicationConfiguration_createPublicIP,+ updateReplicationConfiguration_dataPlaneRouting,+ updateReplicationConfiguration_defaultLargeStagingDiskType,+ updateReplicationConfiguration_ebsEncryption,+ updateReplicationConfiguration_ebsEncryptionKeyArn,+ updateReplicationConfiguration_name,+ updateReplicationConfiguration_replicatedDisks,+ updateReplicationConfiguration_replicationServerInstanceType,+ updateReplicationConfiguration_replicationServersSecurityGroupsIDs,+ updateReplicationConfiguration_stagingAreaSubnetId,+ updateReplicationConfiguration_stagingAreaTags,+ updateReplicationConfiguration_useDedicatedReplicationServer,+ updateReplicationConfiguration_sourceServerID,+ replicationConfiguration_associateDefaultSecurityGroup,+ replicationConfiguration_bandwidthThrottling,+ replicationConfiguration_createPublicIP,+ replicationConfiguration_dataPlaneRouting,+ replicationConfiguration_defaultLargeStagingDiskType,+ replicationConfiguration_ebsEncryption,+ replicationConfiguration_ebsEncryptionKeyArn,+ replicationConfiguration_name,+ replicationConfiguration_replicatedDisks,+ replicationConfiguration_replicationServerInstanceType,+ replicationConfiguration_replicationServersSecurityGroupsIDs,+ replicationConfiguration_sourceServerID,+ replicationConfiguration_stagingAreaSubnetId,+ replicationConfiguration_stagingAreaTags,+ replicationConfiguration_useDedicatedReplicationServer,++ -- ** UpdateReplicationConfigurationTemplate+ updateReplicationConfigurationTemplate_arn,+ updateReplicationConfigurationTemplate_associateDefaultSecurityGroup,+ updateReplicationConfigurationTemplate_bandwidthThrottling,+ updateReplicationConfigurationTemplate_createPublicIP,+ updateReplicationConfigurationTemplate_dataPlaneRouting,+ updateReplicationConfigurationTemplate_defaultLargeStagingDiskType,+ updateReplicationConfigurationTemplate_ebsEncryption,+ updateReplicationConfigurationTemplate_ebsEncryptionKeyArn,+ updateReplicationConfigurationTemplate_replicationServerInstanceType,+ updateReplicationConfigurationTemplate_replicationServersSecurityGroupsIDs,+ updateReplicationConfigurationTemplate_stagingAreaSubnetId,+ updateReplicationConfigurationTemplate_stagingAreaTags,+ updateReplicationConfigurationTemplate_useDedicatedReplicationServer,+ updateReplicationConfigurationTemplate_replicationConfigurationTemplateID,+ replicationConfigurationTemplate_arn,+ replicationConfigurationTemplate_associateDefaultSecurityGroup,+ replicationConfigurationTemplate_bandwidthThrottling,+ replicationConfigurationTemplate_createPublicIP,+ replicationConfigurationTemplate_dataPlaneRouting,+ replicationConfigurationTemplate_defaultLargeStagingDiskType,+ replicationConfigurationTemplate_ebsEncryption,+ replicationConfigurationTemplate_ebsEncryptionKeyArn,+ replicationConfigurationTemplate_replicationServerInstanceType,+ replicationConfigurationTemplate_replicationServersSecurityGroupsIDs,+ replicationConfigurationTemplate_stagingAreaSubnetId,+ replicationConfigurationTemplate_stagingAreaTags,+ replicationConfigurationTemplate_tags,+ replicationConfigurationTemplate_useDedicatedReplicationServer,+ replicationConfigurationTemplate_replicationConfigurationTemplateID,++ -- ** UpdateSourceServerReplicationType+ updateSourceServerReplicationType_replicationType,+ updateSourceServerReplicationType_sourceServerID,+ sourceServer_applicationID,+ sourceServer_arn,+ sourceServer_dataReplicationInfo,+ sourceServer_isArchived,+ sourceServer_launchedInstance,+ sourceServer_lifeCycle,+ sourceServer_replicationType,+ sourceServer_sourceProperties,+ sourceServer_sourceServerID,+ sourceServer_tags,+ sourceServer_vcenterClientID,++ -- ** UpdateWave+ updateWave_description,+ updateWave_name,+ updateWave_waveID,+ wave_arn,+ wave_creationDateTime,+ wave_description,+ wave_isArchived,+ wave_lastModifiedDateTime,+ wave_name,+ wave_tags,+ wave_waveAggregatedStatus,+ wave_waveID,++ -- * Types++ -- ** Application+ application_applicationAggregatedStatus,+ application_applicationID,+ application_arn,+ application_creationDateTime,+ application_description,+ application_isArchived,+ application_lastModifiedDateTime,+ application_name,+ application_tags,+ application_waveID,++ -- ** ApplicationAggregatedStatus+ applicationAggregatedStatus_healthStatus,+ applicationAggregatedStatus_lastUpdateDateTime,+ applicationAggregatedStatus_progressStatus,+ applicationAggregatedStatus_totalSourceServers,++ -- ** CPU+ cpu_cores,+ cpu_modelName,++ -- ** ChangeServerLifeCycleStateSourceServerLifecycle+ changeServerLifeCycleStateSourceServerLifecycle_state,++ -- ** DataReplicationError+ dataReplicationError_error,+ dataReplicationError_rawError,++ -- ** DataReplicationInfo+ dataReplicationInfo_dataReplicationError,+ dataReplicationInfo_dataReplicationInitiation,+ dataReplicationInfo_dataReplicationState,+ dataReplicationInfo_etaDateTime,+ dataReplicationInfo_lagDuration,+ dataReplicationInfo_lastSnapshotDateTime,+ dataReplicationInfo_replicatedDisks,++ -- ** DataReplicationInfoReplicatedDisk+ dataReplicationInfoReplicatedDisk_backloggedStorageBytes,+ dataReplicationInfoReplicatedDisk_deviceName,+ dataReplicationInfoReplicatedDisk_replicatedStorageBytes,+ dataReplicationInfoReplicatedDisk_rescannedStorageBytes,+ dataReplicationInfoReplicatedDisk_totalStorageBytes,++ -- ** DataReplicationInitiation+ dataReplicationInitiation_nextAttemptDateTime,+ dataReplicationInitiation_startDateTime,+ dataReplicationInitiation_steps,++ -- ** DataReplicationInitiationStep+ dataReplicationInitiationStep_name,+ dataReplicationInitiationStep_status,++ -- ** DescribeJobsRequestFilters+ describeJobsRequestFilters_fromDate,+ describeJobsRequestFilters_jobIDs,+ describeJobsRequestFilters_toDate,++ -- ** DescribeSourceServersRequestFilters+ describeSourceServersRequestFilters_applicationIDs,+ describeSourceServersRequestFilters_isArchived,+ describeSourceServersRequestFilters_lifeCycleStates,+ describeSourceServersRequestFilters_replicationTypes,+ describeSourceServersRequestFilters_sourceServerIDs,++ -- ** Disk+ disk_bytes,+ disk_deviceName,++ -- ** IdentificationHints+ identificationHints_awsInstanceID,+ identificationHints_fqdn,+ identificationHints_hostname,+ identificationHints_vmPath,+ identificationHints_vmWareUuid,++ -- ** Job+ job_arn,+ job_creationDateTime,+ job_endDateTime,+ job_initiatedBy,+ job_participatingServers,+ job_status,+ job_tags,+ job_type,+ job_jobID,++ -- ** JobLog+ jobLog_event,+ jobLog_eventData,+ jobLog_logDateTime,++ -- ** JobLogEventData+ jobLogEventData_conversionServerID,+ jobLogEventData_rawError,+ jobLogEventData_sourceServerID,+ jobLogEventData_targetInstanceID,++ -- ** JobPostLaunchActionsLaunchStatus+ jobPostLaunchActionsLaunchStatus_executionID,+ jobPostLaunchActionsLaunchStatus_executionStatus,+ jobPostLaunchActionsLaunchStatus_failureReason,+ jobPostLaunchActionsLaunchStatus_ssmDocument,+ jobPostLaunchActionsLaunchStatus_ssmDocumentType,++ -- ** LaunchConfiguration+ launchConfiguration_bootMode,+ launchConfiguration_copyPrivateIp,+ launchConfiguration_copyTags,+ launchConfiguration_ec2LaunchTemplateID,+ launchConfiguration_enableMapAutoTagging,+ launchConfiguration_launchDisposition,+ launchConfiguration_licensing,+ launchConfiguration_mapAutoTaggingMpeID,+ launchConfiguration_name,+ launchConfiguration_postLaunchActions,+ launchConfiguration_sourceServerID,+ launchConfiguration_targetInstanceTypeRightSizingMethod,++ -- ** LaunchConfigurationTemplate+ launchConfigurationTemplate_arn,+ launchConfigurationTemplate_associatePublicIpAddress,+ launchConfigurationTemplate_bootMode,+ launchConfigurationTemplate_copyPrivateIp,+ launchConfigurationTemplate_copyTags,+ launchConfigurationTemplate_ec2LaunchTemplateID,+ launchConfigurationTemplate_enableMapAutoTagging,+ launchConfigurationTemplate_largeVolumeConf,+ launchConfigurationTemplate_launchDisposition,+ launchConfigurationTemplate_licensing,+ launchConfigurationTemplate_mapAutoTaggingMpeID,+ launchConfigurationTemplate_postLaunchActions,+ launchConfigurationTemplate_smallVolumeConf,+ launchConfigurationTemplate_smallVolumeMaxSize,+ launchConfigurationTemplate_tags,+ launchConfigurationTemplate_targetInstanceTypeRightSizingMethod,+ launchConfigurationTemplate_launchConfigurationTemplateID,++ -- ** LaunchTemplateDiskConf+ launchTemplateDiskConf_iops,+ launchTemplateDiskConf_throughput,+ launchTemplateDiskConf_volumeType,++ -- ** LaunchedInstance+ launchedInstance_ec2InstanceID,+ launchedInstance_firstBoot,+ launchedInstance_jobID,++ -- ** Licensing+ licensing_osByol,++ -- ** LifeCycle+ lifeCycle_addedToServiceDateTime,+ lifeCycle_elapsedReplicationDuration,+ lifeCycle_firstByteDateTime,+ lifeCycle_lastCutover,+ lifeCycle_lastSeenByServiceDateTime,+ lifeCycle_lastTest,+ lifeCycle_state,++ -- ** LifeCycleLastCutover+ lifeCycleLastCutover_finalized,+ lifeCycleLastCutover_initiated,+ lifeCycleLastCutover_reverted,++ -- ** LifeCycleLastCutoverFinalized+ lifeCycleLastCutoverFinalized_apiCallDateTime,++ -- ** LifeCycleLastCutoverInitiated+ lifeCycleLastCutoverInitiated_apiCallDateTime,+ lifeCycleLastCutoverInitiated_jobID,++ -- ** LifeCycleLastCutoverReverted+ lifeCycleLastCutoverReverted_apiCallDateTime,++ -- ** LifeCycleLastTest+ lifeCycleLastTest_finalized,+ lifeCycleLastTest_initiated,+ lifeCycleLastTest_reverted,++ -- ** LifeCycleLastTestFinalized+ lifeCycleLastTestFinalized_apiCallDateTime,++ -- ** LifeCycleLastTestInitiated+ lifeCycleLastTestInitiated_apiCallDateTime,+ lifeCycleLastTestInitiated_jobID,++ -- ** LifeCycleLastTestReverted+ lifeCycleLastTestReverted_apiCallDateTime,++ -- ** ListApplicationsRequestFilters+ listApplicationsRequestFilters_applicationIDs,+ listApplicationsRequestFilters_isArchived,+ listApplicationsRequestFilters_waveIDs,++ -- ** ListWavesRequestFilters+ listWavesRequestFilters_isArchived,+ listWavesRequestFilters_waveIDs,++ -- ** NetworkInterface+ networkInterface_ips,+ networkInterface_isPrimary,+ networkInterface_macAddress,++ -- ** OS+ os_fullString,++ -- ** ParticipatingServer+ participatingServer_launchStatus,+ participatingServer_launchedEc2InstanceID,+ participatingServer_postLaunchActionsStatus,+ participatingServer_sourceServerID,++ -- ** PostLaunchActions+ postLaunchActions_cloudWatchLogGroupName,+ postLaunchActions_deployment,+ postLaunchActions_s3LogBucket,+ postLaunchActions_s3OutputKeyPrefix,+ postLaunchActions_ssmDocuments,++ -- ** PostLaunchActionsStatus+ postLaunchActionsStatus_postLaunchActionsLaunchStatusList,+ postLaunchActionsStatus_ssmAgentDiscoveryDatetime,++ -- ** ReplicationConfiguration+ replicationConfiguration_associateDefaultSecurityGroup,+ replicationConfiguration_bandwidthThrottling,+ replicationConfiguration_createPublicIP,+ replicationConfiguration_dataPlaneRouting,+ replicationConfiguration_defaultLargeStagingDiskType,+ replicationConfiguration_ebsEncryption,+ replicationConfiguration_ebsEncryptionKeyArn,+ replicationConfiguration_name,+ replicationConfiguration_replicatedDisks,+ replicationConfiguration_replicationServerInstanceType,+ replicationConfiguration_replicationServersSecurityGroupsIDs,+ replicationConfiguration_sourceServerID,+ replicationConfiguration_stagingAreaSubnetId,+ replicationConfiguration_stagingAreaTags,+ replicationConfiguration_useDedicatedReplicationServer,++ -- ** ReplicationConfigurationReplicatedDisk+ replicationConfigurationReplicatedDisk_deviceName,+ replicationConfigurationReplicatedDisk_iops,+ replicationConfigurationReplicatedDisk_isBootDisk,+ replicationConfigurationReplicatedDisk_stagingDiskType,+ replicationConfigurationReplicatedDisk_throughput,++ -- ** ReplicationConfigurationTemplate+ replicationConfigurationTemplate_arn,+ replicationConfigurationTemplate_associateDefaultSecurityGroup,+ replicationConfigurationTemplate_bandwidthThrottling,+ replicationConfigurationTemplate_createPublicIP,+ replicationConfigurationTemplate_dataPlaneRouting,+ replicationConfigurationTemplate_defaultLargeStagingDiskType,+ replicationConfigurationTemplate_ebsEncryption,+ replicationConfigurationTemplate_ebsEncryptionKeyArn,+ replicationConfigurationTemplate_replicationServerInstanceType,+ replicationConfigurationTemplate_replicationServersSecurityGroupsIDs,+ replicationConfigurationTemplate_stagingAreaSubnetId,+ replicationConfigurationTemplate_stagingAreaTags,+ replicationConfigurationTemplate_tags,+ replicationConfigurationTemplate_useDedicatedReplicationServer,+ replicationConfigurationTemplate_replicationConfigurationTemplateID,++ -- ** SourceProperties+ sourceProperties_cpus,+ sourceProperties_disks,+ sourceProperties_identificationHints,+ sourceProperties_lastUpdatedDateTime,+ sourceProperties_networkInterfaces,+ sourceProperties_os,+ sourceProperties_ramBytes,+ sourceProperties_recommendedInstanceType,++ -- ** SourceServer+ sourceServer_applicationID,+ sourceServer_arn,+ sourceServer_dataReplicationInfo,+ sourceServer_isArchived,+ sourceServer_launchedInstance,+ sourceServer_lifeCycle,+ sourceServer_replicationType,+ sourceServer_sourceProperties,+ sourceServer_sourceServerID,+ sourceServer_tags,+ sourceServer_vcenterClientID,++ -- ** SourceServerActionDocument+ sourceServerActionDocument_actionID,+ sourceServerActionDocument_actionName,+ sourceServerActionDocument_active,+ sourceServerActionDocument_documentIdentifier,+ sourceServerActionDocument_documentVersion,+ sourceServerActionDocument_mustSucceedForCutover,+ sourceServerActionDocument_order,+ sourceServerActionDocument_parameters,+ sourceServerActionDocument_timeoutSeconds,++ -- ** SourceServerActionsRequestFilters+ sourceServerActionsRequestFilters_actionIDs,++ -- ** SsmDocument+ ssmDocument_mustSucceedForCutover,+ ssmDocument_parameters,+ ssmDocument_timeoutSeconds,+ ssmDocument_actionName,+ ssmDocument_ssmDocumentName,++ -- ** SsmParameterStoreParameter+ ssmParameterStoreParameter_parameterName,+ ssmParameterStoreParameter_parameterType,++ -- ** TemplateActionDocument+ templateActionDocument_actionID,+ templateActionDocument_actionName,+ templateActionDocument_active,+ templateActionDocument_documentIdentifier,+ templateActionDocument_documentVersion,+ templateActionDocument_mustSucceedForCutover,+ templateActionDocument_operatingSystem,+ templateActionDocument_order,+ templateActionDocument_parameters,+ templateActionDocument_timeoutSeconds,++ -- ** TemplateActionsRequestFilters+ templateActionsRequestFilters_actionIDs,++ -- ** VcenterClient+ vcenterClient_arn,+ vcenterClient_datacenterName,+ vcenterClient_hostname,+ vcenterClient_lastSeenDatetime,+ vcenterClient_sourceServerTags,+ vcenterClient_tags,+ vcenterClient_vcenterClientID,+ vcenterClient_vcenterUUID,++ -- ** Wave+ wave_arn,+ wave_creationDateTime,+ wave_description,+ wave_isArchived,+ wave_lastModifiedDateTime,+ wave_name,+ wave_tags,+ wave_waveAggregatedStatus,+ wave_waveID,++ -- ** WaveAggregatedStatus+ waveAggregatedStatus_healthStatus,+ waveAggregatedStatus_lastUpdateDateTime,+ waveAggregatedStatus_progressStatus,+ waveAggregatedStatus_replicationStartedDateTime,+ waveAggregatedStatus_totalApplications,+ )+where++import Amazonka.MGN.ArchiveApplication+import Amazonka.MGN.ArchiveWave+import Amazonka.MGN.AssociateApplications+import Amazonka.MGN.AssociateSourceServers+import Amazonka.MGN.ChangeServerLifeCycleState+import Amazonka.MGN.CreateApplication+import Amazonka.MGN.CreateLaunchConfigurationTemplate+import Amazonka.MGN.CreateReplicationConfigurationTemplate+import Amazonka.MGN.CreateWave+import Amazonka.MGN.DeleteApplication+import Amazonka.MGN.DeleteJob+import Amazonka.MGN.DeleteLaunchConfigurationTemplate+import Amazonka.MGN.DeleteReplicationConfigurationTemplate+import Amazonka.MGN.DeleteSourceServer+import Amazonka.MGN.DeleteVcenterClient+import Amazonka.MGN.DeleteWave+import Amazonka.MGN.DescribeJobLogItems+import Amazonka.MGN.DescribeJobs+import Amazonka.MGN.DescribeLaunchConfigurationTemplates+import Amazonka.MGN.DescribeReplicationConfigurationTemplates+import Amazonka.MGN.DescribeSourceServers+import Amazonka.MGN.DescribeVcenterClients+import Amazonka.MGN.DisassociateApplications+import Amazonka.MGN.DisassociateSourceServers+import Amazonka.MGN.DisconnectFromService+import Amazonka.MGN.FinalizeCutover+import Amazonka.MGN.GetLaunchConfiguration+import Amazonka.MGN.GetReplicationConfiguration+import Amazonka.MGN.InitializeService+import Amazonka.MGN.ListApplications+import Amazonka.MGN.ListSourceServerActions+import Amazonka.MGN.ListTagsForResource+import Amazonka.MGN.ListTemplateActions+import Amazonka.MGN.ListWaves+import Amazonka.MGN.MarkAsArchived+import Amazonka.MGN.PutSourceServerAction+import Amazonka.MGN.PutTemplateAction+import Amazonka.MGN.RemoveSourceServerAction+import Amazonka.MGN.RemoveTemplateAction+import Amazonka.MGN.RetryDataReplication+import Amazonka.MGN.StartCutover+import Amazonka.MGN.StartReplication+import Amazonka.MGN.StartTest+import Amazonka.MGN.TagResource+import Amazonka.MGN.TerminateTargetInstances+import Amazonka.MGN.Types.Application+import Amazonka.MGN.Types.ApplicationAggregatedStatus+import Amazonka.MGN.Types.CPU+import Amazonka.MGN.Types.ChangeServerLifeCycleStateSourceServerLifecycle+import Amazonka.MGN.Types.DataReplicationError+import Amazonka.MGN.Types.DataReplicationInfo+import Amazonka.MGN.Types.DataReplicationInfoReplicatedDisk+import Amazonka.MGN.Types.DataReplicationInitiation+import Amazonka.MGN.Types.DataReplicationInitiationStep+import Amazonka.MGN.Types.DescribeJobsRequestFilters+import Amazonka.MGN.Types.DescribeSourceServersRequestFilters+import Amazonka.MGN.Types.Disk+import Amazonka.MGN.Types.IdentificationHints+import Amazonka.MGN.Types.Job+import Amazonka.MGN.Types.JobLog+import Amazonka.MGN.Types.JobLogEventData+import Amazonka.MGN.Types.JobPostLaunchActionsLaunchStatus+import Amazonka.MGN.Types.LaunchConfiguration+import Amazonka.MGN.Types.LaunchConfigurationTemplate+import Amazonka.MGN.Types.LaunchTemplateDiskConf+import Amazonka.MGN.Types.LaunchedInstance+import Amazonka.MGN.Types.Licensing+import Amazonka.MGN.Types.LifeCycle+import Amazonka.MGN.Types.LifeCycleLastCutover+import Amazonka.MGN.Types.LifeCycleLastCutoverFinalized+import Amazonka.MGN.Types.LifeCycleLastCutoverInitiated+import Amazonka.MGN.Types.LifeCycleLastCutoverReverted+import Amazonka.MGN.Types.LifeCycleLastTest+import Amazonka.MGN.Types.LifeCycleLastTestFinalized+import Amazonka.MGN.Types.LifeCycleLastTestInitiated+import Amazonka.MGN.Types.LifeCycleLastTestReverted+import Amazonka.MGN.Types.ListApplicationsRequestFilters+import Amazonka.MGN.Types.ListWavesRequestFilters+import Amazonka.MGN.Types.NetworkInterface+import Amazonka.MGN.Types.OS+import Amazonka.MGN.Types.ParticipatingServer+import Amazonka.MGN.Types.PostLaunchActions+import Amazonka.MGN.Types.PostLaunchActionsStatus+import Amazonka.MGN.Types.ReplicationConfiguration+import Amazonka.MGN.Types.ReplicationConfigurationReplicatedDisk+import Amazonka.MGN.Types.ReplicationConfigurationTemplate+import Amazonka.MGN.Types.SourceProperties+import Amazonka.MGN.Types.SourceServer+import Amazonka.MGN.Types.SourceServerActionDocument+import Amazonka.MGN.Types.SourceServerActionsRequestFilters+import Amazonka.MGN.Types.SsmDocument+import Amazonka.MGN.Types.SsmParameterStoreParameter+import Amazonka.MGN.Types.TemplateActionDocument+import Amazonka.MGN.Types.TemplateActionsRequestFilters+import Amazonka.MGN.Types.VcenterClient+import Amazonka.MGN.Types.Wave+import Amazonka.MGN.Types.WaveAggregatedStatus+import Amazonka.MGN.UnarchiveApplication+import Amazonka.MGN.UnarchiveWave+import Amazonka.MGN.UntagResource+import Amazonka.MGN.UpdateApplication+import Amazonka.MGN.UpdateLaunchConfiguration+import Amazonka.MGN.UpdateLaunchConfigurationTemplate+import Amazonka.MGN.UpdateReplicationConfiguration+import Amazonka.MGN.UpdateReplicationConfigurationTemplate+import Amazonka.MGN.UpdateSourceServerReplicationType+import Amazonka.MGN.UpdateWave
+ gen/Amazonka/MGN/ListApplications.hs view
@@ -0,0 +1,228 @@+{-# 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.MGN.ListApplications+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieves all applications or multiple applications by ID.+--+-- This operation returns paginated results.+module Amazonka.MGN.ListApplications+ ( -- * Creating a Request+ ListApplications (..),+ newListApplications,++ -- * Request Lenses+ listApplications_filters,+ listApplications_maxResults,+ listApplications_nextToken,++ -- * Destructuring the Response+ ListApplicationsResponse (..),+ newListApplicationsResponse,++ -- * Response Lenses+ listApplicationsResponse_items,+ listApplicationsResponse_nextToken,+ listApplicationsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListApplications' smart constructor.+data ListApplications = ListApplications'+ { -- | Applications list filters.+ filters :: Prelude.Maybe ListApplicationsRequestFilters,+ -- | Maximum results to return when listing applications.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | Request next token.+ nextToken :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListApplications' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'filters', 'listApplications_filters' - Applications list filters.+--+-- 'maxResults', 'listApplications_maxResults' - Maximum results to return when listing applications.+--+-- 'nextToken', 'listApplications_nextToken' - Request next token.+newListApplications ::+ ListApplications+newListApplications =+ ListApplications'+ { filters = Prelude.Nothing,+ maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing+ }++-- | Applications list filters.+listApplications_filters :: Lens.Lens' ListApplications (Prelude.Maybe ListApplicationsRequestFilters)+listApplications_filters = Lens.lens (\ListApplications' {filters} -> filters) (\s@ListApplications' {} a -> s {filters = a} :: ListApplications)++-- | Maximum results to return when listing applications.+listApplications_maxResults :: Lens.Lens' ListApplications (Prelude.Maybe Prelude.Natural)+listApplications_maxResults = Lens.lens (\ListApplications' {maxResults} -> maxResults) (\s@ListApplications' {} a -> s {maxResults = a} :: ListApplications)++-- | Request next token.+listApplications_nextToken :: Lens.Lens' ListApplications (Prelude.Maybe Prelude.Text)+listApplications_nextToken = Lens.lens (\ListApplications' {nextToken} -> nextToken) (\s@ListApplications' {} a -> s {nextToken = a} :: ListApplications)++instance Core.AWSPager ListApplications where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listApplicationsResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? listApplicationsResponse_items+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listApplications_nextToken+ Lens..~ rs+ Lens.^? listApplicationsResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ListApplications where+ type+ AWSResponse ListApplications =+ ListApplicationsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListApplicationsResponse'+ Prelude.<$> (x Data..?> "items" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "nextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListApplications where+ hashWithSalt _salt ListApplications' {..} =+ _salt+ `Prelude.hashWithSalt` filters+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken++instance Prelude.NFData ListApplications where+ rnf ListApplications' {..} =+ Prelude.rnf filters+ `Prelude.seq` Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken++instance Data.ToHeaders ListApplications where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListApplications where+ toJSON ListApplications' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("filters" Data..=) Prelude.<$> filters,+ ("maxResults" Data..=) Prelude.<$> maxResults,+ ("nextToken" Data..=) Prelude.<$> nextToken+ ]+ )++instance Data.ToPath ListApplications where+ toPath = Prelude.const "/ListApplications"++instance Data.ToQuery ListApplications where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListApplicationsResponse' smart constructor.+data ListApplicationsResponse = ListApplicationsResponse'+ { -- | Applications list.+ items :: Prelude.Maybe [Application],+ -- | Response next token.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListApplicationsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'items', 'listApplicationsResponse_items' - Applications list.+--+-- 'nextToken', 'listApplicationsResponse_nextToken' - Response next token.+--+-- 'httpStatus', 'listApplicationsResponse_httpStatus' - The response's http status code.+newListApplicationsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListApplicationsResponse+newListApplicationsResponse pHttpStatus_ =+ ListApplicationsResponse'+ { items = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Applications list.+listApplicationsResponse_items :: Lens.Lens' ListApplicationsResponse (Prelude.Maybe [Application])+listApplicationsResponse_items = Lens.lens (\ListApplicationsResponse' {items} -> items) (\s@ListApplicationsResponse' {} a -> s {items = a} :: ListApplicationsResponse) Prelude.. Lens.mapping Lens.coerced++-- | Response next token.+listApplicationsResponse_nextToken :: Lens.Lens' ListApplicationsResponse (Prelude.Maybe Prelude.Text)+listApplicationsResponse_nextToken = Lens.lens (\ListApplicationsResponse' {nextToken} -> nextToken) (\s@ListApplicationsResponse' {} a -> s {nextToken = a} :: ListApplicationsResponse)++-- | The response's http status code.+listApplicationsResponse_httpStatus :: Lens.Lens' ListApplicationsResponse Prelude.Int+listApplicationsResponse_httpStatus = Lens.lens (\ListApplicationsResponse' {httpStatus} -> httpStatus) (\s@ListApplicationsResponse' {} a -> s {httpStatus = a} :: ListApplicationsResponse)++instance Prelude.NFData ListApplicationsResponse where+ rnf ListApplicationsResponse' {..} =+ Prelude.rnf items+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MGN/ListSourceServerActions.hs view
@@ -0,0 +1,260 @@+{-# 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.MGN.ListSourceServerActions+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- List source server post migration custom actions.+--+-- This operation returns paginated results.+module Amazonka.MGN.ListSourceServerActions+ ( -- * Creating a Request+ ListSourceServerActions (..),+ newListSourceServerActions,++ -- * Request Lenses+ listSourceServerActions_filters,+ listSourceServerActions_maxResults,+ listSourceServerActions_nextToken,+ listSourceServerActions_sourceServerID,++ -- * Destructuring the Response+ ListSourceServerActionsResponse (..),+ newListSourceServerActionsResponse,++ -- * Response Lenses+ listSourceServerActionsResponse_items,+ listSourceServerActionsResponse_nextToken,+ listSourceServerActionsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListSourceServerActions' smart constructor.+data ListSourceServerActions = ListSourceServerActions'+ { -- | Filters to apply when listing source server post migration custom+ -- actions.+ filters :: Prelude.Maybe SourceServerActionsRequestFilters,+ -- | Maximum amount of items to return when listing source server post+ -- migration custom actions.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | Next token to use when listing source server post migration custom+ -- actions.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | Source server ID.+ sourceServerID :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListSourceServerActions' 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', 'listSourceServerActions_filters' - Filters to apply when listing source server post migration custom+-- actions.+--+-- 'maxResults', 'listSourceServerActions_maxResults' - Maximum amount of items to return when listing source server post+-- migration custom actions.+--+-- 'nextToken', 'listSourceServerActions_nextToken' - Next token to use when listing source server post migration custom+-- actions.+--+-- 'sourceServerID', 'listSourceServerActions_sourceServerID' - Source server ID.+newListSourceServerActions ::+ -- | 'sourceServerID'+ Prelude.Text ->+ ListSourceServerActions+newListSourceServerActions pSourceServerID_ =+ ListSourceServerActions'+ { filters = Prelude.Nothing,+ maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ sourceServerID = pSourceServerID_+ }++-- | Filters to apply when listing source server post migration custom+-- actions.+listSourceServerActions_filters :: Lens.Lens' ListSourceServerActions (Prelude.Maybe SourceServerActionsRequestFilters)+listSourceServerActions_filters = Lens.lens (\ListSourceServerActions' {filters} -> filters) (\s@ListSourceServerActions' {} a -> s {filters = a} :: ListSourceServerActions)++-- | Maximum amount of items to return when listing source server post+-- migration custom actions.+listSourceServerActions_maxResults :: Lens.Lens' ListSourceServerActions (Prelude.Maybe Prelude.Natural)+listSourceServerActions_maxResults = Lens.lens (\ListSourceServerActions' {maxResults} -> maxResults) (\s@ListSourceServerActions' {} a -> s {maxResults = a} :: ListSourceServerActions)++-- | Next token to use when listing source server post migration custom+-- actions.+listSourceServerActions_nextToken :: Lens.Lens' ListSourceServerActions (Prelude.Maybe Prelude.Text)+listSourceServerActions_nextToken = Lens.lens (\ListSourceServerActions' {nextToken} -> nextToken) (\s@ListSourceServerActions' {} a -> s {nextToken = a} :: ListSourceServerActions)++-- | Source server ID.+listSourceServerActions_sourceServerID :: Lens.Lens' ListSourceServerActions Prelude.Text+listSourceServerActions_sourceServerID = Lens.lens (\ListSourceServerActions' {sourceServerID} -> sourceServerID) (\s@ListSourceServerActions' {} a -> s {sourceServerID = a} :: ListSourceServerActions)++instance Core.AWSPager ListSourceServerActions where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listSourceServerActionsResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? listSourceServerActionsResponse_items+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listSourceServerActions_nextToken+ Lens..~ rs+ Lens.^? listSourceServerActionsResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ListSourceServerActions where+ type+ AWSResponse ListSourceServerActions =+ ListSourceServerActionsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListSourceServerActionsResponse'+ Prelude.<$> (x Data..?> "items" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "nextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListSourceServerActions where+ hashWithSalt _salt ListSourceServerActions' {..} =+ _salt+ `Prelude.hashWithSalt` filters+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` sourceServerID++instance Prelude.NFData ListSourceServerActions where+ rnf ListSourceServerActions' {..} =+ Prelude.rnf filters+ `Prelude.seq` Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf sourceServerID++instance Data.ToHeaders ListSourceServerActions where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListSourceServerActions where+ toJSON ListSourceServerActions' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("filters" Data..=) Prelude.<$> filters,+ ("maxResults" Data..=) Prelude.<$> maxResults,+ ("nextToken" Data..=) Prelude.<$> nextToken,+ Prelude.Just+ ("sourceServerID" Data..= sourceServerID)+ ]+ )++instance Data.ToPath ListSourceServerActions where+ toPath = Prelude.const "/ListSourceServerActions"++instance Data.ToQuery ListSourceServerActions where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListSourceServerActionsResponse' smart constructor.+data ListSourceServerActionsResponse = ListSourceServerActionsResponse'+ { -- | List of source server post migration custom actions.+ items :: Prelude.Maybe [SourceServerActionDocument],+ -- | Next token returned when listing source server post migration custom+ -- actions.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListSourceServerActionsResponse' 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:+--+-- 'items', 'listSourceServerActionsResponse_items' - List of source server post migration custom actions.+--+-- 'nextToken', 'listSourceServerActionsResponse_nextToken' - Next token returned when listing source server post migration custom+-- actions.+--+-- 'httpStatus', 'listSourceServerActionsResponse_httpStatus' - The response's http status code.+newListSourceServerActionsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListSourceServerActionsResponse+newListSourceServerActionsResponse pHttpStatus_ =+ ListSourceServerActionsResponse'+ { items =+ Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | List of source server post migration custom actions.+listSourceServerActionsResponse_items :: Lens.Lens' ListSourceServerActionsResponse (Prelude.Maybe [SourceServerActionDocument])+listSourceServerActionsResponse_items = Lens.lens (\ListSourceServerActionsResponse' {items} -> items) (\s@ListSourceServerActionsResponse' {} a -> s {items = a} :: ListSourceServerActionsResponse) Prelude.. Lens.mapping Lens.coerced++-- | Next token returned when listing source server post migration custom+-- actions.+listSourceServerActionsResponse_nextToken :: Lens.Lens' ListSourceServerActionsResponse (Prelude.Maybe Prelude.Text)+listSourceServerActionsResponse_nextToken = Lens.lens (\ListSourceServerActionsResponse' {nextToken} -> nextToken) (\s@ListSourceServerActionsResponse' {} a -> s {nextToken = a} :: ListSourceServerActionsResponse)++-- | The response's http status code.+listSourceServerActionsResponse_httpStatus :: Lens.Lens' ListSourceServerActionsResponse Prelude.Int+listSourceServerActionsResponse_httpStatus = Lens.lens (\ListSourceServerActionsResponse' {httpStatus} -> httpStatus) (\s@ListSourceServerActionsResponse' {} a -> s {httpStatus = a} :: ListSourceServerActionsResponse)++instance+ Prelude.NFData+ ListSourceServerActionsResponse+ where+ rnf ListSourceServerActionsResponse' {..} =+ Prelude.rnf items+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MGN/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.MGN.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)+--+-- List all tags for your Application Migration Service resources.+module Amazonka.MGN.ListTagsForResource+ ( -- * Creating a Request+ ListTagsForResource (..),+ newListTagsForResource,++ -- * Request Lenses+ listTagsForResource_resourceArn,++ -- * Destructuring the Response+ ListTagsForResourceResponse (..),+ newListTagsForResourceResponse,++ -- * Response Lenses+ listTagsForResourceResponse_tags,+ listTagsForResourceResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListTagsForResource' smart constructor.+data ListTagsForResource = ListTagsForResource'+ { -- | List tags for resource request by ARN.+ 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' - List tags for resource request by ARN.+newListTagsForResource ::+ -- | 'resourceArn'+ Prelude.Text ->+ ListTagsForResource+newListTagsForResource pResourceArn_ =+ ListTagsForResource' {resourceArn = pResourceArn_}++-- | List tags for resource request by ARN.+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'+ { -- | List tags for resource response.+ tags :: Prelude.Maybe (Data.Sensitive (Prelude.HashMap Prelude.Text Prelude.Text)),+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListTagsForResourceResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'tags', 'listTagsForResourceResponse_tags' - List tags for resource response.+--+-- 'httpStatus', 'listTagsForResourceResponse_httpStatus' - The response's http status code.+newListTagsForResourceResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListTagsForResourceResponse+newListTagsForResourceResponse pHttpStatus_ =+ ListTagsForResourceResponse'+ { tags =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | List tags for resource response.+listTagsForResourceResponse_tags :: Lens.Lens' ListTagsForResourceResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+listTagsForResourceResponse_tags = Lens.lens (\ListTagsForResourceResponse' {tags} -> tags) (\s@ListTagsForResourceResponse' {} a -> s {tags = a} :: ListTagsForResourceResponse) Prelude.. Lens.mapping (Data._Sensitive Prelude.. Lens.coerced)++-- | The response's http status code.+listTagsForResourceResponse_httpStatus :: Lens.Lens' ListTagsForResourceResponse Prelude.Int+listTagsForResourceResponse_httpStatus = Lens.lens (\ListTagsForResourceResponse' {httpStatus} -> httpStatus) (\s@ListTagsForResourceResponse' {} a -> s {httpStatus = a} :: ListTagsForResourceResponse)++instance Prelude.NFData ListTagsForResourceResponse where+ rnf ListTagsForResourceResponse' {..} =+ Prelude.rnf tags+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MGN/ListTemplateActions.hs view
@@ -0,0 +1,252 @@+{-# 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.MGN.ListTemplateActions+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- List template post migration custom actions.+--+-- This operation returns paginated results.+module Amazonka.MGN.ListTemplateActions+ ( -- * Creating a Request+ ListTemplateActions (..),+ newListTemplateActions,++ -- * Request Lenses+ listTemplateActions_filters,+ listTemplateActions_maxResults,+ listTemplateActions_nextToken,+ listTemplateActions_launchConfigurationTemplateID,++ -- * Destructuring the Response+ ListTemplateActionsResponse (..),+ newListTemplateActionsResponse,++ -- * Response Lenses+ listTemplateActionsResponse_items,+ listTemplateActionsResponse_nextToken,+ listTemplateActionsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListTemplateActions' smart constructor.+data ListTemplateActions = ListTemplateActions'+ { -- | Filters to apply when listing template post migration custom actions.+ filters :: Prelude.Maybe TemplateActionsRequestFilters,+ -- | Maximum amount of items to return when listing template post migration+ -- custom actions.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | Next token to use when listing template post migration custom actions.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | Launch configuration template ID.+ launchConfigurationTemplateID :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListTemplateActions' 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', 'listTemplateActions_filters' - Filters to apply when listing template post migration custom actions.+--+-- 'maxResults', 'listTemplateActions_maxResults' - Maximum amount of items to return when listing template post migration+-- custom actions.+--+-- 'nextToken', 'listTemplateActions_nextToken' - Next token to use when listing template post migration custom actions.+--+-- 'launchConfigurationTemplateID', 'listTemplateActions_launchConfigurationTemplateID' - Launch configuration template ID.+newListTemplateActions ::+ -- | 'launchConfigurationTemplateID'+ Prelude.Text ->+ ListTemplateActions+newListTemplateActions+ pLaunchConfigurationTemplateID_ =+ ListTemplateActions'+ { filters = Prelude.Nothing,+ maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ launchConfigurationTemplateID =+ pLaunchConfigurationTemplateID_+ }++-- | Filters to apply when listing template post migration custom actions.+listTemplateActions_filters :: Lens.Lens' ListTemplateActions (Prelude.Maybe TemplateActionsRequestFilters)+listTemplateActions_filters = Lens.lens (\ListTemplateActions' {filters} -> filters) (\s@ListTemplateActions' {} a -> s {filters = a} :: ListTemplateActions)++-- | Maximum amount of items to return when listing template post migration+-- custom actions.+listTemplateActions_maxResults :: Lens.Lens' ListTemplateActions (Prelude.Maybe Prelude.Natural)+listTemplateActions_maxResults = Lens.lens (\ListTemplateActions' {maxResults} -> maxResults) (\s@ListTemplateActions' {} a -> s {maxResults = a} :: ListTemplateActions)++-- | Next token to use when listing template post migration custom actions.+listTemplateActions_nextToken :: Lens.Lens' ListTemplateActions (Prelude.Maybe Prelude.Text)+listTemplateActions_nextToken = Lens.lens (\ListTemplateActions' {nextToken} -> nextToken) (\s@ListTemplateActions' {} a -> s {nextToken = a} :: ListTemplateActions)++-- | Launch configuration template ID.+listTemplateActions_launchConfigurationTemplateID :: Lens.Lens' ListTemplateActions Prelude.Text+listTemplateActions_launchConfigurationTemplateID = Lens.lens (\ListTemplateActions' {launchConfigurationTemplateID} -> launchConfigurationTemplateID) (\s@ListTemplateActions' {} a -> s {launchConfigurationTemplateID = a} :: ListTemplateActions)++instance Core.AWSPager ListTemplateActions where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listTemplateActionsResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? listTemplateActionsResponse_items+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listTemplateActions_nextToken+ Lens..~ rs+ Lens.^? listTemplateActionsResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ListTemplateActions where+ type+ AWSResponse ListTemplateActions =+ ListTemplateActionsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListTemplateActionsResponse'+ Prelude.<$> (x Data..?> "items" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "nextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListTemplateActions where+ hashWithSalt _salt ListTemplateActions' {..} =+ _salt+ `Prelude.hashWithSalt` filters+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` launchConfigurationTemplateID++instance Prelude.NFData ListTemplateActions where+ rnf ListTemplateActions' {..} =+ Prelude.rnf filters+ `Prelude.seq` Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf launchConfigurationTemplateID++instance Data.ToHeaders ListTemplateActions where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListTemplateActions where+ toJSON ListTemplateActions' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("filters" Data..=) Prelude.<$> filters,+ ("maxResults" Data..=) Prelude.<$> maxResults,+ ("nextToken" Data..=) Prelude.<$> nextToken,+ Prelude.Just+ ( "launchConfigurationTemplateID"+ Data..= launchConfigurationTemplateID+ )+ ]+ )++instance Data.ToPath ListTemplateActions where+ toPath = Prelude.const "/ListTemplateActions"++instance Data.ToQuery ListTemplateActions where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListTemplateActionsResponse' smart constructor.+data ListTemplateActionsResponse = ListTemplateActionsResponse'+ { -- | List of template post migration custom actions.+ items :: Prelude.Maybe [TemplateActionDocument],+ -- | Next token returned when listing template post migration custom actions.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListTemplateActionsResponse' 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:+--+-- 'items', 'listTemplateActionsResponse_items' - List of template post migration custom actions.+--+-- 'nextToken', 'listTemplateActionsResponse_nextToken' - Next token returned when listing template post migration custom actions.+--+-- 'httpStatus', 'listTemplateActionsResponse_httpStatus' - The response's http status code.+newListTemplateActionsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListTemplateActionsResponse+newListTemplateActionsResponse pHttpStatus_ =+ ListTemplateActionsResponse'+ { items =+ Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | List of template post migration custom actions.+listTemplateActionsResponse_items :: Lens.Lens' ListTemplateActionsResponse (Prelude.Maybe [TemplateActionDocument])+listTemplateActionsResponse_items = Lens.lens (\ListTemplateActionsResponse' {items} -> items) (\s@ListTemplateActionsResponse' {} a -> s {items = a} :: ListTemplateActionsResponse) Prelude.. Lens.mapping Lens.coerced++-- | Next token returned when listing template post migration custom actions.+listTemplateActionsResponse_nextToken :: Lens.Lens' ListTemplateActionsResponse (Prelude.Maybe Prelude.Text)+listTemplateActionsResponse_nextToken = Lens.lens (\ListTemplateActionsResponse' {nextToken} -> nextToken) (\s@ListTemplateActionsResponse' {} a -> s {nextToken = a} :: ListTemplateActionsResponse)++-- | The response's http status code.+listTemplateActionsResponse_httpStatus :: Lens.Lens' ListTemplateActionsResponse Prelude.Int+listTemplateActionsResponse_httpStatus = Lens.lens (\ListTemplateActionsResponse' {httpStatus} -> httpStatus) (\s@ListTemplateActionsResponse' {} a -> s {httpStatus = a} :: ListTemplateActionsResponse)++instance Prelude.NFData ListTemplateActionsResponse where+ rnf ListTemplateActionsResponse' {..} =+ Prelude.rnf items+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MGN/ListWaves.hs view
@@ -0,0 +1,226 @@+{-# 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.MGN.ListWaves+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Retrieves all waves or multiple waves by ID.+--+-- This operation returns paginated results.+module Amazonka.MGN.ListWaves+ ( -- * Creating a Request+ ListWaves (..),+ newListWaves,++ -- * Request Lenses+ listWaves_filters,+ listWaves_maxResults,+ listWaves_nextToken,++ -- * Destructuring the Response+ ListWavesResponse (..),+ newListWavesResponse,++ -- * Response Lenses+ listWavesResponse_items,+ listWavesResponse_nextToken,+ listWavesResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListWaves' smart constructor.+data ListWaves = ListWaves'+ { -- | Waves list filters.+ filters :: Prelude.Maybe ListWavesRequestFilters,+ -- | Maximum results to return when listing waves.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | Request next token.+ nextToken :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListWaves' 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', 'listWaves_filters' - Waves list filters.+--+-- 'maxResults', 'listWaves_maxResults' - Maximum results to return when listing waves.+--+-- 'nextToken', 'listWaves_nextToken' - Request next token.+newListWaves ::+ ListWaves+newListWaves =+ ListWaves'+ { filters = Prelude.Nothing,+ maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing+ }++-- | Waves list filters.+listWaves_filters :: Lens.Lens' ListWaves (Prelude.Maybe ListWavesRequestFilters)+listWaves_filters = Lens.lens (\ListWaves' {filters} -> filters) (\s@ListWaves' {} a -> s {filters = a} :: ListWaves)++-- | Maximum results to return when listing waves.+listWaves_maxResults :: Lens.Lens' ListWaves (Prelude.Maybe Prelude.Natural)+listWaves_maxResults = Lens.lens (\ListWaves' {maxResults} -> maxResults) (\s@ListWaves' {} a -> s {maxResults = a} :: ListWaves)++-- | Request next token.+listWaves_nextToken :: Lens.Lens' ListWaves (Prelude.Maybe Prelude.Text)+listWaves_nextToken = Lens.lens (\ListWaves' {nextToken} -> nextToken) (\s@ListWaves' {} a -> s {nextToken = a} :: ListWaves)++instance Core.AWSPager ListWaves where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listWavesResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? listWavesResponse_items+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listWaves_nextToken+ Lens..~ rs+ Lens.^? listWavesResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ListWaves where+ type AWSResponse ListWaves = ListWavesResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListWavesResponse'+ Prelude.<$> (x Data..?> "items" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "nextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListWaves where+ hashWithSalt _salt ListWaves' {..} =+ _salt+ `Prelude.hashWithSalt` filters+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken++instance Prelude.NFData ListWaves where+ rnf ListWaves' {..} =+ Prelude.rnf filters+ `Prelude.seq` Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken++instance Data.ToHeaders ListWaves where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListWaves where+ toJSON ListWaves' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("filters" Data..=) Prelude.<$> filters,+ ("maxResults" Data..=) Prelude.<$> maxResults,+ ("nextToken" Data..=) Prelude.<$> nextToken+ ]+ )++instance Data.ToPath ListWaves where+ toPath = Prelude.const "/ListWaves"++instance Data.ToQuery ListWaves where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListWavesResponse' smart constructor.+data ListWavesResponse = ListWavesResponse'+ { -- | Waves list.+ items :: Prelude.Maybe [Wave],+ -- | Response next token.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListWavesResponse' 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:+--+-- 'items', 'listWavesResponse_items' - Waves list.+--+-- 'nextToken', 'listWavesResponse_nextToken' - Response next token.+--+-- 'httpStatus', 'listWavesResponse_httpStatus' - The response's http status code.+newListWavesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListWavesResponse+newListWavesResponse pHttpStatus_ =+ ListWavesResponse'+ { items = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Waves list.+listWavesResponse_items :: Lens.Lens' ListWavesResponse (Prelude.Maybe [Wave])+listWavesResponse_items = Lens.lens (\ListWavesResponse' {items} -> items) (\s@ListWavesResponse' {} a -> s {items = a} :: ListWavesResponse) Prelude.. Lens.mapping Lens.coerced++-- | Response next token.+listWavesResponse_nextToken :: Lens.Lens' ListWavesResponse (Prelude.Maybe Prelude.Text)+listWavesResponse_nextToken = Lens.lens (\ListWavesResponse' {nextToken} -> nextToken) (\s@ListWavesResponse' {} a -> s {nextToken = a} :: ListWavesResponse)++-- | The response's http status code.+listWavesResponse_httpStatus :: Lens.Lens' ListWavesResponse Prelude.Int+listWavesResponse_httpStatus = Lens.lens (\ListWavesResponse' {httpStatus} -> httpStatus) (\s@ListWavesResponse' {} a -> s {httpStatus = a} :: ListWavesResponse)++instance Prelude.NFData ListWavesResponse where+ rnf ListWavesResponse' {..} =+ Prelude.rnf items+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MGN/MarkAsArchived.hs view
@@ -0,0 +1,128 @@+{-# 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.MGN.MarkAsArchived+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Archives specific Source Servers by setting the SourceServer.isArchived+-- property to true for specified SourceServers by ID. This command only+-- works for SourceServers with a lifecycle. state which equals+-- DISCONNECTED or CUTOVER.+module Amazonka.MGN.MarkAsArchived+ ( -- * Creating a Request+ MarkAsArchived (..),+ newMarkAsArchived,++ -- * Request Lenses+ markAsArchived_sourceServerID,++ -- * Destructuring the Response+ SourceServer (..),+ newSourceServer,++ -- * Response Lenses+ sourceServer_applicationID,+ sourceServer_arn,+ sourceServer_dataReplicationInfo,+ sourceServer_isArchived,+ sourceServer_launchedInstance,+ sourceServer_lifeCycle,+ sourceServer_replicationType,+ sourceServer_sourceProperties,+ sourceServer_sourceServerID,+ sourceServer_tags,+ sourceServer_vcenterClientID,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newMarkAsArchived' smart constructor.+data MarkAsArchived = MarkAsArchived'+ { -- | Mark as archived by Source Server ID.+ sourceServerID :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'MarkAsArchived' 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:+--+-- 'sourceServerID', 'markAsArchived_sourceServerID' - Mark as archived by Source Server ID.+newMarkAsArchived ::+ -- | 'sourceServerID'+ Prelude.Text ->+ MarkAsArchived+newMarkAsArchived pSourceServerID_ =+ MarkAsArchived' {sourceServerID = pSourceServerID_}++-- | Mark as archived by Source Server ID.+markAsArchived_sourceServerID :: Lens.Lens' MarkAsArchived Prelude.Text+markAsArchived_sourceServerID = Lens.lens (\MarkAsArchived' {sourceServerID} -> sourceServerID) (\s@MarkAsArchived' {} a -> s {sourceServerID = a} :: MarkAsArchived)++instance Core.AWSRequest MarkAsArchived where+ type AWSResponse MarkAsArchived = SourceServer+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ (\s h x -> Data.eitherParseJSON x)++instance Prelude.Hashable MarkAsArchived where+ hashWithSalt _salt MarkAsArchived' {..} =+ _salt `Prelude.hashWithSalt` sourceServerID++instance Prelude.NFData MarkAsArchived where+ rnf MarkAsArchived' {..} = Prelude.rnf sourceServerID++instance Data.ToHeaders MarkAsArchived where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON MarkAsArchived where+ toJSON MarkAsArchived' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("sourceServerID" Data..= sourceServerID)+ ]+ )++instance Data.ToPath MarkAsArchived where+ toPath = Prelude.const "/MarkAsArchived"++instance Data.ToQuery MarkAsArchived where+ toQuery = Prelude.const Prelude.mempty
+ gen/Amazonka/MGN/PutSourceServerAction.hs view
@@ -0,0 +1,263 @@+{-# 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.MGN.PutSourceServerAction+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Put source server post migration custom action.+module Amazonka.MGN.PutSourceServerAction+ ( -- * Creating a Request+ PutSourceServerAction (..),+ newPutSourceServerAction,++ -- * Request Lenses+ putSourceServerAction_active,+ putSourceServerAction_documentVersion,+ putSourceServerAction_mustSucceedForCutover,+ putSourceServerAction_parameters,+ putSourceServerAction_timeoutSeconds,+ putSourceServerAction_actionID,+ putSourceServerAction_actionName,+ putSourceServerAction_documentIdentifier,+ putSourceServerAction_order,+ putSourceServerAction_sourceServerID,++ -- * Destructuring the Response+ SourceServerActionDocument (..),+ newSourceServerActionDocument,++ -- * Response Lenses+ sourceServerActionDocument_actionID,+ sourceServerActionDocument_actionName,+ sourceServerActionDocument_active,+ sourceServerActionDocument_documentIdentifier,+ sourceServerActionDocument_documentVersion,+ sourceServerActionDocument_mustSucceedForCutover,+ sourceServerActionDocument_order,+ sourceServerActionDocument_parameters,+ sourceServerActionDocument_timeoutSeconds,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newPutSourceServerAction' smart constructor.+data PutSourceServerAction = PutSourceServerAction'+ { -- | Source server post migration custom action active status.+ active :: Prelude.Maybe Prelude.Bool,+ -- | Source server post migration custom action document version.+ documentVersion :: Prelude.Maybe Prelude.Text,+ -- | Source server post migration custom action must succeed for cutover.+ mustSucceedForCutover :: Prelude.Maybe Prelude.Bool,+ -- | Source server post migration custom action parameters.+ parameters :: Prelude.Maybe (Prelude.HashMap Prelude.Text [SsmParameterStoreParameter]),+ -- | Source server post migration custom action timeout in seconds.+ timeoutSeconds :: Prelude.Maybe Prelude.Natural,+ -- | Source server post migration custom action ID.+ actionID :: Prelude.Text,+ -- | Source server post migration custom action name.+ actionName :: Prelude.Text,+ -- | Source server post migration custom action document identifier.+ documentIdentifier :: Prelude.Text,+ -- | Source server post migration custom action order.+ order :: Prelude.Natural,+ -- | Source server ID.+ sourceServerID :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PutSourceServerAction' 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:+--+-- 'active', 'putSourceServerAction_active' - Source server post migration custom action active status.+--+-- 'documentVersion', 'putSourceServerAction_documentVersion' - Source server post migration custom action document version.+--+-- 'mustSucceedForCutover', 'putSourceServerAction_mustSucceedForCutover' - Source server post migration custom action must succeed for cutover.+--+-- 'parameters', 'putSourceServerAction_parameters' - Source server post migration custom action parameters.+--+-- 'timeoutSeconds', 'putSourceServerAction_timeoutSeconds' - Source server post migration custom action timeout in seconds.+--+-- 'actionID', 'putSourceServerAction_actionID' - Source server post migration custom action ID.+--+-- 'actionName', 'putSourceServerAction_actionName' - Source server post migration custom action name.+--+-- 'documentIdentifier', 'putSourceServerAction_documentIdentifier' - Source server post migration custom action document identifier.+--+-- 'order', 'putSourceServerAction_order' - Source server post migration custom action order.+--+-- 'sourceServerID', 'putSourceServerAction_sourceServerID' - Source server ID.+newPutSourceServerAction ::+ -- | 'actionID'+ Prelude.Text ->+ -- | 'actionName'+ Prelude.Text ->+ -- | 'documentIdentifier'+ Prelude.Text ->+ -- | 'order'+ Prelude.Natural ->+ -- | 'sourceServerID'+ Prelude.Text ->+ PutSourceServerAction+newPutSourceServerAction+ pActionID_+ pActionName_+ pDocumentIdentifier_+ pOrder_+ pSourceServerID_ =+ PutSourceServerAction'+ { active = Prelude.Nothing,+ documentVersion = Prelude.Nothing,+ mustSucceedForCutover = Prelude.Nothing,+ parameters = Prelude.Nothing,+ timeoutSeconds = Prelude.Nothing,+ actionID = pActionID_,+ actionName = pActionName_,+ documentIdentifier = pDocumentIdentifier_,+ order = pOrder_,+ sourceServerID = pSourceServerID_+ }++-- | Source server post migration custom action active status.+putSourceServerAction_active :: Lens.Lens' PutSourceServerAction (Prelude.Maybe Prelude.Bool)+putSourceServerAction_active = Lens.lens (\PutSourceServerAction' {active} -> active) (\s@PutSourceServerAction' {} a -> s {active = a} :: PutSourceServerAction)++-- | Source server post migration custom action document version.+putSourceServerAction_documentVersion :: Lens.Lens' PutSourceServerAction (Prelude.Maybe Prelude.Text)+putSourceServerAction_documentVersion = Lens.lens (\PutSourceServerAction' {documentVersion} -> documentVersion) (\s@PutSourceServerAction' {} a -> s {documentVersion = a} :: PutSourceServerAction)++-- | Source server post migration custom action must succeed for cutover.+putSourceServerAction_mustSucceedForCutover :: Lens.Lens' PutSourceServerAction (Prelude.Maybe Prelude.Bool)+putSourceServerAction_mustSucceedForCutover = Lens.lens (\PutSourceServerAction' {mustSucceedForCutover} -> mustSucceedForCutover) (\s@PutSourceServerAction' {} a -> s {mustSucceedForCutover = a} :: PutSourceServerAction)++-- | Source server post migration custom action parameters.+putSourceServerAction_parameters :: Lens.Lens' PutSourceServerAction (Prelude.Maybe (Prelude.HashMap Prelude.Text [SsmParameterStoreParameter]))+putSourceServerAction_parameters = Lens.lens (\PutSourceServerAction' {parameters} -> parameters) (\s@PutSourceServerAction' {} a -> s {parameters = a} :: PutSourceServerAction) Prelude.. Lens.mapping Lens.coerced++-- | Source server post migration custom action timeout in seconds.+putSourceServerAction_timeoutSeconds :: Lens.Lens' PutSourceServerAction (Prelude.Maybe Prelude.Natural)+putSourceServerAction_timeoutSeconds = Lens.lens (\PutSourceServerAction' {timeoutSeconds} -> timeoutSeconds) (\s@PutSourceServerAction' {} a -> s {timeoutSeconds = a} :: PutSourceServerAction)++-- | Source server post migration custom action ID.+putSourceServerAction_actionID :: Lens.Lens' PutSourceServerAction Prelude.Text+putSourceServerAction_actionID = Lens.lens (\PutSourceServerAction' {actionID} -> actionID) (\s@PutSourceServerAction' {} a -> s {actionID = a} :: PutSourceServerAction)++-- | Source server post migration custom action name.+putSourceServerAction_actionName :: Lens.Lens' PutSourceServerAction Prelude.Text+putSourceServerAction_actionName = Lens.lens (\PutSourceServerAction' {actionName} -> actionName) (\s@PutSourceServerAction' {} a -> s {actionName = a} :: PutSourceServerAction)++-- | Source server post migration custom action document identifier.+putSourceServerAction_documentIdentifier :: Lens.Lens' PutSourceServerAction Prelude.Text+putSourceServerAction_documentIdentifier = Lens.lens (\PutSourceServerAction' {documentIdentifier} -> documentIdentifier) (\s@PutSourceServerAction' {} a -> s {documentIdentifier = a} :: PutSourceServerAction)++-- | Source server post migration custom action order.+putSourceServerAction_order :: Lens.Lens' PutSourceServerAction Prelude.Natural+putSourceServerAction_order = Lens.lens (\PutSourceServerAction' {order} -> order) (\s@PutSourceServerAction' {} a -> s {order = a} :: PutSourceServerAction)++-- | Source server ID.+putSourceServerAction_sourceServerID :: Lens.Lens' PutSourceServerAction Prelude.Text+putSourceServerAction_sourceServerID = Lens.lens (\PutSourceServerAction' {sourceServerID} -> sourceServerID) (\s@PutSourceServerAction' {} a -> s {sourceServerID = a} :: PutSourceServerAction)++instance Core.AWSRequest PutSourceServerAction where+ type+ AWSResponse PutSourceServerAction =+ SourceServerActionDocument+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ (\s h x -> Data.eitherParseJSON x)++instance Prelude.Hashable PutSourceServerAction where+ hashWithSalt _salt PutSourceServerAction' {..} =+ _salt+ `Prelude.hashWithSalt` active+ `Prelude.hashWithSalt` documentVersion+ `Prelude.hashWithSalt` mustSucceedForCutover+ `Prelude.hashWithSalt` parameters+ `Prelude.hashWithSalt` timeoutSeconds+ `Prelude.hashWithSalt` actionID+ `Prelude.hashWithSalt` actionName+ `Prelude.hashWithSalt` documentIdentifier+ `Prelude.hashWithSalt` order+ `Prelude.hashWithSalt` sourceServerID++instance Prelude.NFData PutSourceServerAction where+ rnf PutSourceServerAction' {..} =+ Prelude.rnf active+ `Prelude.seq` Prelude.rnf documentVersion+ `Prelude.seq` Prelude.rnf mustSucceedForCutover+ `Prelude.seq` Prelude.rnf parameters+ `Prelude.seq` Prelude.rnf timeoutSeconds+ `Prelude.seq` Prelude.rnf actionID+ `Prelude.seq` Prelude.rnf actionName+ `Prelude.seq` Prelude.rnf documentIdentifier+ `Prelude.seq` Prelude.rnf order+ `Prelude.seq` Prelude.rnf sourceServerID++instance Data.ToHeaders PutSourceServerAction where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON PutSourceServerAction where+ toJSON PutSourceServerAction' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("active" Data..=) Prelude.<$> active,+ ("documentVersion" Data..=)+ Prelude.<$> documentVersion,+ ("mustSucceedForCutover" Data..=)+ Prelude.<$> mustSucceedForCutover,+ ("parameters" Data..=) Prelude.<$> parameters,+ ("timeoutSeconds" Data..=)+ Prelude.<$> timeoutSeconds,+ Prelude.Just ("actionID" Data..= actionID),+ Prelude.Just ("actionName" Data..= actionName),+ Prelude.Just+ ("documentIdentifier" Data..= documentIdentifier),+ Prelude.Just ("order" Data..= order),+ Prelude.Just+ ("sourceServerID" Data..= sourceServerID)+ ]+ )++instance Data.ToPath PutSourceServerAction where+ toPath = Prelude.const "/PutSourceServerAction"++instance Data.ToQuery PutSourceServerAction where+ toQuery = Prelude.const Prelude.mempty
+ gen/Amazonka/MGN/PutTemplateAction.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.MGN.PutTemplateAction+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Put template post migration custom action.+module Amazonka.MGN.PutTemplateAction+ ( -- * Creating a Request+ PutTemplateAction (..),+ newPutTemplateAction,++ -- * Request Lenses+ putTemplateAction_active,+ putTemplateAction_documentVersion,+ putTemplateAction_mustSucceedForCutover,+ putTemplateAction_operatingSystem,+ putTemplateAction_parameters,+ putTemplateAction_timeoutSeconds,+ putTemplateAction_actionID,+ putTemplateAction_actionName,+ putTemplateAction_documentIdentifier,+ putTemplateAction_launchConfigurationTemplateID,+ putTemplateAction_order,++ -- * Destructuring the Response+ TemplateActionDocument (..),+ newTemplateActionDocument,++ -- * Response Lenses+ templateActionDocument_actionID,+ templateActionDocument_actionName,+ templateActionDocument_active,+ templateActionDocument_documentIdentifier,+ templateActionDocument_documentVersion,+ templateActionDocument_mustSucceedForCutover,+ templateActionDocument_operatingSystem,+ templateActionDocument_order,+ templateActionDocument_parameters,+ templateActionDocument_timeoutSeconds,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newPutTemplateAction' smart constructor.+data PutTemplateAction = PutTemplateAction'+ { -- | Template post migration custom action active status.+ active :: Prelude.Maybe Prelude.Bool,+ -- | Template post migration custom action document version.+ documentVersion :: Prelude.Maybe Prelude.Text,+ -- | Template post migration custom action must succeed for cutover.+ mustSucceedForCutover :: Prelude.Maybe Prelude.Bool,+ -- | Operating system eligible for this template post migration custom+ -- action.+ operatingSystem :: Prelude.Maybe Prelude.Text,+ -- | Template post migration custom action parameters.+ parameters :: Prelude.Maybe (Prelude.HashMap Prelude.Text [SsmParameterStoreParameter]),+ -- | Template post migration custom action timeout in seconds.+ timeoutSeconds :: Prelude.Maybe Prelude.Natural,+ -- | Template post migration custom action ID.+ actionID :: Prelude.Text,+ -- | Template post migration custom action name.+ actionName :: Prelude.Text,+ -- | Template post migration custom action document identifier.+ documentIdentifier :: Prelude.Text,+ -- | Launch configuration template ID.+ launchConfigurationTemplateID :: Prelude.Text,+ -- | Template post migration custom action order.+ order :: Prelude.Natural+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PutTemplateAction' 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:+--+-- 'active', 'putTemplateAction_active' - Template post migration custom action active status.+--+-- 'documentVersion', 'putTemplateAction_documentVersion' - Template post migration custom action document version.+--+-- 'mustSucceedForCutover', 'putTemplateAction_mustSucceedForCutover' - Template post migration custom action must succeed for cutover.+--+-- 'operatingSystem', 'putTemplateAction_operatingSystem' - Operating system eligible for this template post migration custom+-- action.+--+-- 'parameters', 'putTemplateAction_parameters' - Template post migration custom action parameters.+--+-- 'timeoutSeconds', 'putTemplateAction_timeoutSeconds' - Template post migration custom action timeout in seconds.+--+-- 'actionID', 'putTemplateAction_actionID' - Template post migration custom action ID.+--+-- 'actionName', 'putTemplateAction_actionName' - Template post migration custom action name.+--+-- 'documentIdentifier', 'putTemplateAction_documentIdentifier' - Template post migration custom action document identifier.+--+-- 'launchConfigurationTemplateID', 'putTemplateAction_launchConfigurationTemplateID' - Launch configuration template ID.+--+-- 'order', 'putTemplateAction_order' - Template post migration custom action order.+newPutTemplateAction ::+ -- | 'actionID'+ Prelude.Text ->+ -- | 'actionName'+ Prelude.Text ->+ -- | 'documentIdentifier'+ Prelude.Text ->+ -- | 'launchConfigurationTemplateID'+ Prelude.Text ->+ -- | 'order'+ Prelude.Natural ->+ PutTemplateAction+newPutTemplateAction+ pActionID_+ pActionName_+ pDocumentIdentifier_+ pLaunchConfigurationTemplateID_+ pOrder_ =+ PutTemplateAction'+ { active = Prelude.Nothing,+ documentVersion = Prelude.Nothing,+ mustSucceedForCutover = Prelude.Nothing,+ operatingSystem = Prelude.Nothing,+ parameters = Prelude.Nothing,+ timeoutSeconds = Prelude.Nothing,+ actionID = pActionID_,+ actionName = pActionName_,+ documentIdentifier = pDocumentIdentifier_,+ launchConfigurationTemplateID =+ pLaunchConfigurationTemplateID_,+ order = pOrder_+ }++-- | Template post migration custom action active status.+putTemplateAction_active :: Lens.Lens' PutTemplateAction (Prelude.Maybe Prelude.Bool)+putTemplateAction_active = Lens.lens (\PutTemplateAction' {active} -> active) (\s@PutTemplateAction' {} a -> s {active = a} :: PutTemplateAction)++-- | Template post migration custom action document version.+putTemplateAction_documentVersion :: Lens.Lens' PutTemplateAction (Prelude.Maybe Prelude.Text)+putTemplateAction_documentVersion = Lens.lens (\PutTemplateAction' {documentVersion} -> documentVersion) (\s@PutTemplateAction' {} a -> s {documentVersion = a} :: PutTemplateAction)++-- | Template post migration custom action must succeed for cutover.+putTemplateAction_mustSucceedForCutover :: Lens.Lens' PutTemplateAction (Prelude.Maybe Prelude.Bool)+putTemplateAction_mustSucceedForCutover = Lens.lens (\PutTemplateAction' {mustSucceedForCutover} -> mustSucceedForCutover) (\s@PutTemplateAction' {} a -> s {mustSucceedForCutover = a} :: PutTemplateAction)++-- | Operating system eligible for this template post migration custom+-- action.+putTemplateAction_operatingSystem :: Lens.Lens' PutTemplateAction (Prelude.Maybe Prelude.Text)+putTemplateAction_operatingSystem = Lens.lens (\PutTemplateAction' {operatingSystem} -> operatingSystem) (\s@PutTemplateAction' {} a -> s {operatingSystem = a} :: PutTemplateAction)++-- | Template post migration custom action parameters.+putTemplateAction_parameters :: Lens.Lens' PutTemplateAction (Prelude.Maybe (Prelude.HashMap Prelude.Text [SsmParameterStoreParameter]))+putTemplateAction_parameters = Lens.lens (\PutTemplateAction' {parameters} -> parameters) (\s@PutTemplateAction' {} a -> s {parameters = a} :: PutTemplateAction) Prelude.. Lens.mapping Lens.coerced++-- | Template post migration custom action timeout in seconds.+putTemplateAction_timeoutSeconds :: Lens.Lens' PutTemplateAction (Prelude.Maybe Prelude.Natural)+putTemplateAction_timeoutSeconds = Lens.lens (\PutTemplateAction' {timeoutSeconds} -> timeoutSeconds) (\s@PutTemplateAction' {} a -> s {timeoutSeconds = a} :: PutTemplateAction)++-- | Template post migration custom action ID.+putTemplateAction_actionID :: Lens.Lens' PutTemplateAction Prelude.Text+putTemplateAction_actionID = Lens.lens (\PutTemplateAction' {actionID} -> actionID) (\s@PutTemplateAction' {} a -> s {actionID = a} :: PutTemplateAction)++-- | Template post migration custom action name.+putTemplateAction_actionName :: Lens.Lens' PutTemplateAction Prelude.Text+putTemplateAction_actionName = Lens.lens (\PutTemplateAction' {actionName} -> actionName) (\s@PutTemplateAction' {} a -> s {actionName = a} :: PutTemplateAction)++-- | Template post migration custom action document identifier.+putTemplateAction_documentIdentifier :: Lens.Lens' PutTemplateAction Prelude.Text+putTemplateAction_documentIdentifier = Lens.lens (\PutTemplateAction' {documentIdentifier} -> documentIdentifier) (\s@PutTemplateAction' {} a -> s {documentIdentifier = a} :: PutTemplateAction)++-- | Launch configuration template ID.+putTemplateAction_launchConfigurationTemplateID :: Lens.Lens' PutTemplateAction Prelude.Text+putTemplateAction_launchConfigurationTemplateID = Lens.lens (\PutTemplateAction' {launchConfigurationTemplateID} -> launchConfigurationTemplateID) (\s@PutTemplateAction' {} a -> s {launchConfigurationTemplateID = a} :: PutTemplateAction)++-- | Template post migration custom action order.+putTemplateAction_order :: Lens.Lens' PutTemplateAction Prelude.Natural+putTemplateAction_order = Lens.lens (\PutTemplateAction' {order} -> order) (\s@PutTemplateAction' {} a -> s {order = a} :: PutTemplateAction)++instance Core.AWSRequest PutTemplateAction where+ type+ AWSResponse PutTemplateAction =+ TemplateActionDocument+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ (\s h x -> Data.eitherParseJSON x)++instance Prelude.Hashable PutTemplateAction where+ hashWithSalt _salt PutTemplateAction' {..} =+ _salt+ `Prelude.hashWithSalt` active+ `Prelude.hashWithSalt` documentVersion+ `Prelude.hashWithSalt` mustSucceedForCutover+ `Prelude.hashWithSalt` operatingSystem+ `Prelude.hashWithSalt` parameters+ `Prelude.hashWithSalt` timeoutSeconds+ `Prelude.hashWithSalt` actionID+ `Prelude.hashWithSalt` actionName+ `Prelude.hashWithSalt` documentIdentifier+ `Prelude.hashWithSalt` launchConfigurationTemplateID+ `Prelude.hashWithSalt` order++instance Prelude.NFData PutTemplateAction where+ rnf PutTemplateAction' {..} =+ Prelude.rnf active+ `Prelude.seq` Prelude.rnf documentVersion+ `Prelude.seq` Prelude.rnf mustSucceedForCutover+ `Prelude.seq` Prelude.rnf operatingSystem+ `Prelude.seq` Prelude.rnf parameters+ `Prelude.seq` Prelude.rnf timeoutSeconds+ `Prelude.seq` Prelude.rnf actionID+ `Prelude.seq` Prelude.rnf actionName+ `Prelude.seq` Prelude.rnf documentIdentifier+ `Prelude.seq` Prelude.rnf launchConfigurationTemplateID+ `Prelude.seq` Prelude.rnf order++instance Data.ToHeaders PutTemplateAction where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON PutTemplateAction where+ toJSON PutTemplateAction' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("active" Data..=) Prelude.<$> active,+ ("documentVersion" Data..=)+ Prelude.<$> documentVersion,+ ("mustSucceedForCutover" Data..=)+ Prelude.<$> mustSucceedForCutover,+ ("operatingSystem" Data..=)+ Prelude.<$> operatingSystem,+ ("parameters" Data..=) Prelude.<$> parameters,+ ("timeoutSeconds" Data..=)+ Prelude.<$> timeoutSeconds,+ Prelude.Just ("actionID" Data..= actionID),+ Prelude.Just ("actionName" Data..= actionName),+ Prelude.Just+ ("documentIdentifier" Data..= documentIdentifier),+ Prelude.Just+ ( "launchConfigurationTemplateID"+ Data..= launchConfigurationTemplateID+ ),+ Prelude.Just ("order" Data..= order)+ ]+ )++instance Data.ToPath PutTemplateAction where+ toPath = Prelude.const "/PutTemplateAction"++instance Data.ToQuery PutTemplateAction where+ toQuery = Prelude.const Prelude.mempty
+ gen/Amazonka/MGN/RemoveSourceServerAction.hs view
@@ -0,0 +1,178 @@+{-# 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.MGN.RemoveSourceServerAction+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Remove source server post migration custom action.+module Amazonka.MGN.RemoveSourceServerAction+ ( -- * Creating a Request+ RemoveSourceServerAction (..),+ newRemoveSourceServerAction,++ -- * Request Lenses+ removeSourceServerAction_actionID,+ removeSourceServerAction_sourceServerID,++ -- * Destructuring the Response+ RemoveSourceServerActionResponse (..),+ newRemoveSourceServerActionResponse,++ -- * Response Lenses+ removeSourceServerActionResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newRemoveSourceServerAction' smart constructor.+data RemoveSourceServerAction = RemoveSourceServerAction'+ { -- | Source server post migration custom action ID to remove.+ actionID :: Prelude.Text,+ -- | Source server ID of the post migration custom action to remove.+ sourceServerID :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RemoveSourceServerAction' 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:+--+-- 'actionID', 'removeSourceServerAction_actionID' - Source server post migration custom action ID to remove.+--+-- 'sourceServerID', 'removeSourceServerAction_sourceServerID' - Source server ID of the post migration custom action to remove.+newRemoveSourceServerAction ::+ -- | 'actionID'+ Prelude.Text ->+ -- | 'sourceServerID'+ Prelude.Text ->+ RemoveSourceServerAction+newRemoveSourceServerAction+ pActionID_+ pSourceServerID_ =+ RemoveSourceServerAction'+ { actionID = pActionID_,+ sourceServerID = pSourceServerID_+ }++-- | Source server post migration custom action ID to remove.+removeSourceServerAction_actionID :: Lens.Lens' RemoveSourceServerAction Prelude.Text+removeSourceServerAction_actionID = Lens.lens (\RemoveSourceServerAction' {actionID} -> actionID) (\s@RemoveSourceServerAction' {} a -> s {actionID = a} :: RemoveSourceServerAction)++-- | Source server ID of the post migration custom action to remove.+removeSourceServerAction_sourceServerID :: Lens.Lens' RemoveSourceServerAction Prelude.Text+removeSourceServerAction_sourceServerID = Lens.lens (\RemoveSourceServerAction' {sourceServerID} -> sourceServerID) (\s@RemoveSourceServerAction' {} a -> s {sourceServerID = a} :: RemoveSourceServerAction)++instance Core.AWSRequest RemoveSourceServerAction where+ type+ AWSResponse RemoveSourceServerAction =+ RemoveSourceServerActionResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ RemoveSourceServerActionResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable RemoveSourceServerAction where+ hashWithSalt _salt RemoveSourceServerAction' {..} =+ _salt+ `Prelude.hashWithSalt` actionID+ `Prelude.hashWithSalt` sourceServerID++instance Prelude.NFData RemoveSourceServerAction where+ rnf RemoveSourceServerAction' {..} =+ Prelude.rnf actionID+ `Prelude.seq` Prelude.rnf sourceServerID++instance Data.ToHeaders RemoveSourceServerAction where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON RemoveSourceServerAction where+ toJSON RemoveSourceServerAction' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("actionID" Data..= actionID),+ Prelude.Just+ ("sourceServerID" Data..= sourceServerID)+ ]+ )++instance Data.ToPath RemoveSourceServerAction where+ toPath = Prelude.const "/RemoveSourceServerAction"++instance Data.ToQuery RemoveSourceServerAction where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newRemoveSourceServerActionResponse' smart constructor.+data RemoveSourceServerActionResponse = RemoveSourceServerActionResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RemoveSourceServerActionResponse' 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', 'removeSourceServerActionResponse_httpStatus' - The response's http status code.+newRemoveSourceServerActionResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ RemoveSourceServerActionResponse+newRemoveSourceServerActionResponse pHttpStatus_ =+ RemoveSourceServerActionResponse'+ { httpStatus =+ pHttpStatus_+ }++-- | The response's http status code.+removeSourceServerActionResponse_httpStatus :: Lens.Lens' RemoveSourceServerActionResponse Prelude.Int+removeSourceServerActionResponse_httpStatus = Lens.lens (\RemoveSourceServerActionResponse' {httpStatus} -> httpStatus) (\s@RemoveSourceServerActionResponse' {} a -> s {httpStatus = a} :: RemoveSourceServerActionResponse)++instance+ Prelude.NFData+ RemoveSourceServerActionResponse+ where+ rnf RemoveSourceServerActionResponse' {..} =+ Prelude.rnf httpStatus
+ gen/Amazonka/MGN/RemoveTemplateAction.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.MGN.RemoveTemplateAction+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Remove template post migration custom action.+module Amazonka.MGN.RemoveTemplateAction+ ( -- * Creating a Request+ RemoveTemplateAction (..),+ newRemoveTemplateAction,++ -- * Request Lenses+ removeTemplateAction_actionID,+ removeTemplateAction_launchConfigurationTemplateID,++ -- * Destructuring the Response+ RemoveTemplateActionResponse (..),+ newRemoveTemplateActionResponse,++ -- * Response Lenses+ removeTemplateActionResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newRemoveTemplateAction' smart constructor.+data RemoveTemplateAction = RemoveTemplateAction'+ { -- | Template post migration custom action ID to remove.+ actionID :: Prelude.Text,+ -- | Launch configuration template ID of the post migration custom action to+ -- remove.+ launchConfigurationTemplateID :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RemoveTemplateAction' 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:+--+-- 'actionID', 'removeTemplateAction_actionID' - Template post migration custom action ID to remove.+--+-- 'launchConfigurationTemplateID', 'removeTemplateAction_launchConfigurationTemplateID' - Launch configuration template ID of the post migration custom action to+-- remove.+newRemoveTemplateAction ::+ -- | 'actionID'+ Prelude.Text ->+ -- | 'launchConfigurationTemplateID'+ Prelude.Text ->+ RemoveTemplateAction+newRemoveTemplateAction+ pActionID_+ pLaunchConfigurationTemplateID_ =+ RemoveTemplateAction'+ { actionID = pActionID_,+ launchConfigurationTemplateID =+ pLaunchConfigurationTemplateID_+ }++-- | Template post migration custom action ID to remove.+removeTemplateAction_actionID :: Lens.Lens' RemoveTemplateAction Prelude.Text+removeTemplateAction_actionID = Lens.lens (\RemoveTemplateAction' {actionID} -> actionID) (\s@RemoveTemplateAction' {} a -> s {actionID = a} :: RemoveTemplateAction)++-- | Launch configuration template ID of the post migration custom action to+-- remove.+removeTemplateAction_launchConfigurationTemplateID :: Lens.Lens' RemoveTemplateAction Prelude.Text+removeTemplateAction_launchConfigurationTemplateID = Lens.lens (\RemoveTemplateAction' {launchConfigurationTemplateID} -> launchConfigurationTemplateID) (\s@RemoveTemplateAction' {} a -> s {launchConfigurationTemplateID = a} :: RemoveTemplateAction)++instance Core.AWSRequest RemoveTemplateAction where+ type+ AWSResponse RemoveTemplateAction =+ RemoveTemplateActionResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ RemoveTemplateActionResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable RemoveTemplateAction where+ hashWithSalt _salt RemoveTemplateAction' {..} =+ _salt+ `Prelude.hashWithSalt` actionID+ `Prelude.hashWithSalt` launchConfigurationTemplateID++instance Prelude.NFData RemoveTemplateAction where+ rnf RemoveTemplateAction' {..} =+ Prelude.rnf actionID+ `Prelude.seq` Prelude.rnf launchConfigurationTemplateID++instance Data.ToHeaders RemoveTemplateAction where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON RemoveTemplateAction where+ toJSON RemoveTemplateAction' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("actionID" Data..= actionID),+ Prelude.Just+ ( "launchConfigurationTemplateID"+ Data..= launchConfigurationTemplateID+ )+ ]+ )++instance Data.ToPath RemoveTemplateAction where+ toPath = Prelude.const "/RemoveTemplateAction"++instance Data.ToQuery RemoveTemplateAction where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newRemoveTemplateActionResponse' smart constructor.+data RemoveTemplateActionResponse = RemoveTemplateActionResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RemoveTemplateActionResponse' 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', 'removeTemplateActionResponse_httpStatus' - The response's http status code.+newRemoveTemplateActionResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ RemoveTemplateActionResponse+newRemoveTemplateActionResponse pHttpStatus_ =+ RemoveTemplateActionResponse'+ { httpStatus =+ pHttpStatus_+ }++-- | The response's http status code.+removeTemplateActionResponse_httpStatus :: Lens.Lens' RemoveTemplateActionResponse Prelude.Int+removeTemplateActionResponse_httpStatus = Lens.lens (\RemoveTemplateActionResponse' {httpStatus} -> httpStatus) (\s@RemoveTemplateActionResponse' {} a -> s {httpStatus = a} :: RemoveTemplateActionResponse)++instance Prelude.NFData RemoveTemplateActionResponse where+ rnf RemoveTemplateActionResponse' {..} =+ Prelude.rnf httpStatus
+ gen/Amazonka/MGN/RetryDataReplication.hs view
@@ -0,0 +1,132 @@+{-# 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.MGN.RetryDataReplication+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Causes the data replication initiation sequence to begin immediately+-- upon next Handshake for specified SourceServer IDs, regardless of when+-- the previous initiation started. This command will not work if the+-- SourceServer is not stalled or is in a DISCONNECTED or STOPPED state.+module Amazonka.MGN.RetryDataReplication+ ( -- * Creating a Request+ RetryDataReplication (..),+ newRetryDataReplication,++ -- * Request Lenses+ retryDataReplication_sourceServerID,++ -- * Destructuring the Response+ SourceServer (..),+ newSourceServer,++ -- * Response Lenses+ sourceServer_applicationID,+ sourceServer_arn,+ sourceServer_dataReplicationInfo,+ sourceServer_isArchived,+ sourceServer_launchedInstance,+ sourceServer_lifeCycle,+ sourceServer_replicationType,+ sourceServer_sourceProperties,+ sourceServer_sourceServerID,+ sourceServer_tags,+ sourceServer_vcenterClientID,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newRetryDataReplication' smart constructor.+data RetryDataReplication = RetryDataReplication'+ { -- | Retry data replication for Source Server ID.+ sourceServerID :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RetryDataReplication' 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:+--+-- 'sourceServerID', 'retryDataReplication_sourceServerID' - Retry data replication for Source Server ID.+newRetryDataReplication ::+ -- | 'sourceServerID'+ Prelude.Text ->+ RetryDataReplication+newRetryDataReplication pSourceServerID_ =+ RetryDataReplication'+ { sourceServerID =+ pSourceServerID_+ }++-- | Retry data replication for Source Server ID.+retryDataReplication_sourceServerID :: Lens.Lens' RetryDataReplication Prelude.Text+retryDataReplication_sourceServerID = Lens.lens (\RetryDataReplication' {sourceServerID} -> sourceServerID) (\s@RetryDataReplication' {} a -> s {sourceServerID = a} :: RetryDataReplication)++instance Core.AWSRequest RetryDataReplication where+ type AWSResponse RetryDataReplication = SourceServer+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ (\s h x -> Data.eitherParseJSON x)++instance Prelude.Hashable RetryDataReplication where+ hashWithSalt _salt RetryDataReplication' {..} =+ _salt `Prelude.hashWithSalt` sourceServerID++instance Prelude.NFData RetryDataReplication where+ rnf RetryDataReplication' {..} =+ Prelude.rnf sourceServerID++instance Data.ToHeaders RetryDataReplication where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON RetryDataReplication where+ toJSON RetryDataReplication' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("sourceServerID" Data..= sourceServerID)+ ]+ )++instance Data.ToPath RetryDataReplication where+ toPath = Prelude.const "/RetryDataReplication"++instance Data.ToQuery RetryDataReplication where+ toQuery = Prelude.const Prelude.mempty
+ gen/Amazonka/MGN/StartCutover.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.MGN.StartCutover+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Launches a Cutover Instance for specific Source Servers. This command+-- starts a LAUNCH job whose initiatedBy property is StartCutover and+-- changes the SourceServer.lifeCycle.state property to CUTTING_OVER.+module Amazonka.MGN.StartCutover+ ( -- * Creating a Request+ StartCutover (..),+ newStartCutover,++ -- * Request Lenses+ startCutover_tags,+ startCutover_sourceServerIDs,++ -- * Destructuring the Response+ StartCutoverResponse (..),+ newStartCutoverResponse,++ -- * Response Lenses+ startCutoverResponse_job,+ startCutoverResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newStartCutover' smart constructor.+data StartCutover = StartCutover'+ { -- | Start Cutover by Tags.+ tags :: Prelude.Maybe (Data.Sensitive (Prelude.HashMap Prelude.Text Prelude.Text)),+ -- | Start Cutover by Source Server IDs.+ sourceServerIDs :: Prelude.NonEmpty Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'StartCutover' 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', 'startCutover_tags' - Start Cutover by Tags.+--+-- 'sourceServerIDs', 'startCutover_sourceServerIDs' - Start Cutover by Source Server IDs.+newStartCutover ::+ -- | 'sourceServerIDs'+ Prelude.NonEmpty Prelude.Text ->+ StartCutover+newStartCutover pSourceServerIDs_ =+ StartCutover'+ { tags = Prelude.Nothing,+ sourceServerIDs =+ Lens.coerced Lens.# pSourceServerIDs_+ }++-- | Start Cutover by Tags.+startCutover_tags :: Lens.Lens' StartCutover (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+startCutover_tags = Lens.lens (\StartCutover' {tags} -> tags) (\s@StartCutover' {} a -> s {tags = a} :: StartCutover) Prelude.. Lens.mapping (Data._Sensitive Prelude.. Lens.coerced)++-- | Start Cutover by Source Server IDs.+startCutover_sourceServerIDs :: Lens.Lens' StartCutover (Prelude.NonEmpty Prelude.Text)+startCutover_sourceServerIDs = Lens.lens (\StartCutover' {sourceServerIDs} -> sourceServerIDs) (\s@StartCutover' {} a -> s {sourceServerIDs = a} :: StartCutover) Prelude.. Lens.coerced++instance Core.AWSRequest StartCutover where+ type AWSResponse StartCutover = StartCutoverResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ StartCutoverResponse'+ Prelude.<$> (x Data..?> "job")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable StartCutover where+ hashWithSalt _salt StartCutover' {..} =+ _salt+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` sourceServerIDs++instance Prelude.NFData StartCutover where+ rnf StartCutover' {..} =+ Prelude.rnf tags+ `Prelude.seq` Prelude.rnf sourceServerIDs++instance Data.ToHeaders StartCutover where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON StartCutover where+ toJSON StartCutover' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("tags" Data..=) Prelude.<$> tags,+ Prelude.Just+ ("sourceServerIDs" Data..= sourceServerIDs)+ ]+ )++instance Data.ToPath StartCutover where+ toPath = Prelude.const "/StartCutover"++instance Data.ToQuery StartCutover where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newStartCutoverResponse' smart constructor.+data StartCutoverResponse = StartCutoverResponse'+ { -- | Start Cutover Job response.+ job :: Prelude.Maybe Job,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'StartCutoverResponse' 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', 'startCutoverResponse_job' - Start Cutover Job response.+--+-- 'httpStatus', 'startCutoverResponse_httpStatus' - The response's http status code.+newStartCutoverResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ StartCutoverResponse+newStartCutoverResponse pHttpStatus_ =+ StartCutoverResponse'+ { job = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Start Cutover Job response.+startCutoverResponse_job :: Lens.Lens' StartCutoverResponse (Prelude.Maybe Job)+startCutoverResponse_job = Lens.lens (\StartCutoverResponse' {job} -> job) (\s@StartCutoverResponse' {} a -> s {job = a} :: StartCutoverResponse)++-- | The response's http status code.+startCutoverResponse_httpStatus :: Lens.Lens' StartCutoverResponse Prelude.Int+startCutoverResponse_httpStatus = Lens.lens (\StartCutoverResponse' {httpStatus} -> httpStatus) (\s@StartCutoverResponse' {} a -> s {httpStatus = a} :: StartCutoverResponse)++instance Prelude.NFData StartCutoverResponse where+ rnf StartCutoverResponse' {..} =+ Prelude.rnf job+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MGN/StartReplication.hs view
@@ -0,0 +1,129 @@+{-# 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.MGN.StartReplication+-- 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 replication for SNAPSHOT_SHIPPING agents.+module Amazonka.MGN.StartReplication+ ( -- * Creating a Request+ StartReplication (..),+ newStartReplication,++ -- * Request Lenses+ startReplication_sourceServerID,++ -- * Destructuring the Response+ SourceServer (..),+ newSourceServer,++ -- * Response Lenses+ sourceServer_applicationID,+ sourceServer_arn,+ sourceServer_dataReplicationInfo,+ sourceServer_isArchived,+ sourceServer_launchedInstance,+ sourceServer_lifeCycle,+ sourceServer_replicationType,+ sourceServer_sourceProperties,+ sourceServer_sourceServerID,+ sourceServer_tags,+ sourceServer_vcenterClientID,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newStartReplication' smart constructor.+data StartReplication = StartReplication'+ { -- | ID of source server on which to start replication.+ sourceServerID :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'StartReplication' 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:+--+-- 'sourceServerID', 'startReplication_sourceServerID' - ID of source server on which to start replication.+newStartReplication ::+ -- | 'sourceServerID'+ Prelude.Text ->+ StartReplication+newStartReplication pSourceServerID_ =+ StartReplication'+ { sourceServerID =+ pSourceServerID_+ }++-- | ID of source server on which to start replication.+startReplication_sourceServerID :: Lens.Lens' StartReplication Prelude.Text+startReplication_sourceServerID = Lens.lens (\StartReplication' {sourceServerID} -> sourceServerID) (\s@StartReplication' {} a -> s {sourceServerID = a} :: StartReplication)++instance Core.AWSRequest StartReplication where+ type AWSResponse StartReplication = SourceServer+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ (\s h x -> Data.eitherParseJSON x)++instance Prelude.Hashable StartReplication where+ hashWithSalt _salt StartReplication' {..} =+ _salt `Prelude.hashWithSalt` sourceServerID++instance Prelude.NFData StartReplication where+ rnf StartReplication' {..} =+ Prelude.rnf sourceServerID++instance Data.ToHeaders StartReplication where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON StartReplication where+ toJSON StartReplication' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("sourceServerID" Data..= sourceServerID)+ ]+ )++instance Data.ToPath StartReplication where+ toPath = Prelude.const "/StartReplication"++instance Data.ToQuery StartReplication where+ toQuery = Prelude.const Prelude.mempty
+ gen/Amazonka/MGN/StartTest.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.MGN.StartTest+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Launches a Test Instance for specific Source Servers. This command+-- starts a LAUNCH job whose initiatedBy property is StartTest and changes+-- the SourceServer.lifeCycle.state property to TESTING.+module Amazonka.MGN.StartTest+ ( -- * Creating a Request+ StartTest (..),+ newStartTest,++ -- * Request Lenses+ startTest_tags,+ startTest_sourceServerIDs,++ -- * Destructuring the Response+ StartTestResponse (..),+ newStartTestResponse,++ -- * Response Lenses+ startTestResponse_job,+ startTestResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newStartTest' smart constructor.+data StartTest = StartTest'+ { -- | Start Test by Tags.+ tags :: Prelude.Maybe (Data.Sensitive (Prelude.HashMap Prelude.Text Prelude.Text)),+ -- | Start Test for Source Server IDs.+ sourceServerIDs :: Prelude.NonEmpty Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'StartTest' 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', 'startTest_tags' - Start Test by Tags.+--+-- 'sourceServerIDs', 'startTest_sourceServerIDs' - Start Test for Source Server IDs.+newStartTest ::+ -- | 'sourceServerIDs'+ Prelude.NonEmpty Prelude.Text ->+ StartTest+newStartTest pSourceServerIDs_ =+ StartTest'+ { tags = Prelude.Nothing,+ sourceServerIDs =+ Lens.coerced Lens.# pSourceServerIDs_+ }++-- | Start Test by Tags.+startTest_tags :: Lens.Lens' StartTest (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+startTest_tags = Lens.lens (\StartTest' {tags} -> tags) (\s@StartTest' {} a -> s {tags = a} :: StartTest) Prelude.. Lens.mapping (Data._Sensitive Prelude.. Lens.coerced)++-- | Start Test for Source Server IDs.+startTest_sourceServerIDs :: Lens.Lens' StartTest (Prelude.NonEmpty Prelude.Text)+startTest_sourceServerIDs = Lens.lens (\StartTest' {sourceServerIDs} -> sourceServerIDs) (\s@StartTest' {} a -> s {sourceServerIDs = a} :: StartTest) Prelude.. Lens.coerced++instance Core.AWSRequest StartTest where+ type AWSResponse StartTest = StartTestResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ StartTestResponse'+ Prelude.<$> (x Data..?> "job")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable StartTest where+ hashWithSalt _salt StartTest' {..} =+ _salt+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` sourceServerIDs++instance Prelude.NFData StartTest where+ rnf StartTest' {..} =+ Prelude.rnf tags+ `Prelude.seq` Prelude.rnf sourceServerIDs++instance Data.ToHeaders StartTest where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON StartTest where+ toJSON StartTest' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("tags" Data..=) Prelude.<$> tags,+ Prelude.Just+ ("sourceServerIDs" Data..= sourceServerIDs)+ ]+ )++instance Data.ToPath StartTest where+ toPath = Prelude.const "/StartTest"++instance Data.ToQuery StartTest where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newStartTestResponse' smart constructor.+data StartTestResponse = StartTestResponse'+ { -- | Start Test Job response.+ job :: Prelude.Maybe Job,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'StartTestResponse' 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', 'startTestResponse_job' - Start Test Job response.+--+-- 'httpStatus', 'startTestResponse_httpStatus' - The response's http status code.+newStartTestResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ StartTestResponse+newStartTestResponse pHttpStatus_ =+ StartTestResponse'+ { job = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Start Test Job response.+startTestResponse_job :: Lens.Lens' StartTestResponse (Prelude.Maybe Job)+startTestResponse_job = Lens.lens (\StartTestResponse' {job} -> job) (\s@StartTestResponse' {} a -> s {job = a} :: StartTestResponse)++-- | The response's http status code.+startTestResponse_httpStatus :: Lens.Lens' StartTestResponse Prelude.Int+startTestResponse_httpStatus = Lens.lens (\StartTestResponse' {httpStatus} -> httpStatus) (\s@StartTestResponse' {} a -> s {httpStatus = a} :: StartTestResponse)++instance Prelude.NFData StartTestResponse where+ rnf StartTestResponse' {..} =+ Prelude.rnf job+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MGN/TagResource.hs view
@@ -0,0 +1,146 @@+{-# 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.MGN.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 overwrites only the specified tags for the specified Application+-- Migration Service resource or resources. When you specify an existing+-- tag key, the value is overwritten with the new value. Each resource can+-- have a maximum of 50 tags. Each tag consists of a key and optional+-- value.+module Amazonka.MGN.TagResource+ ( -- * Creating a Request+ TagResource (..),+ newTagResource,++ -- * Request Lenses+ tagResource_resourceArn,+ tagResource_tags,++ -- * Destructuring the Response+ TagResourceResponse (..),+ newTagResourceResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newTagResource' smart constructor.+data TagResource = TagResource'+ { -- | Tag resource by ARN.+ resourceArn :: Prelude.Text,+ -- | Tag resource by Tags.+ tags :: Data.Sensitive (Prelude.HashMap Prelude.Text Prelude.Text)+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TagResource' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'resourceArn', 'tagResource_resourceArn' - Tag resource by ARN.+--+-- 'tags', 'tagResource_tags' - Tag resource by Tags.+newTagResource ::+ -- | 'resourceArn'+ Prelude.Text ->+ TagResource+newTagResource pResourceArn_ =+ TagResource'+ { resourceArn = pResourceArn_,+ tags = Prelude.mempty+ }++-- | Tag resource by ARN.+tagResource_resourceArn :: Lens.Lens' TagResource Prelude.Text+tagResource_resourceArn = Lens.lens (\TagResource' {resourceArn} -> resourceArn) (\s@TagResource' {} a -> s {resourceArn = a} :: TagResource)++-- | Tag resource by Tags.+tagResource_tags :: Lens.Lens' TagResource (Prelude.HashMap Prelude.Text Prelude.Text)+tagResource_tags = Lens.lens (\TagResource' {tags} -> tags) (\s@TagResource' {} a -> s {tags = a} :: TagResource) Prelude.. Data._Sensitive Prelude.. Lens.coerced++instance Core.AWSRequest TagResource where+ type AWSResponse TagResource = TagResourceResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response = Response.receiveNull TagResourceResponse'++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'+ {+ }+ 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.+newTagResourceResponse ::+ TagResourceResponse+newTagResourceResponse = TagResourceResponse'++instance Prelude.NFData TagResourceResponse where+ rnf _ = ()
+ gen/Amazonka/MGN/TerminateTargetInstances.hs view
@@ -0,0 +1,189 @@+{-# 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.MGN.TerminateTargetInstances+-- 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 job that terminates specific launched EC2 Test and Cutover+-- instances. This command will not work for any Source Server with a+-- lifecycle.state of TESTING, CUTTING_OVER, or CUTOVER.+module Amazonka.MGN.TerminateTargetInstances+ ( -- * Creating a Request+ TerminateTargetInstances (..),+ newTerminateTargetInstances,++ -- * Request Lenses+ terminateTargetInstances_tags,+ terminateTargetInstances_sourceServerIDs,++ -- * Destructuring the Response+ TerminateTargetInstancesResponse (..),+ newTerminateTargetInstancesResponse,++ -- * Response Lenses+ terminateTargetInstancesResponse_job,+ terminateTargetInstancesResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newTerminateTargetInstances' smart constructor.+data TerminateTargetInstances = TerminateTargetInstances'+ { -- | Terminate Target instance by Tags.+ tags :: Prelude.Maybe (Data.Sensitive (Prelude.HashMap Prelude.Text Prelude.Text)),+ -- | Terminate Target instance by Source Server IDs.+ sourceServerIDs :: Prelude.NonEmpty Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TerminateTargetInstances' 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', 'terminateTargetInstances_tags' - Terminate Target instance by Tags.+--+-- 'sourceServerIDs', 'terminateTargetInstances_sourceServerIDs' - Terminate Target instance by Source Server IDs.+newTerminateTargetInstances ::+ -- | 'sourceServerIDs'+ Prelude.NonEmpty Prelude.Text ->+ TerminateTargetInstances+newTerminateTargetInstances pSourceServerIDs_ =+ TerminateTargetInstances'+ { tags = Prelude.Nothing,+ sourceServerIDs =+ Lens.coerced Lens.# pSourceServerIDs_+ }++-- | Terminate Target instance by Tags.+terminateTargetInstances_tags :: Lens.Lens' TerminateTargetInstances (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+terminateTargetInstances_tags = Lens.lens (\TerminateTargetInstances' {tags} -> tags) (\s@TerminateTargetInstances' {} a -> s {tags = a} :: TerminateTargetInstances) Prelude.. Lens.mapping (Data._Sensitive Prelude.. Lens.coerced)++-- | Terminate Target instance by Source Server IDs.+terminateTargetInstances_sourceServerIDs :: Lens.Lens' TerminateTargetInstances (Prelude.NonEmpty Prelude.Text)+terminateTargetInstances_sourceServerIDs = Lens.lens (\TerminateTargetInstances' {sourceServerIDs} -> sourceServerIDs) (\s@TerminateTargetInstances' {} a -> s {sourceServerIDs = a} :: TerminateTargetInstances) Prelude.. Lens.coerced++instance Core.AWSRequest TerminateTargetInstances where+ type+ AWSResponse TerminateTargetInstances =+ TerminateTargetInstancesResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ TerminateTargetInstancesResponse'+ Prelude.<$> (x Data..?> "job")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable TerminateTargetInstances where+ hashWithSalt _salt TerminateTargetInstances' {..} =+ _salt+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` sourceServerIDs++instance Prelude.NFData TerminateTargetInstances where+ rnf TerminateTargetInstances' {..} =+ Prelude.rnf tags+ `Prelude.seq` Prelude.rnf sourceServerIDs++instance Data.ToHeaders TerminateTargetInstances where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON TerminateTargetInstances where+ toJSON TerminateTargetInstances' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("tags" Data..=) Prelude.<$> tags,+ Prelude.Just+ ("sourceServerIDs" Data..= sourceServerIDs)+ ]+ )++instance Data.ToPath TerminateTargetInstances where+ toPath = Prelude.const "/TerminateTargetInstances"++instance Data.ToQuery TerminateTargetInstances where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newTerminateTargetInstancesResponse' smart constructor.+data TerminateTargetInstancesResponse = TerminateTargetInstancesResponse'+ { -- | Terminate Target instance Job response.+ job :: Prelude.Maybe Job,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TerminateTargetInstancesResponse' 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', 'terminateTargetInstancesResponse_job' - Terminate Target instance Job response.+--+-- 'httpStatus', 'terminateTargetInstancesResponse_httpStatus' - The response's http status code.+newTerminateTargetInstancesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ TerminateTargetInstancesResponse+newTerminateTargetInstancesResponse pHttpStatus_ =+ TerminateTargetInstancesResponse'+ { job =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Terminate Target instance Job response.+terminateTargetInstancesResponse_job :: Lens.Lens' TerminateTargetInstancesResponse (Prelude.Maybe Job)+terminateTargetInstancesResponse_job = Lens.lens (\TerminateTargetInstancesResponse' {job} -> job) (\s@TerminateTargetInstancesResponse' {} a -> s {job = a} :: TerminateTargetInstancesResponse)++-- | The response's http status code.+terminateTargetInstancesResponse_httpStatus :: Lens.Lens' TerminateTargetInstancesResponse Prelude.Int+terminateTargetInstancesResponse_httpStatus = Lens.lens (\TerminateTargetInstancesResponse' {httpStatus} -> httpStatus) (\s@TerminateTargetInstancesResponse' {} a -> s {httpStatus = a} :: TerminateTargetInstancesResponse)++instance+ Prelude.NFData+ TerminateTargetInstancesResponse+ where+ rnf TerminateTargetInstancesResponse' {..} =+ Prelude.rnf job+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/MGN/Types.hs view
@@ -0,0 +1,801 @@+{-# 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.MGN.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.MGN.Types+ ( -- * Service Configuration+ defaultService,++ -- * Errors+ _AccessDeniedException,+ _ConflictException,+ _InternalServerException,+ _ResourceNotFoundException,+ _ServiceQuotaExceededException,+ _ThrottlingException,+ _UninitializedAccountException,+ _ValidationException,++ -- * ApplicationHealthStatus+ ApplicationHealthStatus (..),++ -- * ApplicationProgressStatus+ ApplicationProgressStatus (..),++ -- * BootMode+ BootMode (..),++ -- * ChangeServerLifeCycleStateSourceServerLifecycleState+ ChangeServerLifeCycleStateSourceServerLifecycleState (..),++ -- * DataReplicationErrorString+ DataReplicationErrorString (..),++ -- * DataReplicationInitiationStepName+ DataReplicationInitiationStepName (..),++ -- * DataReplicationInitiationStepStatus+ DataReplicationInitiationStepStatus (..),++ -- * DataReplicationState+ DataReplicationState (..),++ -- * FirstBoot+ FirstBoot (..),++ -- * InitiatedBy+ InitiatedBy (..),++ -- * JobLogEvent+ JobLogEvent (..),++ -- * JobStatus+ JobStatus (..),++ -- * JobType+ JobType (..),++ -- * LaunchDisposition+ LaunchDisposition (..),++ -- * LaunchStatus+ LaunchStatus (..),++ -- * LifeCycleState+ LifeCycleState (..),++ -- * PostLaunchActionExecutionStatus+ PostLaunchActionExecutionStatus (..),++ -- * PostLaunchActionsDeploymentType+ PostLaunchActionsDeploymentType (..),++ -- * ReplicationConfigurationDataPlaneRouting+ ReplicationConfigurationDataPlaneRouting (..),++ -- * ReplicationConfigurationDefaultLargeStagingDiskType+ ReplicationConfigurationDefaultLargeStagingDiskType (..),++ -- * ReplicationConfigurationEbsEncryption+ ReplicationConfigurationEbsEncryption (..),++ -- * ReplicationConfigurationReplicatedDiskStagingDiskType+ ReplicationConfigurationReplicatedDiskStagingDiskType (..),++ -- * ReplicationType+ ReplicationType (..),++ -- * SsmDocumentType+ SsmDocumentType (..),++ -- * SsmParameterStoreParameterType+ SsmParameterStoreParameterType (..),++ -- * TargetInstanceTypeRightSizingMethod+ TargetInstanceTypeRightSizingMethod (..),++ -- * VolumeType+ VolumeType (..),++ -- * WaveHealthStatus+ WaveHealthStatus (..),++ -- * WaveProgressStatus+ WaveProgressStatus (..),++ -- * Application+ Application (..),+ newApplication,+ application_applicationAggregatedStatus,+ application_applicationID,+ application_arn,+ application_creationDateTime,+ application_description,+ application_isArchived,+ application_lastModifiedDateTime,+ application_name,+ application_tags,+ application_waveID,++ -- * ApplicationAggregatedStatus+ ApplicationAggregatedStatus (..),+ newApplicationAggregatedStatus,+ applicationAggregatedStatus_healthStatus,+ applicationAggregatedStatus_lastUpdateDateTime,+ applicationAggregatedStatus_progressStatus,+ applicationAggregatedStatus_totalSourceServers,++ -- * CPU+ CPU (..),+ newCPU,+ cpu_cores,+ cpu_modelName,++ -- * ChangeServerLifeCycleStateSourceServerLifecycle+ ChangeServerLifeCycleStateSourceServerLifecycle (..),+ newChangeServerLifeCycleStateSourceServerLifecycle,+ changeServerLifeCycleStateSourceServerLifecycle_state,++ -- * DataReplicationError+ DataReplicationError (..),+ newDataReplicationError,+ dataReplicationError_error,+ dataReplicationError_rawError,++ -- * DataReplicationInfo+ DataReplicationInfo (..),+ newDataReplicationInfo,+ dataReplicationInfo_dataReplicationError,+ dataReplicationInfo_dataReplicationInitiation,+ dataReplicationInfo_dataReplicationState,+ dataReplicationInfo_etaDateTime,+ dataReplicationInfo_lagDuration,+ dataReplicationInfo_lastSnapshotDateTime,+ dataReplicationInfo_replicatedDisks,++ -- * DataReplicationInfoReplicatedDisk+ DataReplicationInfoReplicatedDisk (..),+ newDataReplicationInfoReplicatedDisk,+ dataReplicationInfoReplicatedDisk_backloggedStorageBytes,+ dataReplicationInfoReplicatedDisk_deviceName,+ dataReplicationInfoReplicatedDisk_replicatedStorageBytes,+ dataReplicationInfoReplicatedDisk_rescannedStorageBytes,+ dataReplicationInfoReplicatedDisk_totalStorageBytes,++ -- * DataReplicationInitiation+ DataReplicationInitiation (..),+ newDataReplicationInitiation,+ dataReplicationInitiation_nextAttemptDateTime,+ dataReplicationInitiation_startDateTime,+ dataReplicationInitiation_steps,++ -- * DataReplicationInitiationStep+ DataReplicationInitiationStep (..),+ newDataReplicationInitiationStep,+ dataReplicationInitiationStep_name,+ dataReplicationInitiationStep_status,++ -- * DescribeJobsRequestFilters+ DescribeJobsRequestFilters (..),+ newDescribeJobsRequestFilters,+ describeJobsRequestFilters_fromDate,+ describeJobsRequestFilters_jobIDs,+ describeJobsRequestFilters_toDate,++ -- * DescribeSourceServersRequestFilters+ DescribeSourceServersRequestFilters (..),+ newDescribeSourceServersRequestFilters,+ describeSourceServersRequestFilters_applicationIDs,+ describeSourceServersRequestFilters_isArchived,+ describeSourceServersRequestFilters_lifeCycleStates,+ describeSourceServersRequestFilters_replicationTypes,+ describeSourceServersRequestFilters_sourceServerIDs,++ -- * Disk+ Disk (..),+ newDisk,+ disk_bytes,+ disk_deviceName,++ -- * IdentificationHints+ IdentificationHints (..),+ newIdentificationHints,+ identificationHints_awsInstanceID,+ identificationHints_fqdn,+ identificationHints_hostname,+ identificationHints_vmPath,+ identificationHints_vmWareUuid,++ -- * Job+ Job (..),+ newJob,+ job_arn,+ job_creationDateTime,+ job_endDateTime,+ job_initiatedBy,+ job_participatingServers,+ job_status,+ job_tags,+ job_type,+ job_jobID,++ -- * JobLog+ JobLog (..),+ newJobLog,+ jobLog_event,+ jobLog_eventData,+ jobLog_logDateTime,++ -- * JobLogEventData+ JobLogEventData (..),+ newJobLogEventData,+ jobLogEventData_conversionServerID,+ jobLogEventData_rawError,+ jobLogEventData_sourceServerID,+ jobLogEventData_targetInstanceID,++ -- * JobPostLaunchActionsLaunchStatus+ JobPostLaunchActionsLaunchStatus (..),+ newJobPostLaunchActionsLaunchStatus,+ jobPostLaunchActionsLaunchStatus_executionID,+ jobPostLaunchActionsLaunchStatus_executionStatus,+ jobPostLaunchActionsLaunchStatus_failureReason,+ jobPostLaunchActionsLaunchStatus_ssmDocument,+ jobPostLaunchActionsLaunchStatus_ssmDocumentType,++ -- * LaunchConfiguration+ LaunchConfiguration (..),+ newLaunchConfiguration,+ launchConfiguration_bootMode,+ launchConfiguration_copyPrivateIp,+ launchConfiguration_copyTags,+ launchConfiguration_ec2LaunchTemplateID,+ launchConfiguration_enableMapAutoTagging,+ launchConfiguration_launchDisposition,+ launchConfiguration_licensing,+ launchConfiguration_mapAutoTaggingMpeID,+ launchConfiguration_name,+ launchConfiguration_postLaunchActions,+ launchConfiguration_sourceServerID,+ launchConfiguration_targetInstanceTypeRightSizingMethod,++ -- * LaunchConfigurationTemplate+ LaunchConfigurationTemplate (..),+ newLaunchConfigurationTemplate,+ launchConfigurationTemplate_arn,+ launchConfigurationTemplate_associatePublicIpAddress,+ launchConfigurationTemplate_bootMode,+ launchConfigurationTemplate_copyPrivateIp,+ launchConfigurationTemplate_copyTags,+ launchConfigurationTemplate_ec2LaunchTemplateID,+ launchConfigurationTemplate_enableMapAutoTagging,+ launchConfigurationTemplate_largeVolumeConf,+ launchConfigurationTemplate_launchDisposition,+ launchConfigurationTemplate_licensing,+ launchConfigurationTemplate_mapAutoTaggingMpeID,+ launchConfigurationTemplate_postLaunchActions,+ launchConfigurationTemplate_smallVolumeConf,+ launchConfigurationTemplate_smallVolumeMaxSize,+ launchConfigurationTemplate_tags,+ launchConfigurationTemplate_targetInstanceTypeRightSizingMethod,+ launchConfigurationTemplate_launchConfigurationTemplateID,++ -- * LaunchTemplateDiskConf+ LaunchTemplateDiskConf (..),+ newLaunchTemplateDiskConf,+ launchTemplateDiskConf_iops,+ launchTemplateDiskConf_throughput,+ launchTemplateDiskConf_volumeType,++ -- * LaunchedInstance+ LaunchedInstance (..),+ newLaunchedInstance,+ launchedInstance_ec2InstanceID,+ launchedInstance_firstBoot,+ launchedInstance_jobID,++ -- * Licensing+ Licensing (..),+ newLicensing,+ licensing_osByol,++ -- * LifeCycle+ LifeCycle (..),+ newLifeCycle,+ lifeCycle_addedToServiceDateTime,+ lifeCycle_elapsedReplicationDuration,+ lifeCycle_firstByteDateTime,+ lifeCycle_lastCutover,+ lifeCycle_lastSeenByServiceDateTime,+ lifeCycle_lastTest,+ lifeCycle_state,++ -- * LifeCycleLastCutover+ LifeCycleLastCutover (..),+ newLifeCycleLastCutover,+ lifeCycleLastCutover_finalized,+ lifeCycleLastCutover_initiated,+ lifeCycleLastCutover_reverted,++ -- * LifeCycleLastCutoverFinalized+ LifeCycleLastCutoverFinalized (..),+ newLifeCycleLastCutoverFinalized,+ lifeCycleLastCutoverFinalized_apiCallDateTime,++ -- * LifeCycleLastCutoverInitiated+ LifeCycleLastCutoverInitiated (..),+ newLifeCycleLastCutoverInitiated,+ lifeCycleLastCutoverInitiated_apiCallDateTime,+ lifeCycleLastCutoverInitiated_jobID,++ -- * LifeCycleLastCutoverReverted+ LifeCycleLastCutoverReverted (..),+ newLifeCycleLastCutoverReverted,+ lifeCycleLastCutoverReverted_apiCallDateTime,++ -- * LifeCycleLastTest+ LifeCycleLastTest (..),+ newLifeCycleLastTest,+ lifeCycleLastTest_finalized,+ lifeCycleLastTest_initiated,+ lifeCycleLastTest_reverted,++ -- * LifeCycleLastTestFinalized+ LifeCycleLastTestFinalized (..),+ newLifeCycleLastTestFinalized,+ lifeCycleLastTestFinalized_apiCallDateTime,++ -- * LifeCycleLastTestInitiated+ LifeCycleLastTestInitiated (..),+ newLifeCycleLastTestInitiated,+ lifeCycleLastTestInitiated_apiCallDateTime,+ lifeCycleLastTestInitiated_jobID,++ -- * LifeCycleLastTestReverted+ LifeCycleLastTestReverted (..),+ newLifeCycleLastTestReverted,+ lifeCycleLastTestReverted_apiCallDateTime,++ -- * ListApplicationsRequestFilters+ ListApplicationsRequestFilters (..),+ newListApplicationsRequestFilters,+ listApplicationsRequestFilters_applicationIDs,+ listApplicationsRequestFilters_isArchived,+ listApplicationsRequestFilters_waveIDs,++ -- * ListWavesRequestFilters+ ListWavesRequestFilters (..),+ newListWavesRequestFilters,+ listWavesRequestFilters_isArchived,+ listWavesRequestFilters_waveIDs,++ -- * NetworkInterface+ NetworkInterface (..),+ newNetworkInterface,+ networkInterface_ips,+ networkInterface_isPrimary,+ networkInterface_macAddress,++ -- * OS+ OS (..),+ newOS,+ os_fullString,++ -- * ParticipatingServer+ ParticipatingServer (..),+ newParticipatingServer,+ participatingServer_launchStatus,+ participatingServer_launchedEc2InstanceID,+ participatingServer_postLaunchActionsStatus,+ participatingServer_sourceServerID,++ -- * PostLaunchActions+ PostLaunchActions (..),+ newPostLaunchActions,+ postLaunchActions_cloudWatchLogGroupName,+ postLaunchActions_deployment,+ postLaunchActions_s3LogBucket,+ postLaunchActions_s3OutputKeyPrefix,+ postLaunchActions_ssmDocuments,++ -- * PostLaunchActionsStatus+ PostLaunchActionsStatus (..),+ newPostLaunchActionsStatus,+ postLaunchActionsStatus_postLaunchActionsLaunchStatusList,+ postLaunchActionsStatus_ssmAgentDiscoveryDatetime,++ -- * ReplicationConfiguration+ ReplicationConfiguration (..),+ newReplicationConfiguration,+ replicationConfiguration_associateDefaultSecurityGroup,+ replicationConfiguration_bandwidthThrottling,+ replicationConfiguration_createPublicIP,+ replicationConfiguration_dataPlaneRouting,+ replicationConfiguration_defaultLargeStagingDiskType,+ replicationConfiguration_ebsEncryption,+ replicationConfiguration_ebsEncryptionKeyArn,+ replicationConfiguration_name,+ replicationConfiguration_replicatedDisks,+ replicationConfiguration_replicationServerInstanceType,+ replicationConfiguration_replicationServersSecurityGroupsIDs,+ replicationConfiguration_sourceServerID,+ replicationConfiguration_stagingAreaSubnetId,+ replicationConfiguration_stagingAreaTags,+ replicationConfiguration_useDedicatedReplicationServer,++ -- * ReplicationConfigurationReplicatedDisk+ ReplicationConfigurationReplicatedDisk (..),+ newReplicationConfigurationReplicatedDisk,+ replicationConfigurationReplicatedDisk_deviceName,+ replicationConfigurationReplicatedDisk_iops,+ replicationConfigurationReplicatedDisk_isBootDisk,+ replicationConfigurationReplicatedDisk_stagingDiskType,+ replicationConfigurationReplicatedDisk_throughput,++ -- * ReplicationConfigurationTemplate+ ReplicationConfigurationTemplate (..),+ newReplicationConfigurationTemplate,+ replicationConfigurationTemplate_arn,+ replicationConfigurationTemplate_associateDefaultSecurityGroup,+ replicationConfigurationTemplate_bandwidthThrottling,+ replicationConfigurationTemplate_createPublicIP,+ replicationConfigurationTemplate_dataPlaneRouting,+ replicationConfigurationTemplate_defaultLargeStagingDiskType,+ replicationConfigurationTemplate_ebsEncryption,+ replicationConfigurationTemplate_ebsEncryptionKeyArn,+ replicationConfigurationTemplate_replicationServerInstanceType,+ replicationConfigurationTemplate_replicationServersSecurityGroupsIDs,+ replicationConfigurationTemplate_stagingAreaSubnetId,+ replicationConfigurationTemplate_stagingAreaTags,+ replicationConfigurationTemplate_tags,+ replicationConfigurationTemplate_useDedicatedReplicationServer,+ replicationConfigurationTemplate_replicationConfigurationTemplateID,++ -- * SourceProperties+ SourceProperties (..),+ newSourceProperties,+ sourceProperties_cpus,+ sourceProperties_disks,+ sourceProperties_identificationHints,+ sourceProperties_lastUpdatedDateTime,+ sourceProperties_networkInterfaces,+ sourceProperties_os,+ sourceProperties_ramBytes,+ sourceProperties_recommendedInstanceType,++ -- * SourceServer+ SourceServer (..),+ newSourceServer,+ sourceServer_applicationID,+ sourceServer_arn,+ sourceServer_dataReplicationInfo,+ sourceServer_isArchived,+ sourceServer_launchedInstance,+ sourceServer_lifeCycle,+ sourceServer_replicationType,+ sourceServer_sourceProperties,+ sourceServer_sourceServerID,+ sourceServer_tags,+ sourceServer_vcenterClientID,++ -- * SourceServerActionDocument+ SourceServerActionDocument (..),+ newSourceServerActionDocument,+ sourceServerActionDocument_actionID,+ sourceServerActionDocument_actionName,+ sourceServerActionDocument_active,+ sourceServerActionDocument_documentIdentifier,+ sourceServerActionDocument_documentVersion,+ sourceServerActionDocument_mustSucceedForCutover,+ sourceServerActionDocument_order,+ sourceServerActionDocument_parameters,+ sourceServerActionDocument_timeoutSeconds,++ -- * SourceServerActionsRequestFilters+ SourceServerActionsRequestFilters (..),+ newSourceServerActionsRequestFilters,+ sourceServerActionsRequestFilters_actionIDs,++ -- * SsmDocument+ SsmDocument (..),+ newSsmDocument,+ ssmDocument_mustSucceedForCutover,+ ssmDocument_parameters,+ ssmDocument_timeoutSeconds,+ ssmDocument_actionName,+ ssmDocument_ssmDocumentName,++ -- * SsmParameterStoreParameter+ SsmParameterStoreParameter (..),+ newSsmParameterStoreParameter,+ ssmParameterStoreParameter_parameterName,+ ssmParameterStoreParameter_parameterType,++ -- * TemplateActionDocument+ TemplateActionDocument (..),+ newTemplateActionDocument,+ templateActionDocument_actionID,+ templateActionDocument_actionName,+ templateActionDocument_active,+ templateActionDocument_documentIdentifier,+ templateActionDocument_documentVersion,+ templateActionDocument_mustSucceedForCutover,+ templateActionDocument_operatingSystem,+ templateActionDocument_order,+ templateActionDocument_parameters,+ templateActionDocument_timeoutSeconds,++ -- * TemplateActionsRequestFilters+ TemplateActionsRequestFilters (..),+ newTemplateActionsRequestFilters,+ templateActionsRequestFilters_actionIDs,++ -- * VcenterClient+ VcenterClient (..),+ newVcenterClient,+ vcenterClient_arn,+ vcenterClient_datacenterName,+ vcenterClient_hostname,+ vcenterClient_lastSeenDatetime,+ vcenterClient_sourceServerTags,+ vcenterClient_tags,+ vcenterClient_vcenterClientID,+ vcenterClient_vcenterUUID,++ -- * Wave+ Wave (..),+ newWave,+ wave_arn,+ wave_creationDateTime,+ wave_description,+ wave_isArchived,+ wave_lastModifiedDateTime,+ wave_name,+ wave_tags,+ wave_waveAggregatedStatus,+ wave_waveID,++ -- * WaveAggregatedStatus+ WaveAggregatedStatus (..),+ newWaveAggregatedStatus,+ waveAggregatedStatus_healthStatus,+ waveAggregatedStatus_lastUpdateDateTime,+ waveAggregatedStatus_progressStatus,+ waveAggregatedStatus_replicationStartedDateTime,+ waveAggregatedStatus_totalApplications,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import Amazonka.MGN.Types.Application+import Amazonka.MGN.Types.ApplicationAggregatedStatus+import Amazonka.MGN.Types.ApplicationHealthStatus+import Amazonka.MGN.Types.ApplicationProgressStatus+import Amazonka.MGN.Types.BootMode+import Amazonka.MGN.Types.CPU+import Amazonka.MGN.Types.ChangeServerLifeCycleStateSourceServerLifecycle+import Amazonka.MGN.Types.ChangeServerLifeCycleStateSourceServerLifecycleState+import Amazonka.MGN.Types.DataReplicationError+import Amazonka.MGN.Types.DataReplicationErrorString+import Amazonka.MGN.Types.DataReplicationInfo+import Amazonka.MGN.Types.DataReplicationInfoReplicatedDisk+import Amazonka.MGN.Types.DataReplicationInitiation+import Amazonka.MGN.Types.DataReplicationInitiationStep+import Amazonka.MGN.Types.DataReplicationInitiationStepName+import Amazonka.MGN.Types.DataReplicationInitiationStepStatus+import Amazonka.MGN.Types.DataReplicationState+import Amazonka.MGN.Types.DescribeJobsRequestFilters+import Amazonka.MGN.Types.DescribeSourceServersRequestFilters+import Amazonka.MGN.Types.Disk+import Amazonka.MGN.Types.FirstBoot+import Amazonka.MGN.Types.IdentificationHints+import Amazonka.MGN.Types.InitiatedBy+import Amazonka.MGN.Types.Job+import Amazonka.MGN.Types.JobLog+import Amazonka.MGN.Types.JobLogEvent+import Amazonka.MGN.Types.JobLogEventData+import Amazonka.MGN.Types.JobPostLaunchActionsLaunchStatus+import Amazonka.MGN.Types.JobStatus+import Amazonka.MGN.Types.JobType+import Amazonka.MGN.Types.LaunchConfiguration+import Amazonka.MGN.Types.LaunchConfigurationTemplate+import Amazonka.MGN.Types.LaunchDisposition+import Amazonka.MGN.Types.LaunchStatus+import Amazonka.MGN.Types.LaunchTemplateDiskConf+import Amazonka.MGN.Types.LaunchedInstance+import Amazonka.MGN.Types.Licensing+import Amazonka.MGN.Types.LifeCycle+import Amazonka.MGN.Types.LifeCycleLastCutover+import Amazonka.MGN.Types.LifeCycleLastCutoverFinalized+import Amazonka.MGN.Types.LifeCycleLastCutoverInitiated+import Amazonka.MGN.Types.LifeCycleLastCutoverReverted+import Amazonka.MGN.Types.LifeCycleLastTest+import Amazonka.MGN.Types.LifeCycleLastTestFinalized+import Amazonka.MGN.Types.LifeCycleLastTestInitiated+import Amazonka.MGN.Types.LifeCycleLastTestReverted+import Amazonka.MGN.Types.LifeCycleState+import Amazonka.MGN.Types.ListApplicationsRequestFilters+import Amazonka.MGN.Types.ListWavesRequestFilters+import Amazonka.MGN.Types.NetworkInterface+import Amazonka.MGN.Types.OS+import Amazonka.MGN.Types.ParticipatingServer+import Amazonka.MGN.Types.PostLaunchActionExecutionStatus+import Amazonka.MGN.Types.PostLaunchActions+import Amazonka.MGN.Types.PostLaunchActionsDeploymentType+import Amazonka.MGN.Types.PostLaunchActionsStatus+import Amazonka.MGN.Types.ReplicationConfiguration+import Amazonka.MGN.Types.ReplicationConfigurationDataPlaneRouting+import Amazonka.MGN.Types.ReplicationConfigurationDefaultLargeStagingDiskType+import Amazonka.MGN.Types.ReplicationConfigurationEbsEncryption+import Amazonka.MGN.Types.ReplicationConfigurationReplicatedDisk+import Amazonka.MGN.Types.ReplicationConfigurationReplicatedDiskStagingDiskType+import Amazonka.MGN.Types.ReplicationConfigurationTemplate+import Amazonka.MGN.Types.ReplicationType+import Amazonka.MGN.Types.SourceProperties+import Amazonka.MGN.Types.SourceServer+import Amazonka.MGN.Types.SourceServerActionDocument+import Amazonka.MGN.Types.SourceServerActionsRequestFilters+import Amazonka.MGN.Types.SsmDocument+import Amazonka.MGN.Types.SsmDocumentType+import Amazonka.MGN.Types.SsmParameterStoreParameter+import Amazonka.MGN.Types.SsmParameterStoreParameterType+import Amazonka.MGN.Types.TargetInstanceTypeRightSizingMethod+import Amazonka.MGN.Types.TemplateActionDocument+import Amazonka.MGN.Types.TemplateActionsRequestFilters+import Amazonka.MGN.Types.VcenterClient+import Amazonka.MGN.Types.VolumeType+import Amazonka.MGN.Types.Wave+import Amazonka.MGN.Types.WaveAggregatedStatus+import Amazonka.MGN.Types.WaveHealthStatus+import Amazonka.MGN.Types.WaveProgressStatus+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Sign.V4 as Sign++-- | API version @2020-02-26@ of the Amazon Application Migration Service SDK configuration.+defaultService :: Core.Service+defaultService =+ Core.Service+ { Core.abbrev = "MGN",+ Core.signer = Sign.v4,+ Core.endpointPrefix = "mgn",+ Core.signingName = "mgn",+ Core.version = "2020-02-26",+ Core.s3AddressingStyle = Core.S3AddressingStyleAuto,+ Core.endpoint = Core.defaultEndpoint defaultService,+ Core.timeout = Prelude.Just 70,+ Core.check = Core.statusSuccess,+ Core.error = Core.parseJSONError "MGN",+ 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++-- | Operating denied due to a file permission or access check error.+_AccessDeniedException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_AccessDeniedException =+ Core._MatchServiceError+ defaultService+ "AccessDeniedException"+ Prelude.. Core.hasStatus 403++-- | The request could not be completed due to a conflict with the current+-- state of the target resource.+_ConflictException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ConflictException =+ Core._MatchServiceError+ defaultService+ "ConflictException"+ Prelude.. Core.hasStatus 409++-- | The server encountered an unexpected condition that prevented it from+-- fulfilling the request.+_InternalServerException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InternalServerException =+ Core._MatchServiceError+ defaultService+ "InternalServerException"+ Prelude.. Core.hasStatus 500++-- | Resource not found exception.+_ResourceNotFoundException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ResourceNotFoundException =+ Core._MatchServiceError+ defaultService+ "ResourceNotFoundException"+ Prelude.. Core.hasStatus 404++-- | The request could not be completed because its exceeded the service+-- quota.+_ServiceQuotaExceededException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ServiceQuotaExceededException =+ Core._MatchServiceError+ defaultService+ "ServiceQuotaExceededException"+ Prelude.. Core.hasStatus 402++-- | Reached throttling quota exception.+_ThrottlingException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ThrottlingException =+ Core._MatchServiceError+ defaultService+ "ThrottlingException"+ Prelude.. Core.hasStatus 429++-- | Uninitialized account exception.+_UninitializedAccountException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_UninitializedAccountException =+ Core._MatchServiceError+ defaultService+ "UninitializedAccountException"+ Prelude.. Core.hasStatus 400++-- | Validate exception.+_ValidationException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ValidationException =+ Core._MatchServiceError+ defaultService+ "ValidationException"+ Prelude.. Core.hasStatus 400
+ gen/Amazonka/MGN/Types/Application.hs view
@@ -0,0 +1,180 @@+{-# 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.MGN.Types.Application+-- 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.MGN.Types.Application where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types.ApplicationAggregatedStatus+import qualified Amazonka.Prelude as Prelude++-- | /See:/ 'newApplication' smart constructor.+data Application = Application'+ { -- | Application aggregated status.+ applicationAggregatedStatus :: Prelude.Maybe ApplicationAggregatedStatus,+ -- | Application ID.+ applicationID :: Prelude.Maybe Prelude.Text,+ -- | Application ARN.+ arn :: Prelude.Maybe Prelude.Text,+ -- | Application creation dateTime.+ creationDateTime :: Prelude.Maybe Prelude.Text,+ -- | Application description.+ description :: Prelude.Maybe Prelude.Text,+ -- | Application archival status.+ isArchived :: Prelude.Maybe Prelude.Bool,+ -- | Application last modified dateTime.+ lastModifiedDateTime :: Prelude.Maybe Prelude.Text,+ -- | Application name.+ name :: Prelude.Maybe Prelude.Text,+ -- | Application tags.+ tags :: Prelude.Maybe (Data.Sensitive (Prelude.HashMap Prelude.Text Prelude.Text)),+ -- | Application wave ID.+ waveID :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Application' 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:+--+-- 'applicationAggregatedStatus', 'application_applicationAggregatedStatus' - Application aggregated status.+--+-- 'applicationID', 'application_applicationID' - Application ID.+--+-- 'arn', 'application_arn' - Application ARN.+--+-- 'creationDateTime', 'application_creationDateTime' - Application creation dateTime.+--+-- 'description', 'application_description' - Application description.+--+-- 'isArchived', 'application_isArchived' - Application archival status.+--+-- 'lastModifiedDateTime', 'application_lastModifiedDateTime' - Application last modified dateTime.+--+-- 'name', 'application_name' - Application name.+--+-- 'tags', 'application_tags' - Application tags.+--+-- 'waveID', 'application_waveID' - Application wave ID.+newApplication ::+ Application+newApplication =+ Application'+ { applicationAggregatedStatus =+ Prelude.Nothing,+ applicationID = Prelude.Nothing,+ arn = Prelude.Nothing,+ creationDateTime = Prelude.Nothing,+ description = Prelude.Nothing,+ isArchived = Prelude.Nothing,+ lastModifiedDateTime = Prelude.Nothing,+ name = Prelude.Nothing,+ tags = Prelude.Nothing,+ waveID = Prelude.Nothing+ }++-- | Application aggregated status.+application_applicationAggregatedStatus :: Lens.Lens' Application (Prelude.Maybe ApplicationAggregatedStatus)+application_applicationAggregatedStatus = Lens.lens (\Application' {applicationAggregatedStatus} -> applicationAggregatedStatus) (\s@Application' {} a -> s {applicationAggregatedStatus = a} :: Application)++-- | Application ID.+application_applicationID :: Lens.Lens' Application (Prelude.Maybe Prelude.Text)+application_applicationID = Lens.lens (\Application' {applicationID} -> applicationID) (\s@Application' {} a -> s {applicationID = a} :: Application)++-- | Application ARN.+application_arn :: Lens.Lens' Application (Prelude.Maybe Prelude.Text)+application_arn = Lens.lens (\Application' {arn} -> arn) (\s@Application' {} a -> s {arn = a} :: Application)++-- | Application creation dateTime.+application_creationDateTime :: Lens.Lens' Application (Prelude.Maybe Prelude.Text)+application_creationDateTime = Lens.lens (\Application' {creationDateTime} -> creationDateTime) (\s@Application' {} a -> s {creationDateTime = a} :: Application)++-- | Application description.+application_description :: Lens.Lens' Application (Prelude.Maybe Prelude.Text)+application_description = Lens.lens (\Application' {description} -> description) (\s@Application' {} a -> s {description = a} :: Application)++-- | Application archival status.+application_isArchived :: Lens.Lens' Application (Prelude.Maybe Prelude.Bool)+application_isArchived = Lens.lens (\Application' {isArchived} -> isArchived) (\s@Application' {} a -> s {isArchived = a} :: Application)++-- | Application last modified dateTime.+application_lastModifiedDateTime :: Lens.Lens' Application (Prelude.Maybe Prelude.Text)+application_lastModifiedDateTime = Lens.lens (\Application' {lastModifiedDateTime} -> lastModifiedDateTime) (\s@Application' {} a -> s {lastModifiedDateTime = a} :: Application)++-- | Application name.+application_name :: Lens.Lens' Application (Prelude.Maybe Prelude.Text)+application_name = Lens.lens (\Application' {name} -> name) (\s@Application' {} a -> s {name = a} :: Application)++-- | Application tags.+application_tags :: Lens.Lens' Application (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+application_tags = Lens.lens (\Application' {tags} -> tags) (\s@Application' {} a -> s {tags = a} :: Application) Prelude.. Lens.mapping (Data._Sensitive Prelude.. Lens.coerced)++-- | Application wave ID.+application_waveID :: Lens.Lens' Application (Prelude.Maybe Prelude.Text)+application_waveID = Lens.lens (\Application' {waveID} -> waveID) (\s@Application' {} a -> s {waveID = a} :: Application)++instance Data.FromJSON Application where+ parseJSON =+ Data.withObject+ "Application"+ ( \x ->+ Application'+ Prelude.<$> (x Data..:? "applicationAggregatedStatus")+ Prelude.<*> (x Data..:? "applicationID")+ Prelude.<*> (x Data..:? "arn")+ Prelude.<*> (x Data..:? "creationDateTime")+ Prelude.<*> (x Data..:? "description")+ Prelude.<*> (x Data..:? "isArchived")+ Prelude.<*> (x Data..:? "lastModifiedDateTime")+ Prelude.<*> (x Data..:? "name")+ Prelude.<*> (x Data..:? "tags" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "waveID")+ )++instance Prelude.Hashable Application where+ hashWithSalt _salt Application' {..} =+ _salt+ `Prelude.hashWithSalt` applicationAggregatedStatus+ `Prelude.hashWithSalt` applicationID+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` creationDateTime+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` isArchived+ `Prelude.hashWithSalt` lastModifiedDateTime+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` waveID++instance Prelude.NFData Application where+ rnf Application' {..} =+ Prelude.rnf applicationAggregatedStatus+ `Prelude.seq` Prelude.rnf applicationID+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf creationDateTime+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf isArchived+ `Prelude.seq` Prelude.rnf lastModifiedDateTime+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf waveID
+ gen/Amazonka/MGN/Types/ApplicationAggregatedStatus.hs view
@@ -0,0 +1,111 @@+{-# 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.MGN.Types.ApplicationAggregatedStatus+-- 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.MGN.Types.ApplicationAggregatedStatus where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types.ApplicationHealthStatus+import Amazonka.MGN.Types.ApplicationProgressStatus+import qualified Amazonka.Prelude as Prelude++-- | Application aggregated status.+--+-- /See:/ 'newApplicationAggregatedStatus' smart constructor.+data ApplicationAggregatedStatus = ApplicationAggregatedStatus'+ { -- | Application aggregated status health status.+ healthStatus :: Prelude.Maybe ApplicationHealthStatus,+ -- | Application aggregated status last update dateTime.+ lastUpdateDateTime :: Prelude.Maybe Prelude.Text,+ -- | Application aggregated status progress status.+ progressStatus :: Prelude.Maybe ApplicationProgressStatus,+ -- | Application aggregated status total source servers amount.+ totalSourceServers :: Prelude.Maybe Prelude.Natural+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ApplicationAggregatedStatus' 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:+--+-- 'healthStatus', 'applicationAggregatedStatus_healthStatus' - Application aggregated status health status.+--+-- 'lastUpdateDateTime', 'applicationAggregatedStatus_lastUpdateDateTime' - Application aggregated status last update dateTime.+--+-- 'progressStatus', 'applicationAggregatedStatus_progressStatus' - Application aggregated status progress status.+--+-- 'totalSourceServers', 'applicationAggregatedStatus_totalSourceServers' - Application aggregated status total source servers amount.+newApplicationAggregatedStatus ::+ ApplicationAggregatedStatus+newApplicationAggregatedStatus =+ ApplicationAggregatedStatus'+ { healthStatus =+ Prelude.Nothing,+ lastUpdateDateTime = Prelude.Nothing,+ progressStatus = Prelude.Nothing,+ totalSourceServers = Prelude.Nothing+ }++-- | Application aggregated status health status.+applicationAggregatedStatus_healthStatus :: Lens.Lens' ApplicationAggregatedStatus (Prelude.Maybe ApplicationHealthStatus)+applicationAggregatedStatus_healthStatus = Lens.lens (\ApplicationAggregatedStatus' {healthStatus} -> healthStatus) (\s@ApplicationAggregatedStatus' {} a -> s {healthStatus = a} :: ApplicationAggregatedStatus)++-- | Application aggregated status last update dateTime.+applicationAggregatedStatus_lastUpdateDateTime :: Lens.Lens' ApplicationAggregatedStatus (Prelude.Maybe Prelude.Text)+applicationAggregatedStatus_lastUpdateDateTime = Lens.lens (\ApplicationAggregatedStatus' {lastUpdateDateTime} -> lastUpdateDateTime) (\s@ApplicationAggregatedStatus' {} a -> s {lastUpdateDateTime = a} :: ApplicationAggregatedStatus)++-- | Application aggregated status progress status.+applicationAggregatedStatus_progressStatus :: Lens.Lens' ApplicationAggregatedStatus (Prelude.Maybe ApplicationProgressStatus)+applicationAggregatedStatus_progressStatus = Lens.lens (\ApplicationAggregatedStatus' {progressStatus} -> progressStatus) (\s@ApplicationAggregatedStatus' {} a -> s {progressStatus = a} :: ApplicationAggregatedStatus)++-- | Application aggregated status total source servers amount.+applicationAggregatedStatus_totalSourceServers :: Lens.Lens' ApplicationAggregatedStatus (Prelude.Maybe Prelude.Natural)+applicationAggregatedStatus_totalSourceServers = Lens.lens (\ApplicationAggregatedStatus' {totalSourceServers} -> totalSourceServers) (\s@ApplicationAggregatedStatus' {} a -> s {totalSourceServers = a} :: ApplicationAggregatedStatus)++instance Data.FromJSON ApplicationAggregatedStatus where+ parseJSON =+ Data.withObject+ "ApplicationAggregatedStatus"+ ( \x ->+ ApplicationAggregatedStatus'+ Prelude.<$> (x Data..:? "healthStatus")+ Prelude.<*> (x Data..:? "lastUpdateDateTime")+ Prelude.<*> (x Data..:? "progressStatus")+ Prelude.<*> (x Data..:? "totalSourceServers")+ )++instance Prelude.Hashable ApplicationAggregatedStatus where+ hashWithSalt _salt ApplicationAggregatedStatus' {..} =+ _salt+ `Prelude.hashWithSalt` healthStatus+ `Prelude.hashWithSalt` lastUpdateDateTime+ `Prelude.hashWithSalt` progressStatus+ `Prelude.hashWithSalt` totalSourceServers++instance Prelude.NFData ApplicationAggregatedStatus where+ rnf ApplicationAggregatedStatus' {..} =+ Prelude.rnf healthStatus+ `Prelude.seq` Prelude.rnf lastUpdateDateTime+ `Prelude.seq` Prelude.rnf progressStatus+ `Prelude.seq` Prelude.rnf totalSourceServers
+ gen/Amazonka/MGN/Types/ApplicationHealthStatus.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.MGN.Types.ApplicationHealthStatus+-- 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.MGN.Types.ApplicationHealthStatus+ ( ApplicationHealthStatus+ ( ..,+ ApplicationHealthStatus_ERROR,+ ApplicationHealthStatus_HEALTHY,+ ApplicationHealthStatus_LAGGING+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ApplicationHealthStatus = ApplicationHealthStatus'+ { fromApplicationHealthStatus ::+ 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 ApplicationHealthStatus_ERROR :: ApplicationHealthStatus+pattern ApplicationHealthStatus_ERROR = ApplicationHealthStatus' "ERROR"++pattern ApplicationHealthStatus_HEALTHY :: ApplicationHealthStatus+pattern ApplicationHealthStatus_HEALTHY = ApplicationHealthStatus' "HEALTHY"++pattern ApplicationHealthStatus_LAGGING :: ApplicationHealthStatus+pattern ApplicationHealthStatus_LAGGING = ApplicationHealthStatus' "LAGGING"++{-# COMPLETE+ ApplicationHealthStatus_ERROR,+ ApplicationHealthStatus_HEALTHY,+ ApplicationHealthStatus_LAGGING,+ ApplicationHealthStatus'+ #-}
+ gen/Amazonka/MGN/Types/ApplicationProgressStatus.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.MGN.Types.ApplicationProgressStatus+-- 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.MGN.Types.ApplicationProgressStatus+ ( ApplicationProgressStatus+ ( ..,+ ApplicationProgressStatus_COMPLETED,+ ApplicationProgressStatus_IN_PROGRESS,+ ApplicationProgressStatus_NOT_STARTED+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ApplicationProgressStatus = ApplicationProgressStatus'+ { fromApplicationProgressStatus ::+ 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 ApplicationProgressStatus_COMPLETED :: ApplicationProgressStatus+pattern ApplicationProgressStatus_COMPLETED = ApplicationProgressStatus' "COMPLETED"++pattern ApplicationProgressStatus_IN_PROGRESS :: ApplicationProgressStatus+pattern ApplicationProgressStatus_IN_PROGRESS = ApplicationProgressStatus' "IN_PROGRESS"++pattern ApplicationProgressStatus_NOT_STARTED :: ApplicationProgressStatus+pattern ApplicationProgressStatus_NOT_STARTED = ApplicationProgressStatus' "NOT_STARTED"++{-# COMPLETE+ ApplicationProgressStatus_COMPLETED,+ ApplicationProgressStatus_IN_PROGRESS,+ ApplicationProgressStatus_NOT_STARTED,+ ApplicationProgressStatus'+ #-}
+ gen/Amazonka/MGN/Types/BootMode.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.MGN.Types.BootMode+-- 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.MGN.Types.BootMode+ ( BootMode+ ( ..,+ BootMode_LEGACY_BIOS,+ BootMode_UEFI+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype BootMode = BootMode'+ { fromBootMode ::+ 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 BootMode_LEGACY_BIOS :: BootMode+pattern BootMode_LEGACY_BIOS = BootMode' "LEGACY_BIOS"++pattern BootMode_UEFI :: BootMode+pattern BootMode_UEFI = BootMode' "UEFI"++{-# COMPLETE+ BootMode_LEGACY_BIOS,+ BootMode_UEFI,+ BootMode'+ #-}
+ gen/Amazonka/MGN/Types/CPU.hs view
@@ -0,0 +1,84 @@+{-# 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.MGN.Types.CPU+-- 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.MGN.Types.CPU 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++-- | Source server CPU information.+--+-- /See:/ 'newCPU' smart constructor.+data CPU = CPU'+ { -- | The number of CPU cores on the source server.+ cores :: Prelude.Maybe Prelude.Natural,+ -- | The source server\'s CPU model name.+ modelName :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CPU' 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:+--+-- 'cores', 'cpu_cores' - The number of CPU cores on the source server.+--+-- 'modelName', 'cpu_modelName' - The source server\'s CPU model name.+newCPU ::+ CPU+newCPU =+ CPU'+ { cores = Prelude.Nothing,+ modelName = Prelude.Nothing+ }++-- | The number of CPU cores on the source server.+cpu_cores :: Lens.Lens' CPU (Prelude.Maybe Prelude.Natural)+cpu_cores = Lens.lens (\CPU' {cores} -> cores) (\s@CPU' {} a -> s {cores = a} :: CPU)++-- | The source server\'s CPU model name.+cpu_modelName :: Lens.Lens' CPU (Prelude.Maybe Prelude.Text)+cpu_modelName = Lens.lens (\CPU' {modelName} -> modelName) (\s@CPU' {} a -> s {modelName = a} :: CPU)++instance Data.FromJSON CPU where+ parseJSON =+ Data.withObject+ "CPU"+ ( \x ->+ CPU'+ Prelude.<$> (x Data..:? "cores")+ Prelude.<*> (x Data..:? "modelName")+ )++instance Prelude.Hashable CPU where+ hashWithSalt _salt CPU' {..} =+ _salt+ `Prelude.hashWithSalt` cores+ `Prelude.hashWithSalt` modelName++instance Prelude.NFData CPU where+ rnf CPU' {..} =+ Prelude.rnf cores+ `Prelude.seq` Prelude.rnf modelName
+ gen/Amazonka/MGN/Types/ChangeServerLifeCycleStateSourceServerLifecycle.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.MGN.Types.ChangeServerLifeCycleStateSourceServerLifecycle+-- 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.MGN.Types.ChangeServerLifeCycleStateSourceServerLifecycle where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types.ChangeServerLifeCycleStateSourceServerLifecycleState+import qualified Amazonka.Prelude as Prelude++-- | The request to change the source server migration lifecycle state.+--+-- /See:/ 'newChangeServerLifeCycleStateSourceServerLifecycle' smart constructor.+data ChangeServerLifeCycleStateSourceServerLifecycle = ChangeServerLifeCycleStateSourceServerLifecycle'+ { -- | The request to change the source server migration lifecycle state.+ state :: ChangeServerLifeCycleStateSourceServerLifecycleState+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ChangeServerLifeCycleStateSourceServerLifecycle' 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:+--+-- 'state', 'changeServerLifeCycleStateSourceServerLifecycle_state' - The request to change the source server migration lifecycle state.+newChangeServerLifeCycleStateSourceServerLifecycle ::+ -- | 'state'+ ChangeServerLifeCycleStateSourceServerLifecycleState ->+ ChangeServerLifeCycleStateSourceServerLifecycle+newChangeServerLifeCycleStateSourceServerLifecycle+ pState_ =+ ChangeServerLifeCycleStateSourceServerLifecycle'+ { state =+ pState_+ }++-- | The request to change the source server migration lifecycle state.+changeServerLifeCycleStateSourceServerLifecycle_state :: Lens.Lens' ChangeServerLifeCycleStateSourceServerLifecycle ChangeServerLifeCycleStateSourceServerLifecycleState+changeServerLifeCycleStateSourceServerLifecycle_state = Lens.lens (\ChangeServerLifeCycleStateSourceServerLifecycle' {state} -> state) (\s@ChangeServerLifeCycleStateSourceServerLifecycle' {} a -> s {state = a} :: ChangeServerLifeCycleStateSourceServerLifecycle)++instance+ Prelude.Hashable+ ChangeServerLifeCycleStateSourceServerLifecycle+ where+ hashWithSalt+ _salt+ ChangeServerLifeCycleStateSourceServerLifecycle' {..} =+ _salt `Prelude.hashWithSalt` state++instance+ Prelude.NFData+ ChangeServerLifeCycleStateSourceServerLifecycle+ where+ rnf+ ChangeServerLifeCycleStateSourceServerLifecycle' {..} =+ Prelude.rnf state++instance+ Data.ToJSON+ ChangeServerLifeCycleStateSourceServerLifecycle+ where+ toJSON+ ChangeServerLifeCycleStateSourceServerLifecycle' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("state" Data..= state)]+ )
+ gen/Amazonka/MGN/Types/ChangeServerLifeCycleStateSourceServerLifecycleState.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.MGN.Types.ChangeServerLifeCycleStateSourceServerLifecycleState+-- 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.MGN.Types.ChangeServerLifeCycleStateSourceServerLifecycleState+ ( ChangeServerLifeCycleStateSourceServerLifecycleState+ ( ..,+ ChangeServerLifeCycleStateSourceServerLifecycleState_CUTOVER,+ ChangeServerLifeCycleStateSourceServerLifecycleState_READY_FOR_CUTOVER,+ ChangeServerLifeCycleStateSourceServerLifecycleState_READY_FOR_TEST+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ChangeServerLifeCycleStateSourceServerLifecycleState = ChangeServerLifeCycleStateSourceServerLifecycleState'+ { fromChangeServerLifeCycleStateSourceServerLifecycleState ::+ 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 ChangeServerLifeCycleStateSourceServerLifecycleState_CUTOVER :: ChangeServerLifeCycleStateSourceServerLifecycleState+pattern ChangeServerLifeCycleStateSourceServerLifecycleState_CUTOVER = ChangeServerLifeCycleStateSourceServerLifecycleState' "CUTOVER"++pattern ChangeServerLifeCycleStateSourceServerLifecycleState_READY_FOR_CUTOVER :: ChangeServerLifeCycleStateSourceServerLifecycleState+pattern ChangeServerLifeCycleStateSourceServerLifecycleState_READY_FOR_CUTOVER = ChangeServerLifeCycleStateSourceServerLifecycleState' "READY_FOR_CUTOVER"++pattern ChangeServerLifeCycleStateSourceServerLifecycleState_READY_FOR_TEST :: ChangeServerLifeCycleStateSourceServerLifecycleState+pattern ChangeServerLifeCycleStateSourceServerLifecycleState_READY_FOR_TEST = ChangeServerLifeCycleStateSourceServerLifecycleState' "READY_FOR_TEST"++{-# COMPLETE+ ChangeServerLifeCycleStateSourceServerLifecycleState_CUTOVER,+ ChangeServerLifeCycleStateSourceServerLifecycleState_READY_FOR_CUTOVER,+ ChangeServerLifeCycleStateSourceServerLifecycleState_READY_FOR_TEST,+ ChangeServerLifeCycleStateSourceServerLifecycleState'+ #-}
+ gen/Amazonka/MGN/Types/DataReplicationError.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.MGN.Types.DataReplicationError+-- 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.MGN.Types.DataReplicationError where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types.DataReplicationErrorString+import qualified Amazonka.Prelude as Prelude++-- | Error in data replication.+--+-- /See:/ 'newDataReplicationError' smart constructor.+data DataReplicationError = DataReplicationError'+ { -- | Error in data replication.+ error :: Prelude.Maybe DataReplicationErrorString,+ -- | Error in data replication.+ rawError :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DataReplicationError' 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:+--+-- 'error', 'dataReplicationError_error' - Error in data replication.+--+-- 'rawError', 'dataReplicationError_rawError' - Error in data replication.+newDataReplicationError ::+ DataReplicationError+newDataReplicationError =+ DataReplicationError'+ { error = Prelude.Nothing,+ rawError = Prelude.Nothing+ }++-- | Error in data replication.+dataReplicationError_error :: Lens.Lens' DataReplicationError (Prelude.Maybe DataReplicationErrorString)+dataReplicationError_error = Lens.lens (\DataReplicationError' {error} -> error) (\s@DataReplicationError' {} a -> s {error = a} :: DataReplicationError)++-- | Error in data replication.+dataReplicationError_rawError :: Lens.Lens' DataReplicationError (Prelude.Maybe Prelude.Text)+dataReplicationError_rawError = Lens.lens (\DataReplicationError' {rawError} -> rawError) (\s@DataReplicationError' {} a -> s {rawError = a} :: DataReplicationError)++instance Data.FromJSON DataReplicationError where+ parseJSON =+ Data.withObject+ "DataReplicationError"+ ( \x ->+ DataReplicationError'+ Prelude.<$> (x Data..:? "error")+ Prelude.<*> (x Data..:? "rawError")+ )++instance Prelude.Hashable DataReplicationError where+ hashWithSalt _salt DataReplicationError' {..} =+ _salt+ `Prelude.hashWithSalt` error+ `Prelude.hashWithSalt` rawError++instance Prelude.NFData DataReplicationError where+ rnf DataReplicationError' {..} =+ Prelude.rnf error+ `Prelude.seq` Prelude.rnf rawError
+ gen/Amazonka/MGN/Types/DataReplicationErrorString.hs view
@@ -0,0 +1,141 @@+{-# 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.MGN.Types.DataReplicationErrorString+-- 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.MGN.Types.DataReplicationErrorString+ ( DataReplicationErrorString+ ( ..,+ DataReplicationErrorString_AGENT_NOT_SEEN,+ DataReplicationErrorString_FAILED_TO_ATTACH_STAGING_DISKS,+ DataReplicationErrorString_FAILED_TO_AUTHENTICATE_WITH_SERVICE,+ DataReplicationErrorString_FAILED_TO_BOOT_REPLICATION_SERVER,+ DataReplicationErrorString_FAILED_TO_CONNECT_AGENT_TO_REPLICATION_SERVER,+ DataReplicationErrorString_FAILED_TO_CREATE_SECURITY_GROUP,+ DataReplicationErrorString_FAILED_TO_CREATE_STAGING_DISKS,+ DataReplicationErrorString_FAILED_TO_DOWNLOAD_REPLICATION_SOFTWARE,+ DataReplicationErrorString_FAILED_TO_LAUNCH_REPLICATION_SERVER,+ DataReplicationErrorString_FAILED_TO_PAIR_REPLICATION_SERVER_WITH_AGENT,+ DataReplicationErrorString_FAILED_TO_START_DATA_TRANSFER,+ DataReplicationErrorString_LAST_SNAPSHOT_JOB_FAILED,+ DataReplicationErrorString_NOT_CONVERGING,+ DataReplicationErrorString_SNAPSHOTS_FAILURE,+ DataReplicationErrorString_UNSTABLE_NETWORK,+ DataReplicationErrorString_UNSUPPORTED_VM_CONFIGURATION+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype DataReplicationErrorString = DataReplicationErrorString'+ { fromDataReplicationErrorString ::+ 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 DataReplicationErrorString_AGENT_NOT_SEEN :: DataReplicationErrorString+pattern DataReplicationErrorString_AGENT_NOT_SEEN = DataReplicationErrorString' "AGENT_NOT_SEEN"++pattern DataReplicationErrorString_FAILED_TO_ATTACH_STAGING_DISKS :: DataReplicationErrorString+pattern DataReplicationErrorString_FAILED_TO_ATTACH_STAGING_DISKS = DataReplicationErrorString' "FAILED_TO_ATTACH_STAGING_DISKS"++pattern DataReplicationErrorString_FAILED_TO_AUTHENTICATE_WITH_SERVICE :: DataReplicationErrorString+pattern DataReplicationErrorString_FAILED_TO_AUTHENTICATE_WITH_SERVICE = DataReplicationErrorString' "FAILED_TO_AUTHENTICATE_WITH_SERVICE"++pattern DataReplicationErrorString_FAILED_TO_BOOT_REPLICATION_SERVER :: DataReplicationErrorString+pattern DataReplicationErrorString_FAILED_TO_BOOT_REPLICATION_SERVER = DataReplicationErrorString' "FAILED_TO_BOOT_REPLICATION_SERVER"++pattern DataReplicationErrorString_FAILED_TO_CONNECT_AGENT_TO_REPLICATION_SERVER :: DataReplicationErrorString+pattern DataReplicationErrorString_FAILED_TO_CONNECT_AGENT_TO_REPLICATION_SERVER = DataReplicationErrorString' "FAILED_TO_CONNECT_AGENT_TO_REPLICATION_SERVER"++pattern DataReplicationErrorString_FAILED_TO_CREATE_SECURITY_GROUP :: DataReplicationErrorString+pattern DataReplicationErrorString_FAILED_TO_CREATE_SECURITY_GROUP = DataReplicationErrorString' "FAILED_TO_CREATE_SECURITY_GROUP"++pattern DataReplicationErrorString_FAILED_TO_CREATE_STAGING_DISKS :: DataReplicationErrorString+pattern DataReplicationErrorString_FAILED_TO_CREATE_STAGING_DISKS = DataReplicationErrorString' "FAILED_TO_CREATE_STAGING_DISKS"++pattern DataReplicationErrorString_FAILED_TO_DOWNLOAD_REPLICATION_SOFTWARE :: DataReplicationErrorString+pattern DataReplicationErrorString_FAILED_TO_DOWNLOAD_REPLICATION_SOFTWARE = DataReplicationErrorString' "FAILED_TO_DOWNLOAD_REPLICATION_SOFTWARE"++pattern DataReplicationErrorString_FAILED_TO_LAUNCH_REPLICATION_SERVER :: DataReplicationErrorString+pattern DataReplicationErrorString_FAILED_TO_LAUNCH_REPLICATION_SERVER = DataReplicationErrorString' "FAILED_TO_LAUNCH_REPLICATION_SERVER"++pattern DataReplicationErrorString_FAILED_TO_PAIR_REPLICATION_SERVER_WITH_AGENT :: DataReplicationErrorString+pattern DataReplicationErrorString_FAILED_TO_PAIR_REPLICATION_SERVER_WITH_AGENT = DataReplicationErrorString' "FAILED_TO_PAIR_REPLICATION_SERVER_WITH_AGENT"++pattern DataReplicationErrorString_FAILED_TO_START_DATA_TRANSFER :: DataReplicationErrorString+pattern DataReplicationErrorString_FAILED_TO_START_DATA_TRANSFER = DataReplicationErrorString' "FAILED_TO_START_DATA_TRANSFER"++pattern DataReplicationErrorString_LAST_SNAPSHOT_JOB_FAILED :: DataReplicationErrorString+pattern DataReplicationErrorString_LAST_SNAPSHOT_JOB_FAILED = DataReplicationErrorString' "LAST_SNAPSHOT_JOB_FAILED"++pattern DataReplicationErrorString_NOT_CONVERGING :: DataReplicationErrorString+pattern DataReplicationErrorString_NOT_CONVERGING = DataReplicationErrorString' "NOT_CONVERGING"++pattern DataReplicationErrorString_SNAPSHOTS_FAILURE :: DataReplicationErrorString+pattern DataReplicationErrorString_SNAPSHOTS_FAILURE = DataReplicationErrorString' "SNAPSHOTS_FAILURE"++pattern DataReplicationErrorString_UNSTABLE_NETWORK :: DataReplicationErrorString+pattern DataReplicationErrorString_UNSTABLE_NETWORK = DataReplicationErrorString' "UNSTABLE_NETWORK"++pattern DataReplicationErrorString_UNSUPPORTED_VM_CONFIGURATION :: DataReplicationErrorString+pattern DataReplicationErrorString_UNSUPPORTED_VM_CONFIGURATION = DataReplicationErrorString' "UNSUPPORTED_VM_CONFIGURATION"++{-# COMPLETE+ DataReplicationErrorString_AGENT_NOT_SEEN,+ DataReplicationErrorString_FAILED_TO_ATTACH_STAGING_DISKS,+ DataReplicationErrorString_FAILED_TO_AUTHENTICATE_WITH_SERVICE,+ DataReplicationErrorString_FAILED_TO_BOOT_REPLICATION_SERVER,+ DataReplicationErrorString_FAILED_TO_CONNECT_AGENT_TO_REPLICATION_SERVER,+ DataReplicationErrorString_FAILED_TO_CREATE_SECURITY_GROUP,+ DataReplicationErrorString_FAILED_TO_CREATE_STAGING_DISKS,+ DataReplicationErrorString_FAILED_TO_DOWNLOAD_REPLICATION_SOFTWARE,+ DataReplicationErrorString_FAILED_TO_LAUNCH_REPLICATION_SERVER,+ DataReplicationErrorString_FAILED_TO_PAIR_REPLICATION_SERVER_WITH_AGENT,+ DataReplicationErrorString_FAILED_TO_START_DATA_TRANSFER,+ DataReplicationErrorString_LAST_SNAPSHOT_JOB_FAILED,+ DataReplicationErrorString_NOT_CONVERGING,+ DataReplicationErrorString_SNAPSHOTS_FAILURE,+ DataReplicationErrorString_UNSTABLE_NETWORK,+ DataReplicationErrorString_UNSUPPORTED_VM_CONFIGURATION,+ DataReplicationErrorString'+ #-}
+ gen/Amazonka/MGN/Types/DataReplicationInfo.hs view
@@ -0,0 +1,152 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MGN.Types.DataReplicationInfo+-- 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.MGN.Types.DataReplicationInfo where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types.DataReplicationError+import Amazonka.MGN.Types.DataReplicationInfoReplicatedDisk+import Amazonka.MGN.Types.DataReplicationInitiation+import Amazonka.MGN.Types.DataReplicationState+import qualified Amazonka.Prelude as Prelude++-- | Request data replication info.+--+-- /See:/ 'newDataReplicationInfo' smart constructor.+data DataReplicationInfo = DataReplicationInfo'+ { -- | Error in obtaining data replication info.+ dataReplicationError :: Prelude.Maybe DataReplicationError,+ -- | Request to query whether data replication has been initiated.+ dataReplicationInitiation :: Prelude.Maybe DataReplicationInitiation,+ -- | Request to query the data replication state.+ dataReplicationState :: Prelude.Maybe DataReplicationState,+ -- | Request to query the time when data replication will be complete.+ etaDateTime :: Prelude.Maybe Prelude.Text,+ -- | Request to query data replication lag duration.+ lagDuration :: Prelude.Maybe Prelude.Text,+ -- | Request to query data replication last snapshot time.+ lastSnapshotDateTime :: Prelude.Maybe Prelude.Text,+ -- | Request to query disks replicated.+ replicatedDisks :: Prelude.Maybe [DataReplicationInfoReplicatedDisk]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DataReplicationInfo' 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:+--+-- 'dataReplicationError', 'dataReplicationInfo_dataReplicationError' - Error in obtaining data replication info.+--+-- 'dataReplicationInitiation', 'dataReplicationInfo_dataReplicationInitiation' - Request to query whether data replication has been initiated.+--+-- 'dataReplicationState', 'dataReplicationInfo_dataReplicationState' - Request to query the data replication state.+--+-- 'etaDateTime', 'dataReplicationInfo_etaDateTime' - Request to query the time when data replication will be complete.+--+-- 'lagDuration', 'dataReplicationInfo_lagDuration' - Request to query data replication lag duration.+--+-- 'lastSnapshotDateTime', 'dataReplicationInfo_lastSnapshotDateTime' - Request to query data replication last snapshot time.+--+-- 'replicatedDisks', 'dataReplicationInfo_replicatedDisks' - Request to query disks replicated.+newDataReplicationInfo ::+ DataReplicationInfo+newDataReplicationInfo =+ DataReplicationInfo'+ { dataReplicationError =+ Prelude.Nothing,+ dataReplicationInitiation = Prelude.Nothing,+ dataReplicationState = Prelude.Nothing,+ etaDateTime = Prelude.Nothing,+ lagDuration = Prelude.Nothing,+ lastSnapshotDateTime = Prelude.Nothing,+ replicatedDisks = Prelude.Nothing+ }++-- | Error in obtaining data replication info.+dataReplicationInfo_dataReplicationError :: Lens.Lens' DataReplicationInfo (Prelude.Maybe DataReplicationError)+dataReplicationInfo_dataReplicationError = Lens.lens (\DataReplicationInfo' {dataReplicationError} -> dataReplicationError) (\s@DataReplicationInfo' {} a -> s {dataReplicationError = a} :: DataReplicationInfo)++-- | Request to query whether data replication has been initiated.+dataReplicationInfo_dataReplicationInitiation :: Lens.Lens' DataReplicationInfo (Prelude.Maybe DataReplicationInitiation)+dataReplicationInfo_dataReplicationInitiation = Lens.lens (\DataReplicationInfo' {dataReplicationInitiation} -> dataReplicationInitiation) (\s@DataReplicationInfo' {} a -> s {dataReplicationInitiation = a} :: DataReplicationInfo)++-- | Request to query the data replication state.+dataReplicationInfo_dataReplicationState :: Lens.Lens' DataReplicationInfo (Prelude.Maybe DataReplicationState)+dataReplicationInfo_dataReplicationState = Lens.lens (\DataReplicationInfo' {dataReplicationState} -> dataReplicationState) (\s@DataReplicationInfo' {} a -> s {dataReplicationState = a} :: DataReplicationInfo)++-- | Request to query the time when data replication will be complete.+dataReplicationInfo_etaDateTime :: Lens.Lens' DataReplicationInfo (Prelude.Maybe Prelude.Text)+dataReplicationInfo_etaDateTime = Lens.lens (\DataReplicationInfo' {etaDateTime} -> etaDateTime) (\s@DataReplicationInfo' {} a -> s {etaDateTime = a} :: DataReplicationInfo)++-- | Request to query data replication lag duration.+dataReplicationInfo_lagDuration :: Lens.Lens' DataReplicationInfo (Prelude.Maybe Prelude.Text)+dataReplicationInfo_lagDuration = Lens.lens (\DataReplicationInfo' {lagDuration} -> lagDuration) (\s@DataReplicationInfo' {} a -> s {lagDuration = a} :: DataReplicationInfo)++-- | Request to query data replication last snapshot time.+dataReplicationInfo_lastSnapshotDateTime :: Lens.Lens' DataReplicationInfo (Prelude.Maybe Prelude.Text)+dataReplicationInfo_lastSnapshotDateTime = Lens.lens (\DataReplicationInfo' {lastSnapshotDateTime} -> lastSnapshotDateTime) (\s@DataReplicationInfo' {} a -> s {lastSnapshotDateTime = a} :: DataReplicationInfo)++-- | Request to query disks replicated.+dataReplicationInfo_replicatedDisks :: Lens.Lens' DataReplicationInfo (Prelude.Maybe [DataReplicationInfoReplicatedDisk])+dataReplicationInfo_replicatedDisks = Lens.lens (\DataReplicationInfo' {replicatedDisks} -> replicatedDisks) (\s@DataReplicationInfo' {} a -> s {replicatedDisks = a} :: DataReplicationInfo) Prelude.. Lens.mapping Lens.coerced++instance Data.FromJSON DataReplicationInfo where+ parseJSON =+ Data.withObject+ "DataReplicationInfo"+ ( \x ->+ DataReplicationInfo'+ Prelude.<$> (x Data..:? "dataReplicationError")+ Prelude.<*> (x Data..:? "dataReplicationInitiation")+ Prelude.<*> (x Data..:? "dataReplicationState")+ Prelude.<*> (x Data..:? "etaDateTime")+ Prelude.<*> (x Data..:? "lagDuration")+ Prelude.<*> (x Data..:? "lastSnapshotDateTime")+ Prelude.<*> ( x+ Data..:? "replicatedDisks"+ Data..!= Prelude.mempty+ )+ )++instance Prelude.Hashable DataReplicationInfo where+ hashWithSalt _salt DataReplicationInfo' {..} =+ _salt+ `Prelude.hashWithSalt` dataReplicationError+ `Prelude.hashWithSalt` dataReplicationInitiation+ `Prelude.hashWithSalt` dataReplicationState+ `Prelude.hashWithSalt` etaDateTime+ `Prelude.hashWithSalt` lagDuration+ `Prelude.hashWithSalt` lastSnapshotDateTime+ `Prelude.hashWithSalt` replicatedDisks++instance Prelude.NFData DataReplicationInfo where+ rnf DataReplicationInfo' {..} =+ Prelude.rnf dataReplicationError+ `Prelude.seq` Prelude.rnf dataReplicationInitiation+ `Prelude.seq` Prelude.rnf dataReplicationState+ `Prelude.seq` Prelude.rnf etaDateTime+ `Prelude.seq` Prelude.rnf lagDuration+ `Prelude.seq` Prelude.rnf lastSnapshotDateTime+ `Prelude.seq` Prelude.rnf replicatedDisks
+ gen/Amazonka/MGN/Types/DataReplicationInfoReplicatedDisk.hs view
@@ -0,0 +1,132 @@+{-# 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.MGN.Types.DataReplicationInfoReplicatedDisk+-- 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.MGN.Types.DataReplicationInfoReplicatedDisk 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++-- | Request to query disks replicated.+--+-- /See:/ 'newDataReplicationInfoReplicatedDisk' smart constructor.+data DataReplicationInfoReplicatedDisk = DataReplicationInfoReplicatedDisk'+ { -- | Request to query data replication backlog size in bytes.+ backloggedStorageBytes :: Prelude.Maybe Prelude.Natural,+ -- | Request to query device name.+ deviceName :: Prelude.Maybe Prelude.Text,+ -- | Request to query amount of data replicated in bytes.+ replicatedStorageBytes :: Prelude.Maybe Prelude.Natural,+ -- | Request to query amount of data rescanned in bytes.+ rescannedStorageBytes :: Prelude.Maybe Prelude.Natural,+ -- | Request to query total amount of data replicated in bytes.+ totalStorageBytes :: Prelude.Maybe Prelude.Natural+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DataReplicationInfoReplicatedDisk' 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:+--+-- 'backloggedStorageBytes', 'dataReplicationInfoReplicatedDisk_backloggedStorageBytes' - Request to query data replication backlog size in bytes.+--+-- 'deviceName', 'dataReplicationInfoReplicatedDisk_deviceName' - Request to query device name.+--+-- 'replicatedStorageBytes', 'dataReplicationInfoReplicatedDisk_replicatedStorageBytes' - Request to query amount of data replicated in bytes.+--+-- 'rescannedStorageBytes', 'dataReplicationInfoReplicatedDisk_rescannedStorageBytes' - Request to query amount of data rescanned in bytes.+--+-- 'totalStorageBytes', 'dataReplicationInfoReplicatedDisk_totalStorageBytes' - Request to query total amount of data replicated in bytes.+newDataReplicationInfoReplicatedDisk ::+ DataReplicationInfoReplicatedDisk+newDataReplicationInfoReplicatedDisk =+ DataReplicationInfoReplicatedDisk'+ { backloggedStorageBytes =+ Prelude.Nothing,+ deviceName = Prelude.Nothing,+ replicatedStorageBytes = Prelude.Nothing,+ rescannedStorageBytes = Prelude.Nothing,+ totalStorageBytes = Prelude.Nothing+ }++-- | Request to query data replication backlog size in bytes.+dataReplicationInfoReplicatedDisk_backloggedStorageBytes :: Lens.Lens' DataReplicationInfoReplicatedDisk (Prelude.Maybe Prelude.Natural)+dataReplicationInfoReplicatedDisk_backloggedStorageBytes = Lens.lens (\DataReplicationInfoReplicatedDisk' {backloggedStorageBytes} -> backloggedStorageBytes) (\s@DataReplicationInfoReplicatedDisk' {} a -> s {backloggedStorageBytes = a} :: DataReplicationInfoReplicatedDisk)++-- | Request to query device name.+dataReplicationInfoReplicatedDisk_deviceName :: Lens.Lens' DataReplicationInfoReplicatedDisk (Prelude.Maybe Prelude.Text)+dataReplicationInfoReplicatedDisk_deviceName = Lens.lens (\DataReplicationInfoReplicatedDisk' {deviceName} -> deviceName) (\s@DataReplicationInfoReplicatedDisk' {} a -> s {deviceName = a} :: DataReplicationInfoReplicatedDisk)++-- | Request to query amount of data replicated in bytes.+dataReplicationInfoReplicatedDisk_replicatedStorageBytes :: Lens.Lens' DataReplicationInfoReplicatedDisk (Prelude.Maybe Prelude.Natural)+dataReplicationInfoReplicatedDisk_replicatedStorageBytes = Lens.lens (\DataReplicationInfoReplicatedDisk' {replicatedStorageBytes} -> replicatedStorageBytes) (\s@DataReplicationInfoReplicatedDisk' {} a -> s {replicatedStorageBytes = a} :: DataReplicationInfoReplicatedDisk)++-- | Request to query amount of data rescanned in bytes.+dataReplicationInfoReplicatedDisk_rescannedStorageBytes :: Lens.Lens' DataReplicationInfoReplicatedDisk (Prelude.Maybe Prelude.Natural)+dataReplicationInfoReplicatedDisk_rescannedStorageBytes = Lens.lens (\DataReplicationInfoReplicatedDisk' {rescannedStorageBytes} -> rescannedStorageBytes) (\s@DataReplicationInfoReplicatedDisk' {} a -> s {rescannedStorageBytes = a} :: DataReplicationInfoReplicatedDisk)++-- | Request to query total amount of data replicated in bytes.+dataReplicationInfoReplicatedDisk_totalStorageBytes :: Lens.Lens' DataReplicationInfoReplicatedDisk (Prelude.Maybe Prelude.Natural)+dataReplicationInfoReplicatedDisk_totalStorageBytes = Lens.lens (\DataReplicationInfoReplicatedDisk' {totalStorageBytes} -> totalStorageBytes) (\s@DataReplicationInfoReplicatedDisk' {} a -> s {totalStorageBytes = a} :: DataReplicationInfoReplicatedDisk)++instance+ Data.FromJSON+ DataReplicationInfoReplicatedDisk+ where+ parseJSON =+ Data.withObject+ "DataReplicationInfoReplicatedDisk"+ ( \x ->+ DataReplicationInfoReplicatedDisk'+ Prelude.<$> (x Data..:? "backloggedStorageBytes")+ Prelude.<*> (x Data..:? "deviceName")+ Prelude.<*> (x Data..:? "replicatedStorageBytes")+ Prelude.<*> (x Data..:? "rescannedStorageBytes")+ Prelude.<*> (x Data..:? "totalStorageBytes")+ )++instance+ Prelude.Hashable+ DataReplicationInfoReplicatedDisk+ where+ hashWithSalt+ _salt+ DataReplicationInfoReplicatedDisk' {..} =+ _salt+ `Prelude.hashWithSalt` backloggedStorageBytes+ `Prelude.hashWithSalt` deviceName+ `Prelude.hashWithSalt` replicatedStorageBytes+ `Prelude.hashWithSalt` rescannedStorageBytes+ `Prelude.hashWithSalt` totalStorageBytes++instance+ Prelude.NFData+ DataReplicationInfoReplicatedDisk+ where+ rnf DataReplicationInfoReplicatedDisk' {..} =+ Prelude.rnf backloggedStorageBytes+ `Prelude.seq` Prelude.rnf deviceName+ `Prelude.seq` Prelude.rnf replicatedStorageBytes+ `Prelude.seq` Prelude.rnf rescannedStorageBytes+ `Prelude.seq` Prelude.rnf totalStorageBytes
+ gen/Amazonka/MGN/Types/DataReplicationInitiation.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.MGN.Types.DataReplicationInitiation+-- 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.MGN.Types.DataReplicationInitiation where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types.DataReplicationInitiationStep+import qualified Amazonka.Prelude as Prelude++-- | Data replication initiation.+--+-- /See:/ 'newDataReplicationInitiation' smart constructor.+data DataReplicationInitiation = DataReplicationInitiation'+ { -- | Request to query next data initiation date and time.+ nextAttemptDateTime :: Prelude.Maybe Prelude.Text,+ -- | Request to query data initiation start date and time.+ startDateTime :: Prelude.Maybe Prelude.Text,+ -- | Request to query data initiation steps.+ steps :: Prelude.Maybe [DataReplicationInitiationStep]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DataReplicationInitiation' 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:+--+-- 'nextAttemptDateTime', 'dataReplicationInitiation_nextAttemptDateTime' - Request to query next data initiation date and time.+--+-- 'startDateTime', 'dataReplicationInitiation_startDateTime' - Request to query data initiation start date and time.+--+-- 'steps', 'dataReplicationInitiation_steps' - Request to query data initiation steps.+newDataReplicationInitiation ::+ DataReplicationInitiation+newDataReplicationInitiation =+ DataReplicationInitiation'+ { nextAttemptDateTime =+ Prelude.Nothing,+ startDateTime = Prelude.Nothing,+ steps = Prelude.Nothing+ }++-- | Request to query next data initiation date and time.+dataReplicationInitiation_nextAttemptDateTime :: Lens.Lens' DataReplicationInitiation (Prelude.Maybe Prelude.Text)+dataReplicationInitiation_nextAttemptDateTime = Lens.lens (\DataReplicationInitiation' {nextAttemptDateTime} -> nextAttemptDateTime) (\s@DataReplicationInitiation' {} a -> s {nextAttemptDateTime = a} :: DataReplicationInitiation)++-- | Request to query data initiation start date and time.+dataReplicationInitiation_startDateTime :: Lens.Lens' DataReplicationInitiation (Prelude.Maybe Prelude.Text)+dataReplicationInitiation_startDateTime = Lens.lens (\DataReplicationInitiation' {startDateTime} -> startDateTime) (\s@DataReplicationInitiation' {} a -> s {startDateTime = a} :: DataReplicationInitiation)++-- | Request to query data initiation steps.+dataReplicationInitiation_steps :: Lens.Lens' DataReplicationInitiation (Prelude.Maybe [DataReplicationInitiationStep])+dataReplicationInitiation_steps = Lens.lens (\DataReplicationInitiation' {steps} -> steps) (\s@DataReplicationInitiation' {} a -> s {steps = a} :: DataReplicationInitiation) Prelude.. Lens.mapping Lens.coerced++instance Data.FromJSON DataReplicationInitiation where+ parseJSON =+ Data.withObject+ "DataReplicationInitiation"+ ( \x ->+ DataReplicationInitiation'+ Prelude.<$> (x Data..:? "nextAttemptDateTime")+ Prelude.<*> (x Data..:? "startDateTime")+ Prelude.<*> (x Data..:? "steps" Data..!= Prelude.mempty)+ )++instance Prelude.Hashable DataReplicationInitiation where+ hashWithSalt _salt DataReplicationInitiation' {..} =+ _salt+ `Prelude.hashWithSalt` nextAttemptDateTime+ `Prelude.hashWithSalt` startDateTime+ `Prelude.hashWithSalt` steps++instance Prelude.NFData DataReplicationInitiation where+ rnf DataReplicationInitiation' {..} =+ Prelude.rnf nextAttemptDateTime+ `Prelude.seq` Prelude.rnf startDateTime+ `Prelude.seq` Prelude.rnf steps
+ gen/Amazonka/MGN/Types/DataReplicationInitiationStep.hs view
@@ -0,0 +1,89 @@+{-# 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.MGN.Types.DataReplicationInitiationStep+-- 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.MGN.Types.DataReplicationInitiationStep where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types.DataReplicationInitiationStepName+import Amazonka.MGN.Types.DataReplicationInitiationStepStatus+import qualified Amazonka.Prelude as Prelude++-- | Data replication initiation step.+--+-- /See:/ 'newDataReplicationInitiationStep' smart constructor.+data DataReplicationInitiationStep = DataReplicationInitiationStep'+ { -- | Request to query data initiation step name.+ name :: Prelude.Maybe DataReplicationInitiationStepName,+ -- | Request to query data initiation status.+ status :: Prelude.Maybe DataReplicationInitiationStepStatus+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DataReplicationInitiationStep' 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', 'dataReplicationInitiationStep_name' - Request to query data initiation step name.+--+-- 'status', 'dataReplicationInitiationStep_status' - Request to query data initiation status.+newDataReplicationInitiationStep ::+ DataReplicationInitiationStep+newDataReplicationInitiationStep =+ DataReplicationInitiationStep'+ { name =+ Prelude.Nothing,+ status = Prelude.Nothing+ }++-- | Request to query data initiation step name.+dataReplicationInitiationStep_name :: Lens.Lens' DataReplicationInitiationStep (Prelude.Maybe DataReplicationInitiationStepName)+dataReplicationInitiationStep_name = Lens.lens (\DataReplicationInitiationStep' {name} -> name) (\s@DataReplicationInitiationStep' {} a -> s {name = a} :: DataReplicationInitiationStep)++-- | Request to query data initiation status.+dataReplicationInitiationStep_status :: Lens.Lens' DataReplicationInitiationStep (Prelude.Maybe DataReplicationInitiationStepStatus)+dataReplicationInitiationStep_status = Lens.lens (\DataReplicationInitiationStep' {status} -> status) (\s@DataReplicationInitiationStep' {} a -> s {status = a} :: DataReplicationInitiationStep)++instance Data.FromJSON DataReplicationInitiationStep where+ parseJSON =+ Data.withObject+ "DataReplicationInitiationStep"+ ( \x ->+ DataReplicationInitiationStep'+ Prelude.<$> (x Data..:? "name")+ Prelude.<*> (x Data..:? "status")+ )++instance+ Prelude.Hashable+ DataReplicationInitiationStep+ where+ hashWithSalt _salt DataReplicationInitiationStep' {..} =+ _salt+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` status++instance Prelude.NFData DataReplicationInitiationStep where+ rnf DataReplicationInitiationStep' {..} =+ Prelude.rnf name `Prelude.seq` Prelude.rnf status
+ gen/Amazonka/MGN/Types/DataReplicationInitiationStepName.hs view
@@ -0,0 +1,116 @@+{-# 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.MGN.Types.DataReplicationInitiationStepName+-- 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.MGN.Types.DataReplicationInitiationStepName+ ( DataReplicationInitiationStepName+ ( ..,+ DataReplicationInitiationStepName_ATTACH_STAGING_DISKS,+ DataReplicationInitiationStepName_AUTHENTICATE_WITH_SERVICE,+ DataReplicationInitiationStepName_BOOT_REPLICATION_SERVER,+ DataReplicationInitiationStepName_CONNECT_AGENT_TO_REPLICATION_SERVER,+ DataReplicationInitiationStepName_CREATE_SECURITY_GROUP,+ DataReplicationInitiationStepName_CREATE_STAGING_DISKS,+ DataReplicationInitiationStepName_DOWNLOAD_REPLICATION_SOFTWARE,+ DataReplicationInitiationStepName_LAUNCH_REPLICATION_SERVER,+ DataReplicationInitiationStepName_PAIR_REPLICATION_SERVER_WITH_AGENT,+ DataReplicationInitiationStepName_START_DATA_TRANSFER,+ DataReplicationInitiationStepName_WAIT+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype DataReplicationInitiationStepName = DataReplicationInitiationStepName'+ { fromDataReplicationInitiationStepName ::+ 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 DataReplicationInitiationStepName_ATTACH_STAGING_DISKS :: DataReplicationInitiationStepName+pattern DataReplicationInitiationStepName_ATTACH_STAGING_DISKS = DataReplicationInitiationStepName' "ATTACH_STAGING_DISKS"++pattern DataReplicationInitiationStepName_AUTHENTICATE_WITH_SERVICE :: DataReplicationInitiationStepName+pattern DataReplicationInitiationStepName_AUTHENTICATE_WITH_SERVICE = DataReplicationInitiationStepName' "AUTHENTICATE_WITH_SERVICE"++pattern DataReplicationInitiationStepName_BOOT_REPLICATION_SERVER :: DataReplicationInitiationStepName+pattern DataReplicationInitiationStepName_BOOT_REPLICATION_SERVER = DataReplicationInitiationStepName' "BOOT_REPLICATION_SERVER"++pattern DataReplicationInitiationStepName_CONNECT_AGENT_TO_REPLICATION_SERVER :: DataReplicationInitiationStepName+pattern DataReplicationInitiationStepName_CONNECT_AGENT_TO_REPLICATION_SERVER = DataReplicationInitiationStepName' "CONNECT_AGENT_TO_REPLICATION_SERVER"++pattern DataReplicationInitiationStepName_CREATE_SECURITY_GROUP :: DataReplicationInitiationStepName+pattern DataReplicationInitiationStepName_CREATE_SECURITY_GROUP = DataReplicationInitiationStepName' "CREATE_SECURITY_GROUP"++pattern DataReplicationInitiationStepName_CREATE_STAGING_DISKS :: DataReplicationInitiationStepName+pattern DataReplicationInitiationStepName_CREATE_STAGING_DISKS = DataReplicationInitiationStepName' "CREATE_STAGING_DISKS"++pattern DataReplicationInitiationStepName_DOWNLOAD_REPLICATION_SOFTWARE :: DataReplicationInitiationStepName+pattern DataReplicationInitiationStepName_DOWNLOAD_REPLICATION_SOFTWARE = DataReplicationInitiationStepName' "DOWNLOAD_REPLICATION_SOFTWARE"++pattern DataReplicationInitiationStepName_LAUNCH_REPLICATION_SERVER :: DataReplicationInitiationStepName+pattern DataReplicationInitiationStepName_LAUNCH_REPLICATION_SERVER = DataReplicationInitiationStepName' "LAUNCH_REPLICATION_SERVER"++pattern DataReplicationInitiationStepName_PAIR_REPLICATION_SERVER_WITH_AGENT :: DataReplicationInitiationStepName+pattern DataReplicationInitiationStepName_PAIR_REPLICATION_SERVER_WITH_AGENT = DataReplicationInitiationStepName' "PAIR_REPLICATION_SERVER_WITH_AGENT"++pattern DataReplicationInitiationStepName_START_DATA_TRANSFER :: DataReplicationInitiationStepName+pattern DataReplicationInitiationStepName_START_DATA_TRANSFER = DataReplicationInitiationStepName' "START_DATA_TRANSFER"++pattern DataReplicationInitiationStepName_WAIT :: DataReplicationInitiationStepName+pattern DataReplicationInitiationStepName_WAIT = DataReplicationInitiationStepName' "WAIT"++{-# COMPLETE+ DataReplicationInitiationStepName_ATTACH_STAGING_DISKS,+ DataReplicationInitiationStepName_AUTHENTICATE_WITH_SERVICE,+ DataReplicationInitiationStepName_BOOT_REPLICATION_SERVER,+ DataReplicationInitiationStepName_CONNECT_AGENT_TO_REPLICATION_SERVER,+ DataReplicationInitiationStepName_CREATE_SECURITY_GROUP,+ DataReplicationInitiationStepName_CREATE_STAGING_DISKS,+ DataReplicationInitiationStepName_DOWNLOAD_REPLICATION_SOFTWARE,+ DataReplicationInitiationStepName_LAUNCH_REPLICATION_SERVER,+ DataReplicationInitiationStepName_PAIR_REPLICATION_SERVER_WITH_AGENT,+ DataReplicationInitiationStepName_START_DATA_TRANSFER,+ DataReplicationInitiationStepName_WAIT,+ DataReplicationInitiationStepName'+ #-}
+ gen/Amazonka/MGN/Types/DataReplicationInitiationStepStatus.hs view
@@ -0,0 +1,86 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MGN.Types.DataReplicationInitiationStepStatus+-- 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.MGN.Types.DataReplicationInitiationStepStatus+ ( DataReplicationInitiationStepStatus+ ( ..,+ DataReplicationInitiationStepStatus_FAILED,+ DataReplicationInitiationStepStatus_IN_PROGRESS,+ DataReplicationInitiationStepStatus_NOT_STARTED,+ DataReplicationInitiationStepStatus_SKIPPED,+ DataReplicationInitiationStepStatus_SUCCEEDED+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype DataReplicationInitiationStepStatus = DataReplicationInitiationStepStatus'+ { fromDataReplicationInitiationStepStatus ::+ 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 DataReplicationInitiationStepStatus_FAILED :: DataReplicationInitiationStepStatus+pattern DataReplicationInitiationStepStatus_FAILED = DataReplicationInitiationStepStatus' "FAILED"++pattern DataReplicationInitiationStepStatus_IN_PROGRESS :: DataReplicationInitiationStepStatus+pattern DataReplicationInitiationStepStatus_IN_PROGRESS = DataReplicationInitiationStepStatus' "IN_PROGRESS"++pattern DataReplicationInitiationStepStatus_NOT_STARTED :: DataReplicationInitiationStepStatus+pattern DataReplicationInitiationStepStatus_NOT_STARTED = DataReplicationInitiationStepStatus' "NOT_STARTED"++pattern DataReplicationInitiationStepStatus_SKIPPED :: DataReplicationInitiationStepStatus+pattern DataReplicationInitiationStepStatus_SKIPPED = DataReplicationInitiationStepStatus' "SKIPPED"++pattern DataReplicationInitiationStepStatus_SUCCEEDED :: DataReplicationInitiationStepStatus+pattern DataReplicationInitiationStepStatus_SUCCEEDED = DataReplicationInitiationStepStatus' "SUCCEEDED"++{-# COMPLETE+ DataReplicationInitiationStepStatus_FAILED,+ DataReplicationInitiationStepStatus_IN_PROGRESS,+ DataReplicationInitiationStepStatus_NOT_STARTED,+ DataReplicationInitiationStepStatus_SKIPPED,+ DataReplicationInitiationStepStatus_SUCCEEDED,+ DataReplicationInitiationStepStatus'+ #-}
+ gen/Amazonka/MGN/Types/DataReplicationState.hs view
@@ -0,0 +1,121 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MGN.Types.DataReplicationState+-- 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.MGN.Types.DataReplicationState+ ( DataReplicationState+ ( ..,+ DataReplicationState_BACKLOG,+ DataReplicationState_CONTINUOUS,+ DataReplicationState_CREATING_SNAPSHOT,+ DataReplicationState_DISCONNECTED,+ DataReplicationState_INITIAL_SYNC,+ DataReplicationState_INITIATING,+ DataReplicationState_PAUSED,+ DataReplicationState_PENDING_SNAPSHOT_SHIPPING,+ DataReplicationState_RESCAN,+ DataReplicationState_SHIPPING_SNAPSHOT,+ DataReplicationState_STALLED,+ DataReplicationState_STOPPED+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype DataReplicationState = DataReplicationState'+ { fromDataReplicationState ::+ 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 DataReplicationState_BACKLOG :: DataReplicationState+pattern DataReplicationState_BACKLOG = DataReplicationState' "BACKLOG"++pattern DataReplicationState_CONTINUOUS :: DataReplicationState+pattern DataReplicationState_CONTINUOUS = DataReplicationState' "CONTINUOUS"++pattern DataReplicationState_CREATING_SNAPSHOT :: DataReplicationState+pattern DataReplicationState_CREATING_SNAPSHOT = DataReplicationState' "CREATING_SNAPSHOT"++pattern DataReplicationState_DISCONNECTED :: DataReplicationState+pattern DataReplicationState_DISCONNECTED = DataReplicationState' "DISCONNECTED"++pattern DataReplicationState_INITIAL_SYNC :: DataReplicationState+pattern DataReplicationState_INITIAL_SYNC = DataReplicationState' "INITIAL_SYNC"++pattern DataReplicationState_INITIATING :: DataReplicationState+pattern DataReplicationState_INITIATING = DataReplicationState' "INITIATING"++pattern DataReplicationState_PAUSED :: DataReplicationState+pattern DataReplicationState_PAUSED = DataReplicationState' "PAUSED"++pattern DataReplicationState_PENDING_SNAPSHOT_SHIPPING :: DataReplicationState+pattern DataReplicationState_PENDING_SNAPSHOT_SHIPPING = DataReplicationState' "PENDING_SNAPSHOT_SHIPPING"++pattern DataReplicationState_RESCAN :: DataReplicationState+pattern DataReplicationState_RESCAN = DataReplicationState' "RESCAN"++pattern DataReplicationState_SHIPPING_SNAPSHOT :: DataReplicationState+pattern DataReplicationState_SHIPPING_SNAPSHOT = DataReplicationState' "SHIPPING_SNAPSHOT"++pattern DataReplicationState_STALLED :: DataReplicationState+pattern DataReplicationState_STALLED = DataReplicationState' "STALLED"++pattern DataReplicationState_STOPPED :: DataReplicationState+pattern DataReplicationState_STOPPED = DataReplicationState' "STOPPED"++{-# COMPLETE+ DataReplicationState_BACKLOG,+ DataReplicationState_CONTINUOUS,+ DataReplicationState_CREATING_SNAPSHOT,+ DataReplicationState_DISCONNECTED,+ DataReplicationState_INITIAL_SYNC,+ DataReplicationState_INITIATING,+ DataReplicationState_PAUSED,+ DataReplicationState_PENDING_SNAPSHOT_SHIPPING,+ DataReplicationState_RESCAN,+ DataReplicationState_SHIPPING_SNAPSHOT,+ DataReplicationState_STALLED,+ DataReplicationState_STOPPED,+ DataReplicationState'+ #-}
+ gen/Amazonka/MGN/Types/DescribeJobsRequestFilters.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.MGN.Types.DescribeJobsRequestFilters+-- 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.MGN.Types.DescribeJobsRequestFilters 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++-- | Request to describe Job log filters.+--+-- /See:/ 'newDescribeJobsRequestFilters' smart constructor.+data DescribeJobsRequestFilters = DescribeJobsRequestFilters'+ { -- | Request to describe Job log filters by date.+ fromDate :: Prelude.Maybe Prelude.Text,+ -- | Request to describe Job log filters by job ID.+ jobIDs :: Prelude.Maybe [Prelude.Text],+ -- | Request to describe job log items by last date.+ toDate :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeJobsRequestFilters' 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:+--+-- 'fromDate', 'describeJobsRequestFilters_fromDate' - Request to describe Job log filters by date.+--+-- 'jobIDs', 'describeJobsRequestFilters_jobIDs' - Request to describe Job log filters by job ID.+--+-- 'toDate', 'describeJobsRequestFilters_toDate' - Request to describe job log items by last date.+newDescribeJobsRequestFilters ::+ DescribeJobsRequestFilters+newDescribeJobsRequestFilters =+ DescribeJobsRequestFilters'+ { fromDate =+ Prelude.Nothing,+ jobIDs = Prelude.Nothing,+ toDate = Prelude.Nothing+ }++-- | Request to describe Job log filters by date.+describeJobsRequestFilters_fromDate :: Lens.Lens' DescribeJobsRequestFilters (Prelude.Maybe Prelude.Text)+describeJobsRequestFilters_fromDate = Lens.lens (\DescribeJobsRequestFilters' {fromDate} -> fromDate) (\s@DescribeJobsRequestFilters' {} a -> s {fromDate = a} :: DescribeJobsRequestFilters)++-- | Request to describe Job log filters by job ID.+describeJobsRequestFilters_jobIDs :: Lens.Lens' DescribeJobsRequestFilters (Prelude.Maybe [Prelude.Text])+describeJobsRequestFilters_jobIDs = Lens.lens (\DescribeJobsRequestFilters' {jobIDs} -> jobIDs) (\s@DescribeJobsRequestFilters' {} a -> s {jobIDs = a} :: DescribeJobsRequestFilters) Prelude.. Lens.mapping Lens.coerced++-- | Request to describe job log items by last date.+describeJobsRequestFilters_toDate :: Lens.Lens' DescribeJobsRequestFilters (Prelude.Maybe Prelude.Text)+describeJobsRequestFilters_toDate = Lens.lens (\DescribeJobsRequestFilters' {toDate} -> toDate) (\s@DescribeJobsRequestFilters' {} a -> s {toDate = a} :: DescribeJobsRequestFilters)++instance Prelude.Hashable DescribeJobsRequestFilters where+ hashWithSalt _salt DescribeJobsRequestFilters' {..} =+ _salt+ `Prelude.hashWithSalt` fromDate+ `Prelude.hashWithSalt` jobIDs+ `Prelude.hashWithSalt` toDate++instance Prelude.NFData DescribeJobsRequestFilters where+ rnf DescribeJobsRequestFilters' {..} =+ Prelude.rnf fromDate+ `Prelude.seq` Prelude.rnf jobIDs+ `Prelude.seq` Prelude.rnf toDate++instance Data.ToJSON DescribeJobsRequestFilters where+ toJSON DescribeJobsRequestFilters' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("fromDate" Data..=) Prelude.<$> fromDate,+ ("jobIDs" Data..=) Prelude.<$> jobIDs,+ ("toDate" Data..=) Prelude.<$> toDate+ ]+ )
+ gen/Amazonka/MGN/Types/DescribeSourceServersRequestFilters.hs view
@@ -0,0 +1,137 @@+{-# 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.MGN.Types.DescribeSourceServersRequestFilters+-- 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.MGN.Types.DescribeSourceServersRequestFilters where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types.LifeCycleState+import Amazonka.MGN.Types.ReplicationType+import qualified Amazonka.Prelude as Prelude++-- | Request to filter Source Servers list.+--+-- /See:/ 'newDescribeSourceServersRequestFilters' smart constructor.+data DescribeSourceServersRequestFilters = DescribeSourceServersRequestFilters'+ { -- | Request to filter Source Servers list by application IDs.+ applicationIDs :: Prelude.Maybe [Prelude.Text],+ -- | Request to filter Source Servers list by archived.+ isArchived :: Prelude.Maybe Prelude.Bool,+ -- | Request to filter Source Servers list by life cycle states.+ lifeCycleStates :: Prelude.Maybe [LifeCycleState],+ -- | Request to filter Source Servers list by replication type.+ replicationTypes :: Prelude.Maybe [ReplicationType],+ -- | Request to filter Source Servers list by Source Server ID.+ sourceServerIDs :: Prelude.Maybe [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeSourceServersRequestFilters' 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:+--+-- 'applicationIDs', 'describeSourceServersRequestFilters_applicationIDs' - Request to filter Source Servers list by application IDs.+--+-- 'isArchived', 'describeSourceServersRequestFilters_isArchived' - Request to filter Source Servers list by archived.+--+-- 'lifeCycleStates', 'describeSourceServersRequestFilters_lifeCycleStates' - Request to filter Source Servers list by life cycle states.+--+-- 'replicationTypes', 'describeSourceServersRequestFilters_replicationTypes' - Request to filter Source Servers list by replication type.+--+-- 'sourceServerIDs', 'describeSourceServersRequestFilters_sourceServerIDs' - Request to filter Source Servers list by Source Server ID.+newDescribeSourceServersRequestFilters ::+ DescribeSourceServersRequestFilters+newDescribeSourceServersRequestFilters =+ DescribeSourceServersRequestFilters'+ { applicationIDs =+ Prelude.Nothing,+ isArchived = Prelude.Nothing,+ lifeCycleStates = Prelude.Nothing,+ replicationTypes = Prelude.Nothing,+ sourceServerIDs = Prelude.Nothing+ }++-- | Request to filter Source Servers list by application IDs.+describeSourceServersRequestFilters_applicationIDs :: Lens.Lens' DescribeSourceServersRequestFilters (Prelude.Maybe [Prelude.Text])+describeSourceServersRequestFilters_applicationIDs = Lens.lens (\DescribeSourceServersRequestFilters' {applicationIDs} -> applicationIDs) (\s@DescribeSourceServersRequestFilters' {} a -> s {applicationIDs = a} :: DescribeSourceServersRequestFilters) Prelude.. Lens.mapping Lens.coerced++-- | Request to filter Source Servers list by archived.+describeSourceServersRequestFilters_isArchived :: Lens.Lens' DescribeSourceServersRequestFilters (Prelude.Maybe Prelude.Bool)+describeSourceServersRequestFilters_isArchived = Lens.lens (\DescribeSourceServersRequestFilters' {isArchived} -> isArchived) (\s@DescribeSourceServersRequestFilters' {} a -> s {isArchived = a} :: DescribeSourceServersRequestFilters)++-- | Request to filter Source Servers list by life cycle states.+describeSourceServersRequestFilters_lifeCycleStates :: Lens.Lens' DescribeSourceServersRequestFilters (Prelude.Maybe [LifeCycleState])+describeSourceServersRequestFilters_lifeCycleStates = Lens.lens (\DescribeSourceServersRequestFilters' {lifeCycleStates} -> lifeCycleStates) (\s@DescribeSourceServersRequestFilters' {} a -> s {lifeCycleStates = a} :: DescribeSourceServersRequestFilters) Prelude.. Lens.mapping Lens.coerced++-- | Request to filter Source Servers list by replication type.+describeSourceServersRequestFilters_replicationTypes :: Lens.Lens' DescribeSourceServersRequestFilters (Prelude.Maybe [ReplicationType])+describeSourceServersRequestFilters_replicationTypes = Lens.lens (\DescribeSourceServersRequestFilters' {replicationTypes} -> replicationTypes) (\s@DescribeSourceServersRequestFilters' {} a -> s {replicationTypes = a} :: DescribeSourceServersRequestFilters) Prelude.. Lens.mapping Lens.coerced++-- | Request to filter Source Servers list by Source Server ID.+describeSourceServersRequestFilters_sourceServerIDs :: Lens.Lens' DescribeSourceServersRequestFilters (Prelude.Maybe [Prelude.Text])+describeSourceServersRequestFilters_sourceServerIDs = Lens.lens (\DescribeSourceServersRequestFilters' {sourceServerIDs} -> sourceServerIDs) (\s@DescribeSourceServersRequestFilters' {} a -> s {sourceServerIDs = a} :: DescribeSourceServersRequestFilters) Prelude.. Lens.mapping Lens.coerced++instance+ Prelude.Hashable+ DescribeSourceServersRequestFilters+ where+ hashWithSalt+ _salt+ DescribeSourceServersRequestFilters' {..} =+ _salt+ `Prelude.hashWithSalt` applicationIDs+ `Prelude.hashWithSalt` isArchived+ `Prelude.hashWithSalt` lifeCycleStates+ `Prelude.hashWithSalt` replicationTypes+ `Prelude.hashWithSalt` sourceServerIDs++instance+ Prelude.NFData+ DescribeSourceServersRequestFilters+ where+ rnf DescribeSourceServersRequestFilters' {..} =+ Prelude.rnf applicationIDs+ `Prelude.seq` Prelude.rnf isArchived+ `Prelude.seq` Prelude.rnf lifeCycleStates+ `Prelude.seq` Prelude.rnf replicationTypes+ `Prelude.seq` Prelude.rnf sourceServerIDs++instance+ Data.ToJSON+ DescribeSourceServersRequestFilters+ where+ toJSON DescribeSourceServersRequestFilters' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("applicationIDs" Data..=)+ Prelude.<$> applicationIDs,+ ("isArchived" Data..=) Prelude.<$> isArchived,+ ("lifeCycleStates" Data..=)+ Prelude.<$> lifeCycleStates,+ ("replicationTypes" Data..=)+ Prelude.<$> replicationTypes,+ ("sourceServerIDs" Data..=)+ Prelude.<$> sourceServerIDs+ ]+ )
+ gen/Amazonka/MGN/Types/Disk.hs view
@@ -0,0 +1,84 @@+{-# 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.MGN.Types.Disk+-- 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.MGN.Types.Disk 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 disk identifier.+--+-- /See:/ 'newDisk' smart constructor.+data Disk = Disk'+ { -- | The amount of storage on the disk in bytes.+ bytes :: Prelude.Maybe Prelude.Natural,+ -- | The disk or device name.+ deviceName :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Disk' 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:+--+-- 'bytes', 'disk_bytes' - The amount of storage on the disk in bytes.+--+-- 'deviceName', 'disk_deviceName' - The disk or device name.+newDisk ::+ Disk+newDisk =+ Disk'+ { bytes = Prelude.Nothing,+ deviceName = Prelude.Nothing+ }++-- | The amount of storage on the disk in bytes.+disk_bytes :: Lens.Lens' Disk (Prelude.Maybe Prelude.Natural)+disk_bytes = Lens.lens (\Disk' {bytes} -> bytes) (\s@Disk' {} a -> s {bytes = a} :: Disk)++-- | The disk or device name.+disk_deviceName :: Lens.Lens' Disk (Prelude.Maybe Prelude.Text)+disk_deviceName = Lens.lens (\Disk' {deviceName} -> deviceName) (\s@Disk' {} a -> s {deviceName = a} :: Disk)++instance Data.FromJSON Disk where+ parseJSON =+ Data.withObject+ "Disk"+ ( \x ->+ Disk'+ Prelude.<$> (x Data..:? "bytes")+ Prelude.<*> (x Data..:? "deviceName")+ )++instance Prelude.Hashable Disk where+ hashWithSalt _salt Disk' {..} =+ _salt+ `Prelude.hashWithSalt` bytes+ `Prelude.hashWithSalt` deviceName++instance Prelude.NFData Disk where+ rnf Disk' {..} =+ Prelude.rnf bytes+ `Prelude.seq` Prelude.rnf deviceName
+ gen/Amazonka/MGN/Types/FirstBoot.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.MGN.Types.FirstBoot+-- 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.MGN.Types.FirstBoot+ ( FirstBoot+ ( ..,+ FirstBoot_STOPPED,+ FirstBoot_SUCCEEDED,+ FirstBoot_UNKNOWN,+ FirstBoot_WAITING+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype FirstBoot = FirstBoot'+ { fromFirstBoot ::+ 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 FirstBoot_STOPPED :: FirstBoot+pattern FirstBoot_STOPPED = FirstBoot' "STOPPED"++pattern FirstBoot_SUCCEEDED :: FirstBoot+pattern FirstBoot_SUCCEEDED = FirstBoot' "SUCCEEDED"++pattern FirstBoot_UNKNOWN :: FirstBoot+pattern FirstBoot_UNKNOWN = FirstBoot' "UNKNOWN"++pattern FirstBoot_WAITING :: FirstBoot+pattern FirstBoot_WAITING = FirstBoot' "WAITING"++{-# COMPLETE+ FirstBoot_STOPPED,+ FirstBoot_SUCCEEDED,+ FirstBoot_UNKNOWN,+ FirstBoot_WAITING,+ FirstBoot'+ #-}
+ gen/Amazonka/MGN/Types/IdentificationHints.hs view
@@ -0,0 +1,121 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MGN.Types.IdentificationHints+-- 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.MGN.Types.IdentificationHints 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++-- | Identification hints.+--+-- /See:/ 'newIdentificationHints' smart constructor.+data IdentificationHints = IdentificationHints'+ { -- | AWS Instance ID identification hint.+ awsInstanceID :: Prelude.Maybe Prelude.Text,+ -- | FQDN address identification hint.+ fqdn :: Prelude.Maybe Prelude.Text,+ -- | Hostname identification hint.+ hostname :: Prelude.Maybe Prelude.Text,+ -- | vCenter VM path identification hint.+ vmPath :: Prelude.Maybe Prelude.Text,+ -- | vmWare UUID identification hint.+ vmWareUuid :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'IdentificationHints' 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:+--+-- 'awsInstanceID', 'identificationHints_awsInstanceID' - AWS Instance ID identification hint.+--+-- 'fqdn', 'identificationHints_fqdn' - FQDN address identification hint.+--+-- 'hostname', 'identificationHints_hostname' - Hostname identification hint.+--+-- 'vmPath', 'identificationHints_vmPath' - vCenter VM path identification hint.+--+-- 'vmWareUuid', 'identificationHints_vmWareUuid' - vmWare UUID identification hint.+newIdentificationHints ::+ IdentificationHints+newIdentificationHints =+ IdentificationHints'+ { awsInstanceID =+ Prelude.Nothing,+ fqdn = Prelude.Nothing,+ hostname = Prelude.Nothing,+ vmPath = Prelude.Nothing,+ vmWareUuid = Prelude.Nothing+ }++-- | AWS Instance ID identification hint.+identificationHints_awsInstanceID :: Lens.Lens' IdentificationHints (Prelude.Maybe Prelude.Text)+identificationHints_awsInstanceID = Lens.lens (\IdentificationHints' {awsInstanceID} -> awsInstanceID) (\s@IdentificationHints' {} a -> s {awsInstanceID = a} :: IdentificationHints)++-- | FQDN address identification hint.+identificationHints_fqdn :: Lens.Lens' IdentificationHints (Prelude.Maybe Prelude.Text)+identificationHints_fqdn = Lens.lens (\IdentificationHints' {fqdn} -> fqdn) (\s@IdentificationHints' {} a -> s {fqdn = a} :: IdentificationHints)++-- | Hostname identification hint.+identificationHints_hostname :: Lens.Lens' IdentificationHints (Prelude.Maybe Prelude.Text)+identificationHints_hostname = Lens.lens (\IdentificationHints' {hostname} -> hostname) (\s@IdentificationHints' {} a -> s {hostname = a} :: IdentificationHints)++-- | vCenter VM path identification hint.+identificationHints_vmPath :: Lens.Lens' IdentificationHints (Prelude.Maybe Prelude.Text)+identificationHints_vmPath = Lens.lens (\IdentificationHints' {vmPath} -> vmPath) (\s@IdentificationHints' {} a -> s {vmPath = a} :: IdentificationHints)++-- | vmWare UUID identification hint.+identificationHints_vmWareUuid :: Lens.Lens' IdentificationHints (Prelude.Maybe Prelude.Text)+identificationHints_vmWareUuid = Lens.lens (\IdentificationHints' {vmWareUuid} -> vmWareUuid) (\s@IdentificationHints' {} a -> s {vmWareUuid = a} :: IdentificationHints)++instance Data.FromJSON IdentificationHints where+ parseJSON =+ Data.withObject+ "IdentificationHints"+ ( \x ->+ IdentificationHints'+ Prelude.<$> (x Data..:? "awsInstanceID")+ Prelude.<*> (x Data..:? "fqdn")+ Prelude.<*> (x Data..:? "hostname")+ Prelude.<*> (x Data..:? "vmPath")+ Prelude.<*> (x Data..:? "vmWareUuid")+ )++instance Prelude.Hashable IdentificationHints where+ hashWithSalt _salt IdentificationHints' {..} =+ _salt+ `Prelude.hashWithSalt` awsInstanceID+ `Prelude.hashWithSalt` fqdn+ `Prelude.hashWithSalt` hostname+ `Prelude.hashWithSalt` vmPath+ `Prelude.hashWithSalt` vmWareUuid++instance Prelude.NFData IdentificationHints where+ rnf IdentificationHints' {..} =+ Prelude.rnf awsInstanceID+ `Prelude.seq` Prelude.rnf fqdn+ `Prelude.seq` Prelude.rnf hostname+ `Prelude.seq` Prelude.rnf vmPath+ `Prelude.seq` Prelude.rnf vmWareUuid
+ gen/Amazonka/MGN/Types/InitiatedBy.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.MGN.Types.InitiatedBy+-- 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.MGN.Types.InitiatedBy+ ( InitiatedBy+ ( ..,+ InitiatedBy_DIAGNOSTIC,+ InitiatedBy_START_CUTOVER,+ InitiatedBy_START_TEST,+ InitiatedBy_TERMINATE+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype InitiatedBy = InitiatedBy'+ { fromInitiatedBy ::+ 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 InitiatedBy_DIAGNOSTIC :: InitiatedBy+pattern InitiatedBy_DIAGNOSTIC = InitiatedBy' "DIAGNOSTIC"++pattern InitiatedBy_START_CUTOVER :: InitiatedBy+pattern InitiatedBy_START_CUTOVER = InitiatedBy' "START_CUTOVER"++pattern InitiatedBy_START_TEST :: InitiatedBy+pattern InitiatedBy_START_TEST = InitiatedBy' "START_TEST"++pattern InitiatedBy_TERMINATE :: InitiatedBy+pattern InitiatedBy_TERMINATE = InitiatedBy' "TERMINATE"++{-# COMPLETE+ InitiatedBy_DIAGNOSTIC,+ InitiatedBy_START_CUTOVER,+ InitiatedBy_START_TEST,+ InitiatedBy_TERMINATE,+ InitiatedBy'+ #-}
+ gen/Amazonka/MGN/Types/Job.hs view
@@ -0,0 +1,177 @@+{-# 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.MGN.Types.Job+-- 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.MGN.Types.Job where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types.InitiatedBy+import Amazonka.MGN.Types.JobStatus+import Amazonka.MGN.Types.JobType+import Amazonka.MGN.Types.ParticipatingServer+import qualified Amazonka.Prelude as Prelude++-- | Job.+--+-- /See:/ 'newJob' smart constructor.+data Job = Job'+ { -- | the ARN of the specific Job.+ arn :: Prelude.Maybe Prelude.Text,+ -- | Job creation time.+ creationDateTime :: Prelude.Maybe Prelude.Text,+ -- | Job end time.+ endDateTime :: Prelude.Maybe Prelude.Text,+ -- | Job initiated by field.+ initiatedBy :: Prelude.Maybe InitiatedBy,+ -- | Servers participating in a specific Job.+ participatingServers :: Prelude.Maybe [ParticipatingServer],+ -- | Job status.+ status :: Prelude.Maybe JobStatus,+ -- | Tags associated with specific Job.+ tags :: Prelude.Maybe (Data.Sensitive (Prelude.HashMap Prelude.Text Prelude.Text)),+ -- | Job type.+ type' :: Prelude.Maybe JobType,+ -- | Job ID.+ jobID :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Job' 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', 'job_arn' - the ARN of the specific Job.+--+-- 'creationDateTime', 'job_creationDateTime' - Job creation time.+--+-- 'endDateTime', 'job_endDateTime' - Job end time.+--+-- 'initiatedBy', 'job_initiatedBy' - Job initiated by field.+--+-- 'participatingServers', 'job_participatingServers' - Servers participating in a specific Job.+--+-- 'status', 'job_status' - Job status.+--+-- 'tags', 'job_tags' - Tags associated with specific Job.+--+-- 'type'', 'job_type' - Job type.+--+-- 'jobID', 'job_jobID' - Job ID.+newJob ::+ -- | 'jobID'+ Prelude.Text ->+ Job+newJob pJobID_ =+ Job'+ { arn = Prelude.Nothing,+ creationDateTime = Prelude.Nothing,+ endDateTime = Prelude.Nothing,+ initiatedBy = Prelude.Nothing,+ participatingServers = Prelude.Nothing,+ status = Prelude.Nothing,+ tags = Prelude.Nothing,+ type' = Prelude.Nothing,+ jobID = pJobID_+ }++-- | the ARN of the specific Job.+job_arn :: Lens.Lens' Job (Prelude.Maybe Prelude.Text)+job_arn = Lens.lens (\Job' {arn} -> arn) (\s@Job' {} a -> s {arn = a} :: Job)++-- | Job creation time.+job_creationDateTime :: Lens.Lens' Job (Prelude.Maybe Prelude.Text)+job_creationDateTime = Lens.lens (\Job' {creationDateTime} -> creationDateTime) (\s@Job' {} a -> s {creationDateTime = a} :: Job)++-- | Job end time.+job_endDateTime :: Lens.Lens' Job (Prelude.Maybe Prelude.Text)+job_endDateTime = Lens.lens (\Job' {endDateTime} -> endDateTime) (\s@Job' {} a -> s {endDateTime = a} :: Job)++-- | Job initiated by field.+job_initiatedBy :: Lens.Lens' Job (Prelude.Maybe InitiatedBy)+job_initiatedBy = Lens.lens (\Job' {initiatedBy} -> initiatedBy) (\s@Job' {} a -> s {initiatedBy = a} :: Job)++-- | Servers participating in a specific Job.+job_participatingServers :: Lens.Lens' Job (Prelude.Maybe [ParticipatingServer])+job_participatingServers = Lens.lens (\Job' {participatingServers} -> participatingServers) (\s@Job' {} a -> s {participatingServers = a} :: Job) Prelude.. Lens.mapping Lens.coerced++-- | Job status.+job_status :: Lens.Lens' Job (Prelude.Maybe JobStatus)+job_status = Lens.lens (\Job' {status} -> status) (\s@Job' {} a -> s {status = a} :: Job)++-- | Tags associated with specific Job.+job_tags :: Lens.Lens' Job (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+job_tags = Lens.lens (\Job' {tags} -> tags) (\s@Job' {} a -> s {tags = a} :: Job) Prelude.. Lens.mapping (Data._Sensitive Prelude.. Lens.coerced)++-- | Job type.+job_type :: Lens.Lens' Job (Prelude.Maybe JobType)+job_type = Lens.lens (\Job' {type'} -> type') (\s@Job' {} a -> s {type' = a} :: Job)++-- | Job ID.+job_jobID :: Lens.Lens' Job Prelude.Text+job_jobID = Lens.lens (\Job' {jobID} -> jobID) (\s@Job' {} a -> s {jobID = a} :: Job)++instance Data.FromJSON Job where+ parseJSON =+ Data.withObject+ "Job"+ ( \x ->+ Job'+ Prelude.<$> (x Data..:? "arn")+ Prelude.<*> (x Data..:? "creationDateTime")+ Prelude.<*> (x Data..:? "endDateTime")+ Prelude.<*> (x Data..:? "initiatedBy")+ Prelude.<*> ( x+ Data..:? "participatingServers"+ Data..!= Prelude.mempty+ )+ Prelude.<*> (x Data..:? "status")+ Prelude.<*> (x Data..:? "tags" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "type")+ Prelude.<*> (x Data..: "jobID")+ )++instance Prelude.Hashable Job where+ hashWithSalt _salt Job' {..} =+ _salt+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` creationDateTime+ `Prelude.hashWithSalt` endDateTime+ `Prelude.hashWithSalt` initiatedBy+ `Prelude.hashWithSalt` participatingServers+ `Prelude.hashWithSalt` status+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` type'+ `Prelude.hashWithSalt` jobID++instance Prelude.NFData Job where+ rnf Job' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf creationDateTime+ `Prelude.seq` Prelude.rnf endDateTime+ `Prelude.seq` Prelude.rnf initiatedBy+ `Prelude.seq` Prelude.rnf participatingServers+ `Prelude.seq` Prelude.rnf status+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf type'+ `Prelude.seq` Prelude.rnf jobID
+ gen/Amazonka/MGN/Types/JobLog.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.MGN.Types.JobLog+-- 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.MGN.Types.JobLog where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types.JobLogEvent+import Amazonka.MGN.Types.JobLogEventData+import qualified Amazonka.Prelude as Prelude++-- | Job log.+--+-- /See:/ 'newJobLog' smart constructor.+data JobLog = JobLog'+ { -- | Job log event.+ event :: Prelude.Maybe JobLogEvent,+ -- | Job event data+ eventData :: Prelude.Maybe JobLogEventData,+ -- | Job log event date and time.+ logDateTime :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'JobLog' 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:+--+-- 'event', 'jobLog_event' - Job log event.+--+-- 'eventData', 'jobLog_eventData' - Job event data+--+-- 'logDateTime', 'jobLog_logDateTime' - Job log event date and time.+newJobLog ::+ JobLog+newJobLog =+ JobLog'+ { event = Prelude.Nothing,+ eventData = Prelude.Nothing,+ logDateTime = Prelude.Nothing+ }++-- | Job log event.+jobLog_event :: Lens.Lens' JobLog (Prelude.Maybe JobLogEvent)+jobLog_event = Lens.lens (\JobLog' {event} -> event) (\s@JobLog' {} a -> s {event = a} :: JobLog)++-- | Job event data+jobLog_eventData :: Lens.Lens' JobLog (Prelude.Maybe JobLogEventData)+jobLog_eventData = Lens.lens (\JobLog' {eventData} -> eventData) (\s@JobLog' {} a -> s {eventData = a} :: JobLog)++-- | Job log event date and time.+jobLog_logDateTime :: Lens.Lens' JobLog (Prelude.Maybe Prelude.Text)+jobLog_logDateTime = Lens.lens (\JobLog' {logDateTime} -> logDateTime) (\s@JobLog' {} a -> s {logDateTime = a} :: JobLog)++instance Data.FromJSON JobLog where+ parseJSON =+ Data.withObject+ "JobLog"+ ( \x ->+ JobLog'+ Prelude.<$> (x Data..:? "event")+ Prelude.<*> (x Data..:? "eventData")+ Prelude.<*> (x Data..:? "logDateTime")+ )++instance Prelude.Hashable JobLog where+ hashWithSalt _salt JobLog' {..} =+ _salt+ `Prelude.hashWithSalt` event+ `Prelude.hashWithSalt` eventData+ `Prelude.hashWithSalt` logDateTime++instance Prelude.NFData JobLog where+ rnf JobLog' {..} =+ Prelude.rnf event+ `Prelude.seq` Prelude.rnf eventData+ `Prelude.seq` Prelude.rnf logDateTime
+ gen/Amazonka/MGN/Types/JobLogEvent.hs view
@@ -0,0 +1,141 @@+{-# 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.MGN.Types.JobLogEvent+-- 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.MGN.Types.JobLogEvent+ ( JobLogEvent+ ( ..,+ JobLogEvent_CLEANUP_END,+ JobLogEvent_CLEANUP_FAIL,+ JobLogEvent_CLEANUP_START,+ JobLogEvent_CONVERSION_END,+ JobLogEvent_CONVERSION_FAIL,+ JobLogEvent_CONVERSION_START,+ JobLogEvent_JOB_CANCEL,+ JobLogEvent_JOB_END,+ JobLogEvent_JOB_START,+ JobLogEvent_LAUNCH_FAILED,+ JobLogEvent_LAUNCH_START,+ JobLogEvent_SERVER_SKIPPED,+ JobLogEvent_SNAPSHOT_END,+ JobLogEvent_SNAPSHOT_FAIL,+ JobLogEvent_SNAPSHOT_START,+ JobLogEvent_USING_PREVIOUS_SNAPSHOT+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype JobLogEvent = JobLogEvent'+ { fromJobLogEvent ::+ 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 JobLogEvent_CLEANUP_END :: JobLogEvent+pattern JobLogEvent_CLEANUP_END = JobLogEvent' "CLEANUP_END"++pattern JobLogEvent_CLEANUP_FAIL :: JobLogEvent+pattern JobLogEvent_CLEANUP_FAIL = JobLogEvent' "CLEANUP_FAIL"++pattern JobLogEvent_CLEANUP_START :: JobLogEvent+pattern JobLogEvent_CLEANUP_START = JobLogEvent' "CLEANUP_START"++pattern JobLogEvent_CONVERSION_END :: JobLogEvent+pattern JobLogEvent_CONVERSION_END = JobLogEvent' "CONVERSION_END"++pattern JobLogEvent_CONVERSION_FAIL :: JobLogEvent+pattern JobLogEvent_CONVERSION_FAIL = JobLogEvent' "CONVERSION_FAIL"++pattern JobLogEvent_CONVERSION_START :: JobLogEvent+pattern JobLogEvent_CONVERSION_START = JobLogEvent' "CONVERSION_START"++pattern JobLogEvent_JOB_CANCEL :: JobLogEvent+pattern JobLogEvent_JOB_CANCEL = JobLogEvent' "JOB_CANCEL"++pattern JobLogEvent_JOB_END :: JobLogEvent+pattern JobLogEvent_JOB_END = JobLogEvent' "JOB_END"++pattern JobLogEvent_JOB_START :: JobLogEvent+pattern JobLogEvent_JOB_START = JobLogEvent' "JOB_START"++pattern JobLogEvent_LAUNCH_FAILED :: JobLogEvent+pattern JobLogEvent_LAUNCH_FAILED = JobLogEvent' "LAUNCH_FAILED"++pattern JobLogEvent_LAUNCH_START :: JobLogEvent+pattern JobLogEvent_LAUNCH_START = JobLogEvent' "LAUNCH_START"++pattern JobLogEvent_SERVER_SKIPPED :: JobLogEvent+pattern JobLogEvent_SERVER_SKIPPED = JobLogEvent' "SERVER_SKIPPED"++pattern JobLogEvent_SNAPSHOT_END :: JobLogEvent+pattern JobLogEvent_SNAPSHOT_END = JobLogEvent' "SNAPSHOT_END"++pattern JobLogEvent_SNAPSHOT_FAIL :: JobLogEvent+pattern JobLogEvent_SNAPSHOT_FAIL = JobLogEvent' "SNAPSHOT_FAIL"++pattern JobLogEvent_SNAPSHOT_START :: JobLogEvent+pattern JobLogEvent_SNAPSHOT_START = JobLogEvent' "SNAPSHOT_START"++pattern JobLogEvent_USING_PREVIOUS_SNAPSHOT :: JobLogEvent+pattern JobLogEvent_USING_PREVIOUS_SNAPSHOT = JobLogEvent' "USING_PREVIOUS_SNAPSHOT"++{-# COMPLETE+ JobLogEvent_CLEANUP_END,+ JobLogEvent_CLEANUP_FAIL,+ JobLogEvent_CLEANUP_START,+ JobLogEvent_CONVERSION_END,+ JobLogEvent_CONVERSION_FAIL,+ JobLogEvent_CONVERSION_START,+ JobLogEvent_JOB_CANCEL,+ JobLogEvent_JOB_END,+ JobLogEvent_JOB_START,+ JobLogEvent_LAUNCH_FAILED,+ JobLogEvent_LAUNCH_START,+ JobLogEvent_SERVER_SKIPPED,+ JobLogEvent_SNAPSHOT_END,+ JobLogEvent_SNAPSHOT_FAIL,+ JobLogEvent_SNAPSHOT_START,+ JobLogEvent_USING_PREVIOUS_SNAPSHOT,+ JobLogEvent'+ #-}
+ gen/Amazonka/MGN/Types/JobLogEventData.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.MGN.Types.JobLogEventData+-- 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.MGN.Types.JobLogEventData 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++-- | Job log data+--+-- /See:/ 'newJobLogEventData' smart constructor.+data JobLogEventData = JobLogEventData'+ { -- | Job Event conversion Server ID.+ conversionServerID :: Prelude.Maybe Prelude.Text,+ -- | Job error.+ rawError :: Prelude.Maybe Prelude.Text,+ -- | Job Event Source Server ID.+ sourceServerID :: Prelude.Maybe Prelude.Text,+ -- | Job Event Target instance ID.+ targetInstanceID :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'JobLogEventData' 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:+--+-- 'conversionServerID', 'jobLogEventData_conversionServerID' - Job Event conversion Server ID.+--+-- 'rawError', 'jobLogEventData_rawError' - Job error.+--+-- 'sourceServerID', 'jobLogEventData_sourceServerID' - Job Event Source Server ID.+--+-- 'targetInstanceID', 'jobLogEventData_targetInstanceID' - Job Event Target instance ID.+newJobLogEventData ::+ JobLogEventData+newJobLogEventData =+ JobLogEventData'+ { conversionServerID =+ Prelude.Nothing,+ rawError = Prelude.Nothing,+ sourceServerID = Prelude.Nothing,+ targetInstanceID = Prelude.Nothing+ }++-- | Job Event conversion Server ID.+jobLogEventData_conversionServerID :: Lens.Lens' JobLogEventData (Prelude.Maybe Prelude.Text)+jobLogEventData_conversionServerID = Lens.lens (\JobLogEventData' {conversionServerID} -> conversionServerID) (\s@JobLogEventData' {} a -> s {conversionServerID = a} :: JobLogEventData)++-- | Job error.+jobLogEventData_rawError :: Lens.Lens' JobLogEventData (Prelude.Maybe Prelude.Text)+jobLogEventData_rawError = Lens.lens (\JobLogEventData' {rawError} -> rawError) (\s@JobLogEventData' {} a -> s {rawError = a} :: JobLogEventData)++-- | Job Event Source Server ID.+jobLogEventData_sourceServerID :: Lens.Lens' JobLogEventData (Prelude.Maybe Prelude.Text)+jobLogEventData_sourceServerID = Lens.lens (\JobLogEventData' {sourceServerID} -> sourceServerID) (\s@JobLogEventData' {} a -> s {sourceServerID = a} :: JobLogEventData)++-- | Job Event Target instance ID.+jobLogEventData_targetInstanceID :: Lens.Lens' JobLogEventData (Prelude.Maybe Prelude.Text)+jobLogEventData_targetInstanceID = Lens.lens (\JobLogEventData' {targetInstanceID} -> targetInstanceID) (\s@JobLogEventData' {} a -> s {targetInstanceID = a} :: JobLogEventData)++instance Data.FromJSON JobLogEventData where+ parseJSON =+ Data.withObject+ "JobLogEventData"+ ( \x ->+ JobLogEventData'+ Prelude.<$> (x Data..:? "conversionServerID")+ Prelude.<*> (x Data..:? "rawError")+ Prelude.<*> (x Data..:? "sourceServerID")+ Prelude.<*> (x Data..:? "targetInstanceID")+ )++instance Prelude.Hashable JobLogEventData where+ hashWithSalt _salt JobLogEventData' {..} =+ _salt+ `Prelude.hashWithSalt` conversionServerID+ `Prelude.hashWithSalt` rawError+ `Prelude.hashWithSalt` sourceServerID+ `Prelude.hashWithSalt` targetInstanceID++instance Prelude.NFData JobLogEventData where+ rnf JobLogEventData' {..} =+ Prelude.rnf conversionServerID+ `Prelude.seq` Prelude.rnf rawError+ `Prelude.seq` Prelude.rnf sourceServerID+ `Prelude.seq` Prelude.rnf targetInstanceID
+ gen/Amazonka/MGN/Types/JobPostLaunchActionsLaunchStatus.hs view
@@ -0,0 +1,138 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MGN.Types.JobPostLaunchActionsLaunchStatus+-- 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.MGN.Types.JobPostLaunchActionsLaunchStatus where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types.PostLaunchActionExecutionStatus+import Amazonka.MGN.Types.SsmDocument+import Amazonka.MGN.Types.SsmDocumentType+import qualified Amazonka.Prelude as Prelude++-- | Launch Status of the Job Post Launch Actions.+--+-- /See:/ 'newJobPostLaunchActionsLaunchStatus' smart constructor.+data JobPostLaunchActionsLaunchStatus = JobPostLaunchActionsLaunchStatus'+ { -- | AWS Systems Manager Document\'s execution ID of the of the Job Post+ -- Launch Actions.+ executionID :: Prelude.Maybe Prelude.Text,+ -- | AWS Systems Manager Document\'s execution status.+ executionStatus :: Prelude.Maybe PostLaunchActionExecutionStatus,+ -- | AWS Systems Manager Document\'s failure reason.+ failureReason :: Prelude.Maybe Prelude.Text,+ -- | AWS Systems Manager\'s Document of the of the Job Post Launch Actions.+ ssmDocument :: Prelude.Maybe SsmDocument,+ -- | AWS Systems Manager Document type.+ ssmDocumentType :: Prelude.Maybe SsmDocumentType+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'JobPostLaunchActionsLaunchStatus' 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:+--+-- 'executionID', 'jobPostLaunchActionsLaunchStatus_executionID' - AWS Systems Manager Document\'s execution ID of the of the Job Post+-- Launch Actions.+--+-- 'executionStatus', 'jobPostLaunchActionsLaunchStatus_executionStatus' - AWS Systems Manager Document\'s execution status.+--+-- 'failureReason', 'jobPostLaunchActionsLaunchStatus_failureReason' - AWS Systems Manager Document\'s failure reason.+--+-- 'ssmDocument', 'jobPostLaunchActionsLaunchStatus_ssmDocument' - AWS Systems Manager\'s Document of the of the Job Post Launch Actions.+--+-- 'ssmDocumentType', 'jobPostLaunchActionsLaunchStatus_ssmDocumentType' - AWS Systems Manager Document type.+newJobPostLaunchActionsLaunchStatus ::+ JobPostLaunchActionsLaunchStatus+newJobPostLaunchActionsLaunchStatus =+ JobPostLaunchActionsLaunchStatus'+ { executionID =+ Prelude.Nothing,+ executionStatus = Prelude.Nothing,+ failureReason = Prelude.Nothing,+ ssmDocument = Prelude.Nothing,+ ssmDocumentType = Prelude.Nothing+ }++-- | AWS Systems Manager Document\'s execution ID of the of the Job Post+-- Launch Actions.+jobPostLaunchActionsLaunchStatus_executionID :: Lens.Lens' JobPostLaunchActionsLaunchStatus (Prelude.Maybe Prelude.Text)+jobPostLaunchActionsLaunchStatus_executionID = Lens.lens (\JobPostLaunchActionsLaunchStatus' {executionID} -> executionID) (\s@JobPostLaunchActionsLaunchStatus' {} a -> s {executionID = a} :: JobPostLaunchActionsLaunchStatus)++-- | AWS Systems Manager Document\'s execution status.+jobPostLaunchActionsLaunchStatus_executionStatus :: Lens.Lens' JobPostLaunchActionsLaunchStatus (Prelude.Maybe PostLaunchActionExecutionStatus)+jobPostLaunchActionsLaunchStatus_executionStatus = Lens.lens (\JobPostLaunchActionsLaunchStatus' {executionStatus} -> executionStatus) (\s@JobPostLaunchActionsLaunchStatus' {} a -> s {executionStatus = a} :: JobPostLaunchActionsLaunchStatus)++-- | AWS Systems Manager Document\'s failure reason.+jobPostLaunchActionsLaunchStatus_failureReason :: Lens.Lens' JobPostLaunchActionsLaunchStatus (Prelude.Maybe Prelude.Text)+jobPostLaunchActionsLaunchStatus_failureReason = Lens.lens (\JobPostLaunchActionsLaunchStatus' {failureReason} -> failureReason) (\s@JobPostLaunchActionsLaunchStatus' {} a -> s {failureReason = a} :: JobPostLaunchActionsLaunchStatus)++-- | AWS Systems Manager\'s Document of the of the Job Post Launch Actions.+jobPostLaunchActionsLaunchStatus_ssmDocument :: Lens.Lens' JobPostLaunchActionsLaunchStatus (Prelude.Maybe SsmDocument)+jobPostLaunchActionsLaunchStatus_ssmDocument = Lens.lens (\JobPostLaunchActionsLaunchStatus' {ssmDocument} -> ssmDocument) (\s@JobPostLaunchActionsLaunchStatus' {} a -> s {ssmDocument = a} :: JobPostLaunchActionsLaunchStatus)++-- | AWS Systems Manager Document type.+jobPostLaunchActionsLaunchStatus_ssmDocumentType :: Lens.Lens' JobPostLaunchActionsLaunchStatus (Prelude.Maybe SsmDocumentType)+jobPostLaunchActionsLaunchStatus_ssmDocumentType = Lens.lens (\JobPostLaunchActionsLaunchStatus' {ssmDocumentType} -> ssmDocumentType) (\s@JobPostLaunchActionsLaunchStatus' {} a -> s {ssmDocumentType = a} :: JobPostLaunchActionsLaunchStatus)++instance+ Data.FromJSON+ JobPostLaunchActionsLaunchStatus+ where+ parseJSON =+ Data.withObject+ "JobPostLaunchActionsLaunchStatus"+ ( \x ->+ JobPostLaunchActionsLaunchStatus'+ Prelude.<$> (x Data..:? "executionID")+ Prelude.<*> (x Data..:? "executionStatus")+ Prelude.<*> (x Data..:? "failureReason")+ Prelude.<*> (x Data..:? "ssmDocument")+ Prelude.<*> (x Data..:? "ssmDocumentType")+ )++instance+ Prelude.Hashable+ JobPostLaunchActionsLaunchStatus+ where+ hashWithSalt+ _salt+ JobPostLaunchActionsLaunchStatus' {..} =+ _salt+ `Prelude.hashWithSalt` executionID+ `Prelude.hashWithSalt` executionStatus+ `Prelude.hashWithSalt` failureReason+ `Prelude.hashWithSalt` ssmDocument+ `Prelude.hashWithSalt` ssmDocumentType++instance+ Prelude.NFData+ JobPostLaunchActionsLaunchStatus+ where+ rnf JobPostLaunchActionsLaunchStatus' {..} =+ Prelude.rnf executionID+ `Prelude.seq` Prelude.rnf executionStatus+ `Prelude.seq` Prelude.rnf failureReason+ `Prelude.seq` Prelude.rnf ssmDocument+ `Prelude.seq` Prelude.rnf ssmDocumentType
+ gen/Amazonka/MGN/Types/JobStatus.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.MGN.Types.JobStatus+-- 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.MGN.Types.JobStatus+ ( JobStatus+ ( ..,+ JobStatus_COMPLETED,+ JobStatus_PENDING,+ JobStatus_STARTED+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype JobStatus = JobStatus'+ { fromJobStatus ::+ 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 JobStatus_COMPLETED :: JobStatus+pattern JobStatus_COMPLETED = JobStatus' "COMPLETED"++pattern JobStatus_PENDING :: JobStatus+pattern JobStatus_PENDING = JobStatus' "PENDING"++pattern JobStatus_STARTED :: JobStatus+pattern JobStatus_STARTED = JobStatus' "STARTED"++{-# COMPLETE+ JobStatus_COMPLETED,+ JobStatus_PENDING,+ JobStatus_STARTED,+ JobStatus'+ #-}
+ gen/Amazonka/MGN/Types/JobType.hs view
@@ -0,0 +1,68 @@+{-# 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.MGN.Types.JobType+-- 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.MGN.Types.JobType+ ( JobType+ ( ..,+ JobType_LAUNCH,+ JobType_TERMINATE+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype JobType = JobType' {fromJobType :: 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 JobType_LAUNCH :: JobType+pattern JobType_LAUNCH = JobType' "LAUNCH"++pattern JobType_TERMINATE :: JobType+pattern JobType_TERMINATE = JobType' "TERMINATE"++{-# COMPLETE+ JobType_LAUNCH,+ JobType_TERMINATE,+ JobType'+ #-}
+ gen/Amazonka/MGN/Types/LaunchConfiguration.hs view
@@ -0,0 +1,208 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MGN.Types.LaunchConfiguration+-- 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.MGN.Types.LaunchConfiguration where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types.BootMode+import Amazonka.MGN.Types.LaunchDisposition+import Amazonka.MGN.Types.Licensing+import Amazonka.MGN.Types.PostLaunchActions+import Amazonka.MGN.Types.TargetInstanceTypeRightSizingMethod+import qualified Amazonka.Prelude as Prelude++-- | /See:/ 'newLaunchConfiguration' smart constructor.+data LaunchConfiguration = LaunchConfiguration'+ { -- | Launch configuration boot mode.+ bootMode :: Prelude.Maybe BootMode,+ -- | Copy Private IP during Launch Configuration.+ copyPrivateIp :: Prelude.Maybe Prelude.Bool,+ -- | Copy Tags during Launch Configuration.+ copyTags :: Prelude.Maybe Prelude.Bool,+ -- | Launch configuration EC2 Launch template ID.+ ec2LaunchTemplateID :: Prelude.Maybe Prelude.Text,+ -- | Enable map auto tagging.+ enableMapAutoTagging :: Prelude.Maybe Prelude.Bool,+ -- | Launch disposition for launch configuration.+ launchDisposition :: Prelude.Maybe LaunchDisposition,+ -- | Launch configuration OS licensing.+ licensing :: Prelude.Maybe Licensing,+ -- | Map auto tagging MPE ID.+ mapAutoTaggingMpeID :: Prelude.Maybe Prelude.Text,+ -- | Launch configuration name.+ name :: Prelude.Maybe Prelude.Text,+ postLaunchActions :: Prelude.Maybe PostLaunchActions,+ -- | Launch configuration Source Server ID.+ sourceServerID :: Prelude.Maybe Prelude.Text,+ -- | Launch configuration Target instance type right sizing method.+ targetInstanceTypeRightSizingMethod :: Prelude.Maybe TargetInstanceTypeRightSizingMethod+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'LaunchConfiguration' 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:+--+-- 'bootMode', 'launchConfiguration_bootMode' - Launch configuration boot mode.+--+-- 'copyPrivateIp', 'launchConfiguration_copyPrivateIp' - Copy Private IP during Launch Configuration.+--+-- 'copyTags', 'launchConfiguration_copyTags' - Copy Tags during Launch Configuration.+--+-- 'ec2LaunchTemplateID', 'launchConfiguration_ec2LaunchTemplateID' - Launch configuration EC2 Launch template ID.+--+-- 'enableMapAutoTagging', 'launchConfiguration_enableMapAutoTagging' - Enable map auto tagging.+--+-- 'launchDisposition', 'launchConfiguration_launchDisposition' - Launch disposition for launch configuration.+--+-- 'licensing', 'launchConfiguration_licensing' - Launch configuration OS licensing.+--+-- 'mapAutoTaggingMpeID', 'launchConfiguration_mapAutoTaggingMpeID' - Map auto tagging MPE ID.+--+-- 'name', 'launchConfiguration_name' - Launch configuration name.+--+-- 'postLaunchActions', 'launchConfiguration_postLaunchActions' - Undocumented member.+--+-- 'sourceServerID', 'launchConfiguration_sourceServerID' - Launch configuration Source Server ID.+--+-- 'targetInstanceTypeRightSizingMethod', 'launchConfiguration_targetInstanceTypeRightSizingMethod' - Launch configuration Target instance type right sizing method.+newLaunchConfiguration ::+ LaunchConfiguration+newLaunchConfiguration =+ LaunchConfiguration'+ { bootMode = Prelude.Nothing,+ copyPrivateIp = Prelude.Nothing,+ copyTags = Prelude.Nothing,+ ec2LaunchTemplateID = Prelude.Nothing,+ enableMapAutoTagging = Prelude.Nothing,+ launchDisposition = Prelude.Nothing,+ licensing = Prelude.Nothing,+ mapAutoTaggingMpeID = Prelude.Nothing,+ name = Prelude.Nothing,+ postLaunchActions = Prelude.Nothing,+ sourceServerID = Prelude.Nothing,+ targetInstanceTypeRightSizingMethod =+ Prelude.Nothing+ }++-- | Launch configuration boot mode.+launchConfiguration_bootMode :: Lens.Lens' LaunchConfiguration (Prelude.Maybe BootMode)+launchConfiguration_bootMode = Lens.lens (\LaunchConfiguration' {bootMode} -> bootMode) (\s@LaunchConfiguration' {} a -> s {bootMode = a} :: LaunchConfiguration)++-- | Copy Private IP during Launch Configuration.+launchConfiguration_copyPrivateIp :: Lens.Lens' LaunchConfiguration (Prelude.Maybe Prelude.Bool)+launchConfiguration_copyPrivateIp = Lens.lens (\LaunchConfiguration' {copyPrivateIp} -> copyPrivateIp) (\s@LaunchConfiguration' {} a -> s {copyPrivateIp = a} :: LaunchConfiguration)++-- | Copy Tags during Launch Configuration.+launchConfiguration_copyTags :: Lens.Lens' LaunchConfiguration (Prelude.Maybe Prelude.Bool)+launchConfiguration_copyTags = Lens.lens (\LaunchConfiguration' {copyTags} -> copyTags) (\s@LaunchConfiguration' {} a -> s {copyTags = a} :: LaunchConfiguration)++-- | Launch configuration EC2 Launch template ID.+launchConfiguration_ec2LaunchTemplateID :: Lens.Lens' LaunchConfiguration (Prelude.Maybe Prelude.Text)+launchConfiguration_ec2LaunchTemplateID = Lens.lens (\LaunchConfiguration' {ec2LaunchTemplateID} -> ec2LaunchTemplateID) (\s@LaunchConfiguration' {} a -> s {ec2LaunchTemplateID = a} :: LaunchConfiguration)++-- | Enable map auto tagging.+launchConfiguration_enableMapAutoTagging :: Lens.Lens' LaunchConfiguration (Prelude.Maybe Prelude.Bool)+launchConfiguration_enableMapAutoTagging = Lens.lens (\LaunchConfiguration' {enableMapAutoTagging} -> enableMapAutoTagging) (\s@LaunchConfiguration' {} a -> s {enableMapAutoTagging = a} :: LaunchConfiguration)++-- | Launch disposition for launch configuration.+launchConfiguration_launchDisposition :: Lens.Lens' LaunchConfiguration (Prelude.Maybe LaunchDisposition)+launchConfiguration_launchDisposition = Lens.lens (\LaunchConfiguration' {launchDisposition} -> launchDisposition) (\s@LaunchConfiguration' {} a -> s {launchDisposition = a} :: LaunchConfiguration)++-- | Launch configuration OS licensing.+launchConfiguration_licensing :: Lens.Lens' LaunchConfiguration (Prelude.Maybe Licensing)+launchConfiguration_licensing = Lens.lens (\LaunchConfiguration' {licensing} -> licensing) (\s@LaunchConfiguration' {} a -> s {licensing = a} :: LaunchConfiguration)++-- | Map auto tagging MPE ID.+launchConfiguration_mapAutoTaggingMpeID :: Lens.Lens' LaunchConfiguration (Prelude.Maybe Prelude.Text)+launchConfiguration_mapAutoTaggingMpeID = Lens.lens (\LaunchConfiguration' {mapAutoTaggingMpeID} -> mapAutoTaggingMpeID) (\s@LaunchConfiguration' {} a -> s {mapAutoTaggingMpeID = a} :: LaunchConfiguration)++-- | Launch configuration name.+launchConfiguration_name :: Lens.Lens' LaunchConfiguration (Prelude.Maybe Prelude.Text)+launchConfiguration_name = Lens.lens (\LaunchConfiguration' {name} -> name) (\s@LaunchConfiguration' {} a -> s {name = a} :: LaunchConfiguration)++-- | Undocumented member.+launchConfiguration_postLaunchActions :: Lens.Lens' LaunchConfiguration (Prelude.Maybe PostLaunchActions)+launchConfiguration_postLaunchActions = Lens.lens (\LaunchConfiguration' {postLaunchActions} -> postLaunchActions) (\s@LaunchConfiguration' {} a -> s {postLaunchActions = a} :: LaunchConfiguration)++-- | Launch configuration Source Server ID.+launchConfiguration_sourceServerID :: Lens.Lens' LaunchConfiguration (Prelude.Maybe Prelude.Text)+launchConfiguration_sourceServerID = Lens.lens (\LaunchConfiguration' {sourceServerID} -> sourceServerID) (\s@LaunchConfiguration' {} a -> s {sourceServerID = a} :: LaunchConfiguration)++-- | Launch configuration Target instance type right sizing method.+launchConfiguration_targetInstanceTypeRightSizingMethod :: Lens.Lens' LaunchConfiguration (Prelude.Maybe TargetInstanceTypeRightSizingMethod)+launchConfiguration_targetInstanceTypeRightSizingMethod = Lens.lens (\LaunchConfiguration' {targetInstanceTypeRightSizingMethod} -> targetInstanceTypeRightSizingMethod) (\s@LaunchConfiguration' {} a -> s {targetInstanceTypeRightSizingMethod = a} :: LaunchConfiguration)++instance Data.FromJSON LaunchConfiguration where+ parseJSON =+ Data.withObject+ "LaunchConfiguration"+ ( \x ->+ LaunchConfiguration'+ Prelude.<$> (x Data..:? "bootMode")+ Prelude.<*> (x Data..:? "copyPrivateIp")+ Prelude.<*> (x Data..:? "copyTags")+ Prelude.<*> (x Data..:? "ec2LaunchTemplateID")+ Prelude.<*> (x Data..:? "enableMapAutoTagging")+ Prelude.<*> (x Data..:? "launchDisposition")+ Prelude.<*> (x Data..:? "licensing")+ Prelude.<*> (x Data..:? "mapAutoTaggingMpeID")+ Prelude.<*> (x Data..:? "name")+ Prelude.<*> (x Data..:? "postLaunchActions")+ Prelude.<*> (x Data..:? "sourceServerID")+ Prelude.<*> (x Data..:? "targetInstanceTypeRightSizingMethod")+ )++instance Prelude.Hashable LaunchConfiguration where+ hashWithSalt _salt LaunchConfiguration' {..} =+ _salt+ `Prelude.hashWithSalt` bootMode+ `Prelude.hashWithSalt` copyPrivateIp+ `Prelude.hashWithSalt` copyTags+ `Prelude.hashWithSalt` ec2LaunchTemplateID+ `Prelude.hashWithSalt` enableMapAutoTagging+ `Prelude.hashWithSalt` launchDisposition+ `Prelude.hashWithSalt` licensing+ `Prelude.hashWithSalt` mapAutoTaggingMpeID+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` postLaunchActions+ `Prelude.hashWithSalt` sourceServerID+ `Prelude.hashWithSalt` targetInstanceTypeRightSizingMethod++instance Prelude.NFData LaunchConfiguration where+ rnf LaunchConfiguration' {..} =+ Prelude.rnf bootMode+ `Prelude.seq` Prelude.rnf copyPrivateIp+ `Prelude.seq` Prelude.rnf copyTags+ `Prelude.seq` Prelude.rnf ec2LaunchTemplateID+ `Prelude.seq` Prelude.rnf enableMapAutoTagging+ `Prelude.seq` Prelude.rnf launchDisposition+ `Prelude.seq` Prelude.rnf licensing+ `Prelude.seq` Prelude.rnf mapAutoTaggingMpeID+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf postLaunchActions+ `Prelude.seq` Prelude.rnf sourceServerID+ `Prelude.seq` Prelude.rnf+ targetInstanceTypeRightSizingMethod
+ gen/Amazonka/MGN/Types/LaunchConfigurationTemplate.hs view
@@ -0,0 +1,274 @@+{-# 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.MGN.Types.LaunchConfigurationTemplate+-- 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.MGN.Types.LaunchConfigurationTemplate where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types.BootMode+import Amazonka.MGN.Types.LaunchDisposition+import Amazonka.MGN.Types.LaunchTemplateDiskConf+import Amazonka.MGN.Types.Licensing+import Amazonka.MGN.Types.PostLaunchActions+import Amazonka.MGN.Types.TargetInstanceTypeRightSizingMethod+import qualified Amazonka.Prelude as Prelude++-- | /See:/ 'newLaunchConfigurationTemplate' smart constructor.+data LaunchConfigurationTemplate = LaunchConfigurationTemplate'+ { -- | ARN of the Launch Configuration Template.+ arn :: Prelude.Maybe Prelude.Text,+ -- | Associate public Ip address.+ associatePublicIpAddress :: Prelude.Maybe Prelude.Bool,+ -- | Launch configuration template boot mode.+ bootMode :: Prelude.Maybe BootMode,+ -- | Copy private Ip.+ copyPrivateIp :: Prelude.Maybe Prelude.Bool,+ -- | Copy tags.+ copyTags :: Prelude.Maybe Prelude.Bool,+ -- | EC2 launch template ID.+ ec2LaunchTemplateID :: Prelude.Maybe Prelude.Text,+ -- | Enable map auto tagging.+ enableMapAutoTagging :: Prelude.Maybe Prelude.Bool,+ -- | Large volume config.+ largeVolumeConf :: Prelude.Maybe LaunchTemplateDiskConf,+ -- | Launch disposition.+ launchDisposition :: Prelude.Maybe LaunchDisposition,+ licensing :: Prelude.Maybe Licensing,+ -- | Launch configuration template map auto tagging MPE ID.+ mapAutoTaggingMpeID :: Prelude.Maybe Prelude.Text,+ -- | Post Launch Actions of the Launch Configuration Template.+ postLaunchActions :: Prelude.Maybe PostLaunchActions,+ -- | Small volume config.+ smallVolumeConf :: Prelude.Maybe LaunchTemplateDiskConf,+ -- | Small volume maximum size.+ smallVolumeMaxSize :: Prelude.Maybe Prelude.Natural,+ -- | Tags of the Launch Configuration Template.+ tags :: Prelude.Maybe (Data.Sensitive (Prelude.HashMap Prelude.Text Prelude.Text)),+ -- | Target instance type right-sizing method.+ targetInstanceTypeRightSizingMethod :: Prelude.Maybe TargetInstanceTypeRightSizingMethod,+ -- | ID of the Launch Configuration Template.+ launchConfigurationTemplateID :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'LaunchConfigurationTemplate' 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', 'launchConfigurationTemplate_arn' - ARN of the Launch Configuration Template.+--+-- 'associatePublicIpAddress', 'launchConfigurationTemplate_associatePublicIpAddress' - Associate public Ip address.+--+-- 'bootMode', 'launchConfigurationTemplate_bootMode' - Launch configuration template boot mode.+--+-- 'copyPrivateIp', 'launchConfigurationTemplate_copyPrivateIp' - Copy private Ip.+--+-- 'copyTags', 'launchConfigurationTemplate_copyTags' - Copy tags.+--+-- 'ec2LaunchTemplateID', 'launchConfigurationTemplate_ec2LaunchTemplateID' - EC2 launch template ID.+--+-- 'enableMapAutoTagging', 'launchConfigurationTemplate_enableMapAutoTagging' - Enable map auto tagging.+--+-- 'largeVolumeConf', 'launchConfigurationTemplate_largeVolumeConf' - Large volume config.+--+-- 'launchDisposition', 'launchConfigurationTemplate_launchDisposition' - Launch disposition.+--+-- 'licensing', 'launchConfigurationTemplate_licensing' - Undocumented member.+--+-- 'mapAutoTaggingMpeID', 'launchConfigurationTemplate_mapAutoTaggingMpeID' - Launch configuration template map auto tagging MPE ID.+--+-- 'postLaunchActions', 'launchConfigurationTemplate_postLaunchActions' - Post Launch Actions of the Launch Configuration Template.+--+-- 'smallVolumeConf', 'launchConfigurationTemplate_smallVolumeConf' - Small volume config.+--+-- 'smallVolumeMaxSize', 'launchConfigurationTemplate_smallVolumeMaxSize' - Small volume maximum size.+--+-- 'tags', 'launchConfigurationTemplate_tags' - Tags of the Launch Configuration Template.+--+-- 'targetInstanceTypeRightSizingMethod', 'launchConfigurationTemplate_targetInstanceTypeRightSizingMethod' - Target instance type right-sizing method.+--+-- 'launchConfigurationTemplateID', 'launchConfigurationTemplate_launchConfigurationTemplateID' - ID of the Launch Configuration Template.+newLaunchConfigurationTemplate ::+ -- | 'launchConfigurationTemplateID'+ Prelude.Text ->+ LaunchConfigurationTemplate+newLaunchConfigurationTemplate+ pLaunchConfigurationTemplateID_ =+ LaunchConfigurationTemplate'+ { arn = Prelude.Nothing,+ associatePublicIpAddress = Prelude.Nothing,+ bootMode = Prelude.Nothing,+ copyPrivateIp = Prelude.Nothing,+ copyTags = Prelude.Nothing,+ ec2LaunchTemplateID = Prelude.Nothing,+ enableMapAutoTagging = Prelude.Nothing,+ largeVolumeConf = Prelude.Nothing,+ launchDisposition = Prelude.Nothing,+ licensing = Prelude.Nothing,+ mapAutoTaggingMpeID = Prelude.Nothing,+ postLaunchActions = Prelude.Nothing,+ smallVolumeConf = Prelude.Nothing,+ smallVolumeMaxSize = Prelude.Nothing,+ tags = Prelude.Nothing,+ targetInstanceTypeRightSizingMethod =+ Prelude.Nothing,+ launchConfigurationTemplateID =+ pLaunchConfigurationTemplateID_+ }++-- | ARN of the Launch Configuration Template.+launchConfigurationTemplate_arn :: Lens.Lens' LaunchConfigurationTemplate (Prelude.Maybe Prelude.Text)+launchConfigurationTemplate_arn = Lens.lens (\LaunchConfigurationTemplate' {arn} -> arn) (\s@LaunchConfigurationTemplate' {} a -> s {arn = a} :: LaunchConfigurationTemplate)++-- | Associate public Ip address.+launchConfigurationTemplate_associatePublicIpAddress :: Lens.Lens' LaunchConfigurationTemplate (Prelude.Maybe Prelude.Bool)+launchConfigurationTemplate_associatePublicIpAddress = Lens.lens (\LaunchConfigurationTemplate' {associatePublicIpAddress} -> associatePublicIpAddress) (\s@LaunchConfigurationTemplate' {} a -> s {associatePublicIpAddress = a} :: LaunchConfigurationTemplate)++-- | Launch configuration template boot mode.+launchConfigurationTemplate_bootMode :: Lens.Lens' LaunchConfigurationTemplate (Prelude.Maybe BootMode)+launchConfigurationTemplate_bootMode = Lens.lens (\LaunchConfigurationTemplate' {bootMode} -> bootMode) (\s@LaunchConfigurationTemplate' {} a -> s {bootMode = a} :: LaunchConfigurationTemplate)++-- | Copy private Ip.+launchConfigurationTemplate_copyPrivateIp :: Lens.Lens' LaunchConfigurationTemplate (Prelude.Maybe Prelude.Bool)+launchConfigurationTemplate_copyPrivateIp = Lens.lens (\LaunchConfigurationTemplate' {copyPrivateIp} -> copyPrivateIp) (\s@LaunchConfigurationTemplate' {} a -> s {copyPrivateIp = a} :: LaunchConfigurationTemplate)++-- | Copy tags.+launchConfigurationTemplate_copyTags :: Lens.Lens' LaunchConfigurationTemplate (Prelude.Maybe Prelude.Bool)+launchConfigurationTemplate_copyTags = Lens.lens (\LaunchConfigurationTemplate' {copyTags} -> copyTags) (\s@LaunchConfigurationTemplate' {} a -> s {copyTags = a} :: LaunchConfigurationTemplate)++-- | EC2 launch template ID.+launchConfigurationTemplate_ec2LaunchTemplateID :: Lens.Lens' LaunchConfigurationTemplate (Prelude.Maybe Prelude.Text)+launchConfigurationTemplate_ec2LaunchTemplateID = Lens.lens (\LaunchConfigurationTemplate' {ec2LaunchTemplateID} -> ec2LaunchTemplateID) (\s@LaunchConfigurationTemplate' {} a -> s {ec2LaunchTemplateID = a} :: LaunchConfigurationTemplate)++-- | Enable map auto tagging.+launchConfigurationTemplate_enableMapAutoTagging :: Lens.Lens' LaunchConfigurationTemplate (Prelude.Maybe Prelude.Bool)+launchConfigurationTemplate_enableMapAutoTagging = Lens.lens (\LaunchConfigurationTemplate' {enableMapAutoTagging} -> enableMapAutoTagging) (\s@LaunchConfigurationTemplate' {} a -> s {enableMapAutoTagging = a} :: LaunchConfigurationTemplate)++-- | Large volume config.+launchConfigurationTemplate_largeVolumeConf :: Lens.Lens' LaunchConfigurationTemplate (Prelude.Maybe LaunchTemplateDiskConf)+launchConfigurationTemplate_largeVolumeConf = Lens.lens (\LaunchConfigurationTemplate' {largeVolumeConf} -> largeVolumeConf) (\s@LaunchConfigurationTemplate' {} a -> s {largeVolumeConf = a} :: LaunchConfigurationTemplate)++-- | Launch disposition.+launchConfigurationTemplate_launchDisposition :: Lens.Lens' LaunchConfigurationTemplate (Prelude.Maybe LaunchDisposition)+launchConfigurationTemplate_launchDisposition = Lens.lens (\LaunchConfigurationTemplate' {launchDisposition} -> launchDisposition) (\s@LaunchConfigurationTemplate' {} a -> s {launchDisposition = a} :: LaunchConfigurationTemplate)++-- | Undocumented member.+launchConfigurationTemplate_licensing :: Lens.Lens' LaunchConfigurationTemplate (Prelude.Maybe Licensing)+launchConfigurationTemplate_licensing = Lens.lens (\LaunchConfigurationTemplate' {licensing} -> licensing) (\s@LaunchConfigurationTemplate' {} a -> s {licensing = a} :: LaunchConfigurationTemplate)++-- | Launch configuration template map auto tagging MPE ID.+launchConfigurationTemplate_mapAutoTaggingMpeID :: Lens.Lens' LaunchConfigurationTemplate (Prelude.Maybe Prelude.Text)+launchConfigurationTemplate_mapAutoTaggingMpeID = Lens.lens (\LaunchConfigurationTemplate' {mapAutoTaggingMpeID} -> mapAutoTaggingMpeID) (\s@LaunchConfigurationTemplate' {} a -> s {mapAutoTaggingMpeID = a} :: LaunchConfigurationTemplate)++-- | Post Launch Actions of the Launch Configuration Template.+launchConfigurationTemplate_postLaunchActions :: Lens.Lens' LaunchConfigurationTemplate (Prelude.Maybe PostLaunchActions)+launchConfigurationTemplate_postLaunchActions = Lens.lens (\LaunchConfigurationTemplate' {postLaunchActions} -> postLaunchActions) (\s@LaunchConfigurationTemplate' {} a -> s {postLaunchActions = a} :: LaunchConfigurationTemplate)++-- | Small volume config.+launchConfigurationTemplate_smallVolumeConf :: Lens.Lens' LaunchConfigurationTemplate (Prelude.Maybe LaunchTemplateDiskConf)+launchConfigurationTemplate_smallVolumeConf = Lens.lens (\LaunchConfigurationTemplate' {smallVolumeConf} -> smallVolumeConf) (\s@LaunchConfigurationTemplate' {} a -> s {smallVolumeConf = a} :: LaunchConfigurationTemplate)++-- | Small volume maximum size.+launchConfigurationTemplate_smallVolumeMaxSize :: Lens.Lens' LaunchConfigurationTemplate (Prelude.Maybe Prelude.Natural)+launchConfigurationTemplate_smallVolumeMaxSize = Lens.lens (\LaunchConfigurationTemplate' {smallVolumeMaxSize} -> smallVolumeMaxSize) (\s@LaunchConfigurationTemplate' {} a -> s {smallVolumeMaxSize = a} :: LaunchConfigurationTemplate)++-- | Tags of the Launch Configuration Template.+launchConfigurationTemplate_tags :: Lens.Lens' LaunchConfigurationTemplate (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+launchConfigurationTemplate_tags = Lens.lens (\LaunchConfigurationTemplate' {tags} -> tags) (\s@LaunchConfigurationTemplate' {} a -> s {tags = a} :: LaunchConfigurationTemplate) Prelude.. Lens.mapping (Data._Sensitive Prelude.. Lens.coerced)++-- | Target instance type right-sizing method.+launchConfigurationTemplate_targetInstanceTypeRightSizingMethod :: Lens.Lens' LaunchConfigurationTemplate (Prelude.Maybe TargetInstanceTypeRightSizingMethod)+launchConfigurationTemplate_targetInstanceTypeRightSizingMethod = Lens.lens (\LaunchConfigurationTemplate' {targetInstanceTypeRightSizingMethod} -> targetInstanceTypeRightSizingMethod) (\s@LaunchConfigurationTemplate' {} a -> s {targetInstanceTypeRightSizingMethod = a} :: LaunchConfigurationTemplate)++-- | ID of the Launch Configuration Template.+launchConfigurationTemplate_launchConfigurationTemplateID :: Lens.Lens' LaunchConfigurationTemplate Prelude.Text+launchConfigurationTemplate_launchConfigurationTemplateID = Lens.lens (\LaunchConfigurationTemplate' {launchConfigurationTemplateID} -> launchConfigurationTemplateID) (\s@LaunchConfigurationTemplate' {} a -> s {launchConfigurationTemplateID = a} :: LaunchConfigurationTemplate)++instance Data.FromJSON LaunchConfigurationTemplate where+ parseJSON =+ Data.withObject+ "LaunchConfigurationTemplate"+ ( \x ->+ LaunchConfigurationTemplate'+ Prelude.<$> (x Data..:? "arn")+ Prelude.<*> (x Data..:? "associatePublicIpAddress")+ Prelude.<*> (x Data..:? "bootMode")+ Prelude.<*> (x Data..:? "copyPrivateIp")+ Prelude.<*> (x Data..:? "copyTags")+ Prelude.<*> (x Data..:? "ec2LaunchTemplateID")+ Prelude.<*> (x Data..:? "enableMapAutoTagging")+ Prelude.<*> (x Data..:? "largeVolumeConf")+ Prelude.<*> (x Data..:? "launchDisposition")+ Prelude.<*> (x Data..:? "licensing")+ Prelude.<*> (x Data..:? "mapAutoTaggingMpeID")+ Prelude.<*> (x Data..:? "postLaunchActions")+ Prelude.<*> (x Data..:? "smallVolumeConf")+ Prelude.<*> (x Data..:? "smallVolumeMaxSize")+ Prelude.<*> (x Data..:? "tags" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "targetInstanceTypeRightSizingMethod")+ Prelude.<*> (x Data..: "launchConfigurationTemplateID")+ )++instance Prelude.Hashable LaunchConfigurationTemplate where+ hashWithSalt _salt LaunchConfigurationTemplate' {..} =+ _salt+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` associatePublicIpAddress+ `Prelude.hashWithSalt` bootMode+ `Prelude.hashWithSalt` copyPrivateIp+ `Prelude.hashWithSalt` copyTags+ `Prelude.hashWithSalt` ec2LaunchTemplateID+ `Prelude.hashWithSalt` enableMapAutoTagging+ `Prelude.hashWithSalt` largeVolumeConf+ `Prelude.hashWithSalt` launchDisposition+ `Prelude.hashWithSalt` licensing+ `Prelude.hashWithSalt` mapAutoTaggingMpeID+ `Prelude.hashWithSalt` postLaunchActions+ `Prelude.hashWithSalt` smallVolumeConf+ `Prelude.hashWithSalt` smallVolumeMaxSize+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` targetInstanceTypeRightSizingMethod+ `Prelude.hashWithSalt` launchConfigurationTemplateID++instance Prelude.NFData LaunchConfigurationTemplate where+ rnf LaunchConfigurationTemplate' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf associatePublicIpAddress+ `Prelude.seq` Prelude.rnf bootMode+ `Prelude.seq` Prelude.rnf copyPrivateIp+ `Prelude.seq` Prelude.rnf copyTags+ `Prelude.seq` Prelude.rnf ec2LaunchTemplateID+ `Prelude.seq` Prelude.rnf enableMapAutoTagging+ `Prelude.seq` Prelude.rnf largeVolumeConf+ `Prelude.seq` Prelude.rnf launchDisposition+ `Prelude.seq` Prelude.rnf licensing+ `Prelude.seq` Prelude.rnf mapAutoTaggingMpeID+ `Prelude.seq` Prelude.rnf postLaunchActions+ `Prelude.seq` Prelude.rnf smallVolumeConf+ `Prelude.seq` Prelude.rnf smallVolumeMaxSize+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf+ targetInstanceTypeRightSizingMethod+ `Prelude.seq` Prelude.rnf+ launchConfigurationTemplateID
+ gen/Amazonka/MGN/Types/LaunchDisposition.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.MGN.Types.LaunchDisposition+-- 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.MGN.Types.LaunchDisposition+ ( LaunchDisposition+ ( ..,+ LaunchDisposition_STARTED,+ LaunchDisposition_STOPPED+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype LaunchDisposition = LaunchDisposition'+ { fromLaunchDisposition ::+ 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 LaunchDisposition_STARTED :: LaunchDisposition+pattern LaunchDisposition_STARTED = LaunchDisposition' "STARTED"++pattern LaunchDisposition_STOPPED :: LaunchDisposition+pattern LaunchDisposition_STOPPED = LaunchDisposition' "STOPPED"++{-# COMPLETE+ LaunchDisposition_STARTED,+ LaunchDisposition_STOPPED,+ LaunchDisposition'+ #-}
+ gen/Amazonka/MGN/Types/LaunchStatus.hs view
@@ -0,0 +1,86 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.MGN.Types.LaunchStatus+-- 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.MGN.Types.LaunchStatus+ ( LaunchStatus+ ( ..,+ LaunchStatus_FAILED,+ LaunchStatus_IN_PROGRESS,+ LaunchStatus_LAUNCHED,+ LaunchStatus_PENDING,+ LaunchStatus_TERMINATED+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype LaunchStatus = LaunchStatus'+ { fromLaunchStatus ::+ 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 LaunchStatus_FAILED :: LaunchStatus+pattern LaunchStatus_FAILED = LaunchStatus' "FAILED"++pattern LaunchStatus_IN_PROGRESS :: LaunchStatus+pattern LaunchStatus_IN_PROGRESS = LaunchStatus' "IN_PROGRESS"++pattern LaunchStatus_LAUNCHED :: LaunchStatus+pattern LaunchStatus_LAUNCHED = LaunchStatus' "LAUNCHED"++pattern LaunchStatus_PENDING :: LaunchStatus+pattern LaunchStatus_PENDING = LaunchStatus' "PENDING"++pattern LaunchStatus_TERMINATED :: LaunchStatus+pattern LaunchStatus_TERMINATED = LaunchStatus' "TERMINATED"++{-# COMPLETE+ LaunchStatus_FAILED,+ LaunchStatus_IN_PROGRESS,+ LaunchStatus_LAUNCHED,+ LaunchStatus_PENDING,+ LaunchStatus_TERMINATED,+ LaunchStatus'+ #-}
+ gen/Amazonka/MGN/Types/LaunchTemplateDiskConf.hs view
@@ -0,0 +1,107 @@+{-# 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.MGN.Types.LaunchTemplateDiskConf+-- 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.MGN.Types.LaunchTemplateDiskConf where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types.VolumeType+import qualified Amazonka.Prelude as Prelude++-- | Launch template disk configuration.+--+-- /See:/ 'newLaunchTemplateDiskConf' smart constructor.+data LaunchTemplateDiskConf = LaunchTemplateDiskConf'+ { -- | Launch template disk iops configuration.+ iops :: Prelude.Maybe Prelude.Natural,+ -- | Launch template disk throughput configuration.+ throughput :: Prelude.Maybe Prelude.Natural,+ -- | Launch template disk volume type configuration.+ volumeType :: Prelude.Maybe VolumeType+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'LaunchTemplateDiskConf' 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:+--+-- 'iops', 'launchTemplateDiskConf_iops' - Launch template disk iops configuration.+--+-- 'throughput', 'launchTemplateDiskConf_throughput' - Launch template disk throughput configuration.+--+-- 'volumeType', 'launchTemplateDiskConf_volumeType' - Launch template disk volume type configuration.+newLaunchTemplateDiskConf ::+ LaunchTemplateDiskConf+newLaunchTemplateDiskConf =+ LaunchTemplateDiskConf'+ { iops = Prelude.Nothing,+ throughput = Prelude.Nothing,+ volumeType = Prelude.Nothing+ }++-- | Launch template disk iops configuration.+launchTemplateDiskConf_iops :: Lens.Lens' LaunchTemplateDiskConf (Prelude.Maybe Prelude.Natural)+launchTemplateDiskConf_iops = Lens.lens (\LaunchTemplateDiskConf' {iops} -> iops) (\s@LaunchTemplateDiskConf' {} a -> s {iops = a} :: LaunchTemplateDiskConf)++-- | Launch template disk throughput configuration.+launchTemplateDiskConf_throughput :: Lens.Lens' LaunchTemplateDiskConf (Prelude.Maybe Prelude.Natural)+launchTemplateDiskConf_throughput = Lens.lens (\LaunchTemplateDiskConf' {throughput} -> throughput) (\s@LaunchTemplateDiskConf' {} a -> s {throughput = a} :: LaunchTemplateDiskConf)++-- | Launch template disk volume type configuration.+launchTemplateDiskConf_volumeType :: Lens.Lens' LaunchTemplateDiskConf (Prelude.Maybe VolumeType)+launchTemplateDiskConf_volumeType = Lens.lens (\LaunchTemplateDiskConf' {volumeType} -> volumeType) (\s@LaunchTemplateDiskConf' {} a -> s {volumeType = a} :: LaunchTemplateDiskConf)++instance Data.FromJSON LaunchTemplateDiskConf where+ parseJSON =+ Data.withObject+ "LaunchTemplateDiskConf"+ ( \x ->+ LaunchTemplateDiskConf'+ Prelude.<$> (x Data..:? "iops")+ Prelude.<*> (x Data..:? "throughput")+ Prelude.<*> (x Data..:? "volumeType")+ )++instance Prelude.Hashable LaunchTemplateDiskConf where+ hashWithSalt _salt LaunchTemplateDiskConf' {..} =+ _salt+ `Prelude.hashWithSalt` iops+ `Prelude.hashWithSalt` throughput+ `Prelude.hashWithSalt` volumeType++instance Prelude.NFData LaunchTemplateDiskConf where+ rnf LaunchTemplateDiskConf' {..} =+ Prelude.rnf iops+ `Prelude.seq` Prelude.rnf throughput+ `Prelude.seq` Prelude.rnf volumeType++instance Data.ToJSON LaunchTemplateDiskConf where+ toJSON LaunchTemplateDiskConf' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("iops" Data..=) Prelude.<$> iops,+ ("throughput" Data..=) Prelude.<$> throughput,+ ("volumeType" Data..=) Prelude.<$> volumeType+ ]+ )
+ gen/Amazonka/MGN/Types/LaunchedInstance.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.MGN.Types.LaunchedInstance+-- 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.MGN.Types.LaunchedInstance where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types.FirstBoot+import qualified Amazonka.Prelude as Prelude++-- | Launched instance.+--+-- /See:/ 'newLaunchedInstance' smart constructor.+data LaunchedInstance = LaunchedInstance'+ { -- | Launched instance EC2 ID.+ ec2InstanceID :: Prelude.Maybe Prelude.Text,+ -- | Launched instance first boot.+ firstBoot :: Prelude.Maybe FirstBoot,+ -- | Launched instance Job ID.+ jobID :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'LaunchedInstance' 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:+--+-- 'ec2InstanceID', 'launchedInstance_ec2InstanceID' - Launched instance EC2 ID.+--+-- 'firstBoot', 'launchedInstance_firstBoot' - Launched instance first boot.+--+-- 'jobID', 'launchedInstance_jobID' - Launched instance Job ID.+newLaunchedInstance ::+ LaunchedInstance+newLaunchedInstance =+ LaunchedInstance'+ { ec2InstanceID = Prelude.Nothing,+ firstBoot = Prelude.Nothing,+ jobID = Prelude.Nothing+ }++-- | Launched instance EC2 ID.+launchedInstance_ec2InstanceID :: Lens.Lens' LaunchedInstance (Prelude.Maybe Prelude.Text)+launchedInstance_ec2InstanceID = Lens.lens (\LaunchedInstance' {ec2InstanceID} -> ec2InstanceID) (\s@LaunchedInstance' {} a -> s {ec2InstanceID = a} :: LaunchedInstance)++-- | Launched instance first boot.+launchedInstance_firstBoot :: Lens.Lens' LaunchedInstance (Prelude.Maybe FirstBoot)+launchedInstance_firstBoot = Lens.lens (\LaunchedInstance' {firstBoot} -> firstBoot) (\s@LaunchedInstance' {} a -> s {firstBoot = a} :: LaunchedInstance)++-- | Launched instance Job ID.+launchedInstance_jobID :: Lens.Lens' LaunchedInstance (Prelude.Maybe Prelude.Text)+launchedInstance_jobID = Lens.lens (\LaunchedInstance' {jobID} -> jobID) (\s@LaunchedInstance' {} a -> s {jobID = a} :: LaunchedInstance)++instance Data.FromJSON LaunchedInstance where+ parseJSON =+ Data.withObject+ "LaunchedInstance"+ ( \x ->+ LaunchedInstance'+ Prelude.<$> (x Data..:? "ec2InstanceID")+ Prelude.<*> (x Data..:? "firstBoot")+ Prelude.<*> (x Data..:? "jobID")+ )++instance Prelude.Hashable LaunchedInstance where+ hashWithSalt _salt LaunchedInstance' {..} =+ _salt+ `Prelude.hashWithSalt` ec2InstanceID+ `Prelude.hashWithSalt` firstBoot+ `Prelude.hashWithSalt` jobID++instance Prelude.NFData LaunchedInstance where+ rnf LaunchedInstance' {..} =+ Prelude.rnf ec2InstanceID+ `Prelude.seq` Prelude.rnf firstBoot+ `Prelude.seq` Prelude.rnf jobID
+ gen/Amazonka/MGN/Types/Licensing.hs view
@@ -0,0 +1,71 @@+{-# 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.MGN.Types.Licensing+-- 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.MGN.Types.Licensing 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++-- | Configure Licensing.+--+-- /See:/ 'newLicensing' smart constructor.+data Licensing = Licensing'+ { -- | Configure BYOL OS licensing.+ osByol :: Prelude.Maybe Prelude.Bool+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Licensing' 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:+--+-- 'osByol', 'licensing_osByol' - Configure BYOL OS licensing.+newLicensing ::+ Licensing+newLicensing = Licensing' {osByol = Prelude.Nothing}++-- | Configure BYOL OS licensing.+licensing_osByol :: Lens.Lens' Licensing (Prelude.Maybe Prelude.Bool)+licensing_osByol = Lens.lens (\Licensing' {osByol} -> osByol) (\s@Licensing' {} a -> s {osByol = a} :: Licensing)++instance Data.FromJSON Licensing where+ parseJSON =+ Data.withObject+ "Licensing"+ (\x -> Licensing' Prelude.<$> (x Data..:? "osByol"))++instance Prelude.Hashable Licensing where+ hashWithSalt _salt Licensing' {..} =+ _salt `Prelude.hashWithSalt` osByol++instance Prelude.NFData Licensing where+ rnf Licensing' {..} = Prelude.rnf osByol++instance Data.ToJSON Licensing where+ toJSON Licensing' {..} =+ Data.object+ ( Prelude.catMaybes+ [("osByol" Data..=) Prelude.<$> osByol]+ )
+ gen/Amazonka/MGN/Types/LifeCycle.hs view
@@ -0,0 +1,148 @@+{-# 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.MGN.Types.LifeCycle+-- 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.MGN.Types.LifeCycle where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types.LifeCycleLastCutover+import Amazonka.MGN.Types.LifeCycleLastTest+import Amazonka.MGN.Types.LifeCycleState+import qualified Amazonka.Prelude as Prelude++-- | Lifecycle.+--+-- /See:/ 'newLifeCycle' smart constructor.+data LifeCycle = LifeCycle'+ { -- | Lifecycle added to service data and time.+ addedToServiceDateTime :: Prelude.Maybe Prelude.Text,+ -- | Lifecycle elapsed time and duration.+ elapsedReplicationDuration :: Prelude.Maybe Prelude.Text,+ -- | Lifecycle replication initiation date and time.+ firstByteDateTime :: Prelude.Maybe Prelude.Text,+ -- | Lifecycle last Cutover.+ lastCutover :: Prelude.Maybe LifeCycleLastCutover,+ -- | Lifecycle last seen date and time.+ lastSeenByServiceDateTime :: Prelude.Maybe Prelude.Text,+ -- | Lifecycle last Test.+ lastTest :: Prelude.Maybe LifeCycleLastTest,+ -- | Lifecycle state.+ state :: Prelude.Maybe LifeCycleState+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'LifeCycle' 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:+--+-- 'addedToServiceDateTime', 'lifeCycle_addedToServiceDateTime' - Lifecycle added to service data and time.+--+-- 'elapsedReplicationDuration', 'lifeCycle_elapsedReplicationDuration' - Lifecycle elapsed time and duration.+--+-- 'firstByteDateTime', 'lifeCycle_firstByteDateTime' - Lifecycle replication initiation date and time.+--+-- 'lastCutover', 'lifeCycle_lastCutover' - Lifecycle last Cutover.+--+-- 'lastSeenByServiceDateTime', 'lifeCycle_lastSeenByServiceDateTime' - Lifecycle last seen date and time.+--+-- 'lastTest', 'lifeCycle_lastTest' - Lifecycle last Test.+--+-- 'state', 'lifeCycle_state' - Lifecycle state.+newLifeCycle ::+ LifeCycle+newLifeCycle =+ LifeCycle'+ { addedToServiceDateTime =+ Prelude.Nothing,+ elapsedReplicationDuration = Prelude.Nothing,+ firstByteDateTime = Prelude.Nothing,+ lastCutover = Prelude.Nothing,+ lastSeenByServiceDateTime = Prelude.Nothing,+ lastTest = Prelude.Nothing,+ state = Prelude.Nothing+ }++-- | Lifecycle added to service data and time.+lifeCycle_addedToServiceDateTime :: Lens.Lens' LifeCycle (Prelude.Maybe Prelude.Text)+lifeCycle_addedToServiceDateTime = Lens.lens (\LifeCycle' {addedToServiceDateTime} -> addedToServiceDateTime) (\s@LifeCycle' {} a -> s {addedToServiceDateTime = a} :: LifeCycle)++-- | Lifecycle elapsed time and duration.+lifeCycle_elapsedReplicationDuration :: Lens.Lens' LifeCycle (Prelude.Maybe Prelude.Text)+lifeCycle_elapsedReplicationDuration = Lens.lens (\LifeCycle' {elapsedReplicationDuration} -> elapsedReplicationDuration) (\s@LifeCycle' {} a -> s {elapsedReplicationDuration = a} :: LifeCycle)++-- | Lifecycle replication initiation date and time.+lifeCycle_firstByteDateTime :: Lens.Lens' LifeCycle (Prelude.Maybe Prelude.Text)+lifeCycle_firstByteDateTime = Lens.lens (\LifeCycle' {firstByteDateTime} -> firstByteDateTime) (\s@LifeCycle' {} a -> s {firstByteDateTime = a} :: LifeCycle)++-- | Lifecycle last Cutover.+lifeCycle_lastCutover :: Lens.Lens' LifeCycle (Prelude.Maybe LifeCycleLastCutover)+lifeCycle_lastCutover = Lens.lens (\LifeCycle' {lastCutover} -> lastCutover) (\s@LifeCycle' {} a -> s {lastCutover = a} :: LifeCycle)++-- | Lifecycle last seen date and time.+lifeCycle_lastSeenByServiceDateTime :: Lens.Lens' LifeCycle (Prelude.Maybe Prelude.Text)+lifeCycle_lastSeenByServiceDateTime = Lens.lens (\LifeCycle' {lastSeenByServiceDateTime} -> lastSeenByServiceDateTime) (\s@LifeCycle' {} a -> s {lastSeenByServiceDateTime = a} :: LifeCycle)++-- | Lifecycle last Test.+lifeCycle_lastTest :: Lens.Lens' LifeCycle (Prelude.Maybe LifeCycleLastTest)+lifeCycle_lastTest = Lens.lens (\LifeCycle' {lastTest} -> lastTest) (\s@LifeCycle' {} a -> s {lastTest = a} :: LifeCycle)++-- | Lifecycle state.+lifeCycle_state :: Lens.Lens' LifeCycle (Prelude.Maybe LifeCycleState)+lifeCycle_state = Lens.lens (\LifeCycle' {state} -> state) (\s@LifeCycle' {} a -> s {state = a} :: LifeCycle)++instance Data.FromJSON LifeCycle where+ parseJSON =+ Data.withObject+ "LifeCycle"+ ( \x ->+ LifeCycle'+ Prelude.<$> (x Data..:? "addedToServiceDateTime")+ Prelude.<*> (x Data..:? "elapsedReplicationDuration")+ Prelude.<*> (x Data..:? "firstByteDateTime")+ Prelude.<*> (x Data..:? "lastCutover")+ Prelude.<*> (x Data..:? "lastSeenByServiceDateTime")+ Prelude.<*> (x Data..:? "lastTest")+ Prelude.<*> (x Data..:? "state")+ )++instance Prelude.Hashable LifeCycle where+ hashWithSalt _salt LifeCycle' {..} =+ _salt+ `Prelude.hashWithSalt` addedToServiceDateTime+ `Prelude.hashWithSalt` elapsedReplicationDuration+ `Prelude.hashWithSalt` firstByteDateTime+ `Prelude.hashWithSalt` lastCutover+ `Prelude.hashWithSalt` lastSeenByServiceDateTime+ `Prelude.hashWithSalt` lastTest+ `Prelude.hashWithSalt` state++instance Prelude.NFData LifeCycle where+ rnf LifeCycle' {..} =+ Prelude.rnf addedToServiceDateTime+ `Prelude.seq` Prelude.rnf elapsedReplicationDuration+ `Prelude.seq` Prelude.rnf firstByteDateTime+ `Prelude.seq` Prelude.rnf lastCutover+ `Prelude.seq` Prelude.rnf lastSeenByServiceDateTime+ `Prelude.seq` Prelude.rnf lastTest+ `Prelude.seq` Prelude.rnf state
+ gen/Amazonka/MGN/Types/LifeCycleLastCutover.hs view
@@ -0,0 +1,99 @@+{-# 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.MGN.Types.LifeCycleLastCutover+-- 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.MGN.Types.LifeCycleLastCutover where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types.LifeCycleLastCutoverFinalized+import Amazonka.MGN.Types.LifeCycleLastCutoverInitiated+import Amazonka.MGN.Types.LifeCycleLastCutoverReverted+import qualified Amazonka.Prelude as Prelude++-- | Lifecycle last Cutover .+--+-- /See:/ 'newLifeCycleLastCutover' smart constructor.+data LifeCycleLastCutover = LifeCycleLastCutover'+ { -- | Lifecycle Cutover finalized date and time.+ finalized :: Prelude.Maybe LifeCycleLastCutoverFinalized,+ -- | Lifecycle last Cutover initiated.+ initiated :: Prelude.Maybe LifeCycleLastCutoverInitiated,+ -- | Lifecycle last Cutover reverted.+ reverted :: Prelude.Maybe LifeCycleLastCutoverReverted+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'LifeCycleLastCutover' 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:+--+-- 'finalized', 'lifeCycleLastCutover_finalized' - Lifecycle Cutover finalized date and time.+--+-- 'initiated', 'lifeCycleLastCutover_initiated' - Lifecycle last Cutover initiated.+--+-- 'reverted', 'lifeCycleLastCutover_reverted' - Lifecycle last Cutover reverted.+newLifeCycleLastCutover ::+ LifeCycleLastCutover+newLifeCycleLastCutover =+ LifeCycleLastCutover'+ { finalized = Prelude.Nothing,+ initiated = Prelude.Nothing,+ reverted = Prelude.Nothing+ }++-- | Lifecycle Cutover finalized date and time.+lifeCycleLastCutover_finalized :: Lens.Lens' LifeCycleLastCutover (Prelude.Maybe LifeCycleLastCutoverFinalized)+lifeCycleLastCutover_finalized = Lens.lens (\LifeCycleLastCutover' {finalized} -> finalized) (\s@LifeCycleLastCutover' {} a -> s {finalized = a} :: LifeCycleLastCutover)++-- | Lifecycle last Cutover initiated.+lifeCycleLastCutover_initiated :: Lens.Lens' LifeCycleLastCutover (Prelude.Maybe LifeCycleLastCutoverInitiated)+lifeCycleLastCutover_initiated = Lens.lens (\LifeCycleLastCutover' {initiated} -> initiated) (\s@LifeCycleLastCutover' {} a -> s {initiated = a} :: LifeCycleLastCutover)++-- | Lifecycle last Cutover reverted.+lifeCycleLastCutover_reverted :: Lens.Lens' LifeCycleLastCutover (Prelude.Maybe LifeCycleLastCutoverReverted)+lifeCycleLastCutover_reverted = Lens.lens (\LifeCycleLastCutover' {reverted} -> reverted) (\s@LifeCycleLastCutover' {} a -> s {reverted = a} :: LifeCycleLastCutover)++instance Data.FromJSON LifeCycleLastCutover where+ parseJSON =+ Data.withObject+ "LifeCycleLastCutover"+ ( \x ->+ LifeCycleLastCutover'+ Prelude.<$> (x Data..:? "finalized")+ Prelude.<*> (x Data..:? "initiated")+ Prelude.<*> (x Data..:? "reverted")+ )++instance Prelude.Hashable LifeCycleLastCutover where+ hashWithSalt _salt LifeCycleLastCutover' {..} =+ _salt+ `Prelude.hashWithSalt` finalized+ `Prelude.hashWithSalt` initiated+ `Prelude.hashWithSalt` reverted++instance Prelude.NFData LifeCycleLastCutover where+ rnf LifeCycleLastCutover' {..} =+ Prelude.rnf finalized+ `Prelude.seq` Prelude.rnf initiated+ `Prelude.seq` Prelude.rnf reverted
+ gen/Amazonka/MGN/Types/LifeCycleLastCutoverFinalized.hs view
@@ -0,0 +1,75 @@+{-# 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.MGN.Types.LifeCycleLastCutoverFinalized+-- 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.MGN.Types.LifeCycleLastCutoverFinalized 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++-- | Lifecycle Cutover finalized+--+-- /See:/ 'newLifeCycleLastCutoverFinalized' smart constructor.+data LifeCycleLastCutoverFinalized = LifeCycleLastCutoverFinalized'+ { -- | Lifecycle Cutover finalized date and time.+ apiCallDateTime :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'LifeCycleLastCutoverFinalized' 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:+--+-- 'apiCallDateTime', 'lifeCycleLastCutoverFinalized_apiCallDateTime' - Lifecycle Cutover finalized date and time.+newLifeCycleLastCutoverFinalized ::+ LifeCycleLastCutoverFinalized+newLifeCycleLastCutoverFinalized =+ LifeCycleLastCutoverFinalized'+ { apiCallDateTime =+ Prelude.Nothing+ }++-- | Lifecycle Cutover finalized date and time.+lifeCycleLastCutoverFinalized_apiCallDateTime :: Lens.Lens' LifeCycleLastCutoverFinalized (Prelude.Maybe Prelude.Text)+lifeCycleLastCutoverFinalized_apiCallDateTime = Lens.lens (\LifeCycleLastCutoverFinalized' {apiCallDateTime} -> apiCallDateTime) (\s@LifeCycleLastCutoverFinalized' {} a -> s {apiCallDateTime = a} :: LifeCycleLastCutoverFinalized)++instance Data.FromJSON LifeCycleLastCutoverFinalized where+ parseJSON =+ Data.withObject+ "LifeCycleLastCutoverFinalized"+ ( \x ->+ LifeCycleLastCutoverFinalized'+ Prelude.<$> (x Data..:? "apiCallDateTime")+ )++instance+ Prelude.Hashable+ LifeCycleLastCutoverFinalized+ where+ hashWithSalt _salt LifeCycleLastCutoverFinalized' {..} =+ _salt `Prelude.hashWithSalt` apiCallDateTime++instance Prelude.NFData LifeCycleLastCutoverFinalized where+ rnf LifeCycleLastCutoverFinalized' {..} =+ Prelude.rnf apiCallDateTime
+ gen/Amazonka/MGN/Types/LifeCycleLastCutoverInitiated.hs view
@@ -0,0 +1,86 @@+{-# 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.MGN.Types.LifeCycleLastCutoverInitiated+-- 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.MGN.Types.LifeCycleLastCutoverInitiated 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++-- | Lifecycle last Cutover initiated.+--+-- /See:/ 'newLifeCycleLastCutoverInitiated' smart constructor.+data LifeCycleLastCutoverInitiated = LifeCycleLastCutoverInitiated'+ { apiCallDateTime :: Prelude.Maybe Prelude.Text,+ -- | Lifecycle last Cutover initiated by Job ID.+ jobID :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'LifeCycleLastCutoverInitiated' 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:+--+-- 'apiCallDateTime', 'lifeCycleLastCutoverInitiated_apiCallDateTime' -+--+-- 'jobID', 'lifeCycleLastCutoverInitiated_jobID' - Lifecycle last Cutover initiated by Job ID.+newLifeCycleLastCutoverInitiated ::+ LifeCycleLastCutoverInitiated+newLifeCycleLastCutoverInitiated =+ LifeCycleLastCutoverInitiated'+ { apiCallDateTime =+ Prelude.Nothing,+ jobID = Prelude.Nothing+ }++lifeCycleLastCutoverInitiated_apiCallDateTime :: Lens.Lens' LifeCycleLastCutoverInitiated (Prelude.Maybe Prelude.Text)+lifeCycleLastCutoverInitiated_apiCallDateTime = Lens.lens (\LifeCycleLastCutoverInitiated' {apiCallDateTime} -> apiCallDateTime) (\s@LifeCycleLastCutoverInitiated' {} a -> s {apiCallDateTime = a} :: LifeCycleLastCutoverInitiated)++-- | Lifecycle last Cutover initiated by Job ID.+lifeCycleLastCutoverInitiated_jobID :: Lens.Lens' LifeCycleLastCutoverInitiated (Prelude.Maybe Prelude.Text)+lifeCycleLastCutoverInitiated_jobID = Lens.lens (\LifeCycleLastCutoverInitiated' {jobID} -> jobID) (\s@LifeCycleLastCutoverInitiated' {} a -> s {jobID = a} :: LifeCycleLastCutoverInitiated)++instance Data.FromJSON LifeCycleLastCutoverInitiated where+ parseJSON =+ Data.withObject+ "LifeCycleLastCutoverInitiated"+ ( \x ->+ LifeCycleLastCutoverInitiated'+ Prelude.<$> (x Data..:? "apiCallDateTime")+ Prelude.<*> (x Data..:? "jobID")+ )++instance+ Prelude.Hashable+ LifeCycleLastCutoverInitiated+ where+ hashWithSalt _salt LifeCycleLastCutoverInitiated' {..} =+ _salt+ `Prelude.hashWithSalt` apiCallDateTime+ `Prelude.hashWithSalt` jobID++instance Prelude.NFData LifeCycleLastCutoverInitiated where+ rnf LifeCycleLastCutoverInitiated' {..} =+ Prelude.rnf apiCallDateTime+ `Prelude.seq` Prelude.rnf jobID
+ gen/Amazonka/MGN/Types/LifeCycleLastCutoverReverted.hs view
@@ -0,0 +1,75 @@+{-# 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.MGN.Types.LifeCycleLastCutoverReverted+-- 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.MGN.Types.LifeCycleLastCutoverReverted 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++-- | Lifecycle last Cutover reverted.+--+-- /See:/ 'newLifeCycleLastCutoverReverted' smart constructor.+data LifeCycleLastCutoverReverted = LifeCycleLastCutoverReverted'+ { -- | Lifecycle last Cutover reverted API call date time.+ apiCallDateTime :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'LifeCycleLastCutoverReverted' 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:+--+-- 'apiCallDateTime', 'lifeCycleLastCutoverReverted_apiCallDateTime' - Lifecycle last Cutover reverted API call date time.+newLifeCycleLastCutoverReverted ::+ LifeCycleLastCutoverReverted+newLifeCycleLastCutoverReverted =+ LifeCycleLastCutoverReverted'+ { apiCallDateTime =+ Prelude.Nothing+ }++-- | Lifecycle last Cutover reverted API call date time.+lifeCycleLastCutoverReverted_apiCallDateTime :: Lens.Lens' LifeCycleLastCutoverReverted (Prelude.Maybe Prelude.Text)+lifeCycleLastCutoverReverted_apiCallDateTime = Lens.lens (\LifeCycleLastCutoverReverted' {apiCallDateTime} -> apiCallDateTime) (\s@LifeCycleLastCutoverReverted' {} a -> s {apiCallDateTime = a} :: LifeCycleLastCutoverReverted)++instance Data.FromJSON LifeCycleLastCutoverReverted where+ parseJSON =+ Data.withObject+ "LifeCycleLastCutoverReverted"+ ( \x ->+ LifeCycleLastCutoverReverted'+ Prelude.<$> (x Data..:? "apiCallDateTime")+ )++instance+ Prelude.Hashable+ LifeCycleLastCutoverReverted+ where+ hashWithSalt _salt LifeCycleLastCutoverReverted' {..} =+ _salt `Prelude.hashWithSalt` apiCallDateTime++instance Prelude.NFData LifeCycleLastCutoverReverted where+ rnf LifeCycleLastCutoverReverted' {..} =+ Prelude.rnf apiCallDateTime
+ gen/Amazonka/MGN/Types/LifeCycleLastTest.hs view
@@ -0,0 +1,99 @@+{-# 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.MGN.Types.LifeCycleLastTest+-- 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.MGN.Types.LifeCycleLastTest where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types.LifeCycleLastTestFinalized+import Amazonka.MGN.Types.LifeCycleLastTestInitiated+import Amazonka.MGN.Types.LifeCycleLastTestReverted+import qualified Amazonka.Prelude as Prelude++-- | Lifecycle last Test.+--+-- /See:/ 'newLifeCycleLastTest' smart constructor.+data LifeCycleLastTest = LifeCycleLastTest'+ { -- | Lifecycle last Test finalized.+ finalized :: Prelude.Maybe LifeCycleLastTestFinalized,+ -- | Lifecycle last Test initiated.+ initiated :: Prelude.Maybe LifeCycleLastTestInitiated,+ -- | Lifecycle last Test reverted.+ reverted :: Prelude.Maybe LifeCycleLastTestReverted+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'LifeCycleLastTest' 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:+--+-- 'finalized', 'lifeCycleLastTest_finalized' - Lifecycle last Test finalized.+--+-- 'initiated', 'lifeCycleLastTest_initiated' - Lifecycle last Test initiated.+--+-- 'reverted', 'lifeCycleLastTest_reverted' - Lifecycle last Test reverted.+newLifeCycleLastTest ::+ LifeCycleLastTest+newLifeCycleLastTest =+ LifeCycleLastTest'+ { finalized = Prelude.Nothing,+ initiated = Prelude.Nothing,+ reverted = Prelude.Nothing+ }++-- | Lifecycle last Test finalized.+lifeCycleLastTest_finalized :: Lens.Lens' LifeCycleLastTest (Prelude.Maybe LifeCycleLastTestFinalized)+lifeCycleLastTest_finalized = Lens.lens (\LifeCycleLastTest' {finalized} -> finalized) (\s@LifeCycleLastTest' {} a -> s {finalized = a} :: LifeCycleLastTest)++-- | Lifecycle last Test initiated.+lifeCycleLastTest_initiated :: Lens.Lens' LifeCycleLastTest (Prelude.Maybe LifeCycleLastTestInitiated)+lifeCycleLastTest_initiated = Lens.lens (\LifeCycleLastTest' {initiated} -> initiated) (\s@LifeCycleLastTest' {} a -> s {initiated = a} :: LifeCycleLastTest)++-- | Lifecycle last Test reverted.+lifeCycleLastTest_reverted :: Lens.Lens' LifeCycleLastTest (Prelude.Maybe LifeCycleLastTestReverted)+lifeCycleLastTest_reverted = Lens.lens (\LifeCycleLastTest' {reverted} -> reverted) (\s@LifeCycleLastTest' {} a -> s {reverted = a} :: LifeCycleLastTest)++instance Data.FromJSON LifeCycleLastTest where+ parseJSON =+ Data.withObject+ "LifeCycleLastTest"+ ( \x ->+ LifeCycleLastTest'+ Prelude.<$> (x Data..:? "finalized")+ Prelude.<*> (x Data..:? "initiated")+ Prelude.<*> (x Data..:? "reverted")+ )++instance Prelude.Hashable LifeCycleLastTest where+ hashWithSalt _salt LifeCycleLastTest' {..} =+ _salt+ `Prelude.hashWithSalt` finalized+ `Prelude.hashWithSalt` initiated+ `Prelude.hashWithSalt` reverted++instance Prelude.NFData LifeCycleLastTest where+ rnf LifeCycleLastTest' {..} =+ Prelude.rnf finalized+ `Prelude.seq` Prelude.rnf initiated+ `Prelude.seq` Prelude.rnf reverted
+ gen/Amazonka/MGN/Types/LifeCycleLastTestFinalized.hs view
@@ -0,0 +1,72 @@+{-# 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.MGN.Types.LifeCycleLastTestFinalized+-- 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.MGN.Types.LifeCycleLastTestFinalized 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++-- | Lifecycle last Test finalized.+--+-- /See:/ 'newLifeCycleLastTestFinalized' smart constructor.+data LifeCycleLastTestFinalized = LifeCycleLastTestFinalized'+ { -- | Lifecycle Test failed API call date and time.+ apiCallDateTime :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'LifeCycleLastTestFinalized' 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:+--+-- 'apiCallDateTime', 'lifeCycleLastTestFinalized_apiCallDateTime' - Lifecycle Test failed API call date and time.+newLifeCycleLastTestFinalized ::+ LifeCycleLastTestFinalized+newLifeCycleLastTestFinalized =+ LifeCycleLastTestFinalized'+ { apiCallDateTime =+ Prelude.Nothing+ }++-- | Lifecycle Test failed API call date and time.+lifeCycleLastTestFinalized_apiCallDateTime :: Lens.Lens' LifeCycleLastTestFinalized (Prelude.Maybe Prelude.Text)+lifeCycleLastTestFinalized_apiCallDateTime = Lens.lens (\LifeCycleLastTestFinalized' {apiCallDateTime} -> apiCallDateTime) (\s@LifeCycleLastTestFinalized' {} a -> s {apiCallDateTime = a} :: LifeCycleLastTestFinalized)++instance Data.FromJSON LifeCycleLastTestFinalized where+ parseJSON =+ Data.withObject+ "LifeCycleLastTestFinalized"+ ( \x ->+ LifeCycleLastTestFinalized'+ Prelude.<$> (x Data..:? "apiCallDateTime")+ )++instance Prelude.Hashable LifeCycleLastTestFinalized where+ hashWithSalt _salt LifeCycleLastTestFinalized' {..} =+ _salt `Prelude.hashWithSalt` apiCallDateTime++instance Prelude.NFData LifeCycleLastTestFinalized where+ rnf LifeCycleLastTestFinalized' {..} =+ Prelude.rnf apiCallDateTime
+ gen/Amazonka/MGN/Types/LifeCycleLastTestInitiated.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.MGN.Types.LifeCycleLastTestInitiated+-- 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.MGN.Types.LifeCycleLastTestInitiated 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++-- | Lifecycle last Test initiated.+--+-- /See:/ 'newLifeCycleLastTestInitiated' smart constructor.+data LifeCycleLastTestInitiated = LifeCycleLastTestInitiated'+ { -- | Lifecycle last Test initiated API call date and time.+ apiCallDateTime :: Prelude.Maybe Prelude.Text,+ -- | Lifecycle last Test initiated Job ID.+ jobID :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'LifeCycleLastTestInitiated' 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:+--+-- 'apiCallDateTime', 'lifeCycleLastTestInitiated_apiCallDateTime' - Lifecycle last Test initiated API call date and time.+--+-- 'jobID', 'lifeCycleLastTestInitiated_jobID' - Lifecycle last Test initiated Job ID.+newLifeCycleLastTestInitiated ::+ LifeCycleLastTestInitiated+newLifeCycleLastTestInitiated =+ LifeCycleLastTestInitiated'+ { apiCallDateTime =+ Prelude.Nothing,+ jobID = Prelude.Nothing+ }++-- | Lifecycle last Test initiated API call date and time.+lifeCycleLastTestInitiated_apiCallDateTime :: Lens.Lens' LifeCycleLastTestInitiated (Prelude.Maybe Prelude.Text)+lifeCycleLastTestInitiated_apiCallDateTime = Lens.lens (\LifeCycleLastTestInitiated' {apiCallDateTime} -> apiCallDateTime) (\s@LifeCycleLastTestInitiated' {} a -> s {apiCallDateTime = a} :: LifeCycleLastTestInitiated)++-- | Lifecycle last Test initiated Job ID.+lifeCycleLastTestInitiated_jobID :: Lens.Lens' LifeCycleLastTestInitiated (Prelude.Maybe Prelude.Text)+lifeCycleLastTestInitiated_jobID = Lens.lens (\LifeCycleLastTestInitiated' {jobID} -> jobID) (\s@LifeCycleLastTestInitiated' {} a -> s {jobID = a} :: LifeCycleLastTestInitiated)++instance Data.FromJSON LifeCycleLastTestInitiated where+ parseJSON =+ Data.withObject+ "LifeCycleLastTestInitiated"+ ( \x ->+ LifeCycleLastTestInitiated'+ Prelude.<$> (x Data..:? "apiCallDateTime")+ Prelude.<*> (x Data..:? "jobID")+ )++instance Prelude.Hashable LifeCycleLastTestInitiated where+ hashWithSalt _salt LifeCycleLastTestInitiated' {..} =+ _salt+ `Prelude.hashWithSalt` apiCallDateTime+ `Prelude.hashWithSalt` jobID++instance Prelude.NFData LifeCycleLastTestInitiated where+ rnf LifeCycleLastTestInitiated' {..} =+ Prelude.rnf apiCallDateTime+ `Prelude.seq` Prelude.rnf jobID
+ gen/Amazonka/MGN/Types/LifeCycleLastTestReverted.hs view
@@ -0,0 +1,72 @@+{-# 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.MGN.Types.LifeCycleLastTestReverted+-- 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.MGN.Types.LifeCycleLastTestReverted 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++-- | Lifecycle last Test reverted.+--+-- /See:/ 'newLifeCycleLastTestReverted' smart constructor.+data LifeCycleLastTestReverted = LifeCycleLastTestReverted'+ { -- | Lifecycle last Test reverted API call date and time.+ apiCallDateTime :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'LifeCycleLastTestReverted' 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:+--+-- 'apiCallDateTime', 'lifeCycleLastTestReverted_apiCallDateTime' - Lifecycle last Test reverted API call date and time.+newLifeCycleLastTestReverted ::+ LifeCycleLastTestReverted+newLifeCycleLastTestReverted =+ LifeCycleLastTestReverted'+ { apiCallDateTime =+ Prelude.Nothing+ }++-- | Lifecycle last Test reverted API call date and time.+lifeCycleLastTestReverted_apiCallDateTime :: Lens.Lens' LifeCycleLastTestReverted (Prelude.Maybe Prelude.Text)+lifeCycleLastTestReverted_apiCallDateTime = Lens.lens (\LifeCycleLastTestReverted' {apiCallDateTime} -> apiCallDateTime) (\s@LifeCycleLastTestReverted' {} a -> s {apiCallDateTime = a} :: LifeCycleLastTestReverted)++instance Data.FromJSON LifeCycleLastTestReverted where+ parseJSON =+ Data.withObject+ "LifeCycleLastTestReverted"+ ( \x ->+ LifeCycleLastTestReverted'+ Prelude.<$> (x Data..:? "apiCallDateTime")+ )++instance Prelude.Hashable LifeCycleLastTestReverted where+ hashWithSalt _salt LifeCycleLastTestReverted' {..} =+ _salt `Prelude.hashWithSalt` apiCallDateTime++instance Prelude.NFData LifeCycleLastTestReverted where+ rnf LifeCycleLastTestReverted' {..} =+ Prelude.rnf apiCallDateTime
+ gen/Amazonka/MGN/Types/LifeCycleState.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.MGN.Types.LifeCycleState+-- 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.MGN.Types.LifeCycleState+ ( LifeCycleState+ ( ..,+ LifeCycleState_CUTOVER,+ LifeCycleState_CUTTING_OVER,+ LifeCycleState_DISCONNECTED,+ LifeCycleState_DISCOVERED,+ LifeCycleState_NOT_READY,+ LifeCycleState_READY_FOR_CUTOVER,+ LifeCycleState_READY_FOR_TEST,+ LifeCycleState_STOPPED,+ LifeCycleState_TESTING+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype LifeCycleState = LifeCycleState'+ { fromLifeCycleState ::+ 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 LifeCycleState_CUTOVER :: LifeCycleState+pattern LifeCycleState_CUTOVER = LifeCycleState' "CUTOVER"++pattern LifeCycleState_CUTTING_OVER :: LifeCycleState+pattern LifeCycleState_CUTTING_OVER = LifeCycleState' "CUTTING_OVER"++pattern LifeCycleState_DISCONNECTED :: LifeCycleState+pattern LifeCycleState_DISCONNECTED = LifeCycleState' "DISCONNECTED"++pattern LifeCycleState_DISCOVERED :: LifeCycleState+pattern LifeCycleState_DISCOVERED = LifeCycleState' "DISCOVERED"++pattern LifeCycleState_NOT_READY :: LifeCycleState+pattern LifeCycleState_NOT_READY = LifeCycleState' "NOT_READY"++pattern LifeCycleState_READY_FOR_CUTOVER :: LifeCycleState+pattern LifeCycleState_READY_FOR_CUTOVER = LifeCycleState' "READY_FOR_CUTOVER"++pattern LifeCycleState_READY_FOR_TEST :: LifeCycleState+pattern LifeCycleState_READY_FOR_TEST = LifeCycleState' "READY_FOR_TEST"++pattern LifeCycleState_STOPPED :: LifeCycleState+pattern LifeCycleState_STOPPED = LifeCycleState' "STOPPED"++pattern LifeCycleState_TESTING :: LifeCycleState+pattern LifeCycleState_TESTING = LifeCycleState' "TESTING"++{-# COMPLETE+ LifeCycleState_CUTOVER,+ LifeCycleState_CUTTING_OVER,+ LifeCycleState_DISCONNECTED,+ LifeCycleState_DISCOVERED,+ LifeCycleState_NOT_READY,+ LifeCycleState_READY_FOR_CUTOVER,+ LifeCycleState_READY_FOR_TEST,+ LifeCycleState_STOPPED,+ LifeCycleState_TESTING,+ LifeCycleState'+ #-}
+ gen/Amazonka/MGN/Types/ListApplicationsRequestFilters.hs view
@@ -0,0 +1,105 @@+{-# 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.MGN.Types.ListApplicationsRequestFilters+-- 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.MGN.Types.ListApplicationsRequestFilters 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++-- | Applications list filters.+--+-- /See:/ 'newListApplicationsRequestFilters' smart constructor.+data ListApplicationsRequestFilters = ListApplicationsRequestFilters'+ { -- | Filter applications list by application ID.+ applicationIDs :: Prelude.Maybe [Prelude.Text],+ -- | Filter applications list by archival status.+ isArchived :: Prelude.Maybe Prelude.Bool,+ -- | Filter applications list by wave ID.+ waveIDs :: Prelude.Maybe [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListApplicationsRequestFilters' 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:+--+-- 'applicationIDs', 'listApplicationsRequestFilters_applicationIDs' - Filter applications list by application ID.+--+-- 'isArchived', 'listApplicationsRequestFilters_isArchived' - Filter applications list by archival status.+--+-- 'waveIDs', 'listApplicationsRequestFilters_waveIDs' - Filter applications list by wave ID.+newListApplicationsRequestFilters ::+ ListApplicationsRequestFilters+newListApplicationsRequestFilters =+ ListApplicationsRequestFilters'+ { applicationIDs =+ Prelude.Nothing,+ isArchived = Prelude.Nothing,+ waveIDs = Prelude.Nothing+ }++-- | Filter applications list by application ID.+listApplicationsRequestFilters_applicationIDs :: Lens.Lens' ListApplicationsRequestFilters (Prelude.Maybe [Prelude.Text])+listApplicationsRequestFilters_applicationIDs = Lens.lens (\ListApplicationsRequestFilters' {applicationIDs} -> applicationIDs) (\s@ListApplicationsRequestFilters' {} a -> s {applicationIDs = a} :: ListApplicationsRequestFilters) Prelude.. Lens.mapping Lens.coerced++-- | Filter applications list by archival status.+listApplicationsRequestFilters_isArchived :: Lens.Lens' ListApplicationsRequestFilters (Prelude.Maybe Prelude.Bool)+listApplicationsRequestFilters_isArchived = Lens.lens (\ListApplicationsRequestFilters' {isArchived} -> isArchived) (\s@ListApplicationsRequestFilters' {} a -> s {isArchived = a} :: ListApplicationsRequestFilters)++-- | Filter applications list by wave ID.+listApplicationsRequestFilters_waveIDs :: Lens.Lens' ListApplicationsRequestFilters (Prelude.Maybe [Prelude.Text])+listApplicationsRequestFilters_waveIDs = Lens.lens (\ListApplicationsRequestFilters' {waveIDs} -> waveIDs) (\s@ListApplicationsRequestFilters' {} a -> s {waveIDs = a} :: ListApplicationsRequestFilters) Prelude.. Lens.mapping Lens.coerced++instance+ Prelude.Hashable+ ListApplicationsRequestFilters+ where+ hashWithSalt+ _salt+ ListApplicationsRequestFilters' {..} =+ _salt+ `Prelude.hashWithSalt` applicationIDs+ `Prelude.hashWithSalt` isArchived+ `Prelude.hashWithSalt` waveIDs++instance+ Prelude.NFData+ ListApplicationsRequestFilters+ where+ rnf ListApplicationsRequestFilters' {..} =+ Prelude.rnf applicationIDs+ `Prelude.seq` Prelude.rnf isArchived+ `Prelude.seq` Prelude.rnf waveIDs++instance Data.ToJSON ListApplicationsRequestFilters where+ toJSON ListApplicationsRequestFilters' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("applicationIDs" Data..=)+ Prelude.<$> applicationIDs,+ ("isArchived" Data..=) Prelude.<$> isArchived,+ ("waveIDs" Data..=) Prelude.<$> waveIDs+ ]+ )
+ gen/Amazonka/MGN/Types/ListWavesRequestFilters.hs view
@@ -0,0 +1,84 @@+{-# 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.MGN.Types.ListWavesRequestFilters+-- 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.MGN.Types.ListWavesRequestFilters 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++-- | Waves list filters.+--+-- /See:/ 'newListWavesRequestFilters' smart constructor.+data ListWavesRequestFilters = ListWavesRequestFilters'+ { -- | Filter waves list by archival status.+ isArchived :: Prelude.Maybe Prelude.Bool,+ -- | Filter waves list by wave ID.+ waveIDs :: Prelude.Maybe [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListWavesRequestFilters' 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:+--+-- 'isArchived', 'listWavesRequestFilters_isArchived' - Filter waves list by archival status.+--+-- 'waveIDs', 'listWavesRequestFilters_waveIDs' - Filter waves list by wave ID.+newListWavesRequestFilters ::+ ListWavesRequestFilters+newListWavesRequestFilters =+ ListWavesRequestFilters'+ { isArchived =+ Prelude.Nothing,+ waveIDs = Prelude.Nothing+ }++-- | Filter waves list by archival status.+listWavesRequestFilters_isArchived :: Lens.Lens' ListWavesRequestFilters (Prelude.Maybe Prelude.Bool)+listWavesRequestFilters_isArchived = Lens.lens (\ListWavesRequestFilters' {isArchived} -> isArchived) (\s@ListWavesRequestFilters' {} a -> s {isArchived = a} :: ListWavesRequestFilters)++-- | Filter waves list by wave ID.+listWavesRequestFilters_waveIDs :: Lens.Lens' ListWavesRequestFilters (Prelude.Maybe [Prelude.Text])+listWavesRequestFilters_waveIDs = Lens.lens (\ListWavesRequestFilters' {waveIDs} -> waveIDs) (\s@ListWavesRequestFilters' {} a -> s {waveIDs = a} :: ListWavesRequestFilters) Prelude.. Lens.mapping Lens.coerced++instance Prelude.Hashable ListWavesRequestFilters where+ hashWithSalt _salt ListWavesRequestFilters' {..} =+ _salt+ `Prelude.hashWithSalt` isArchived+ `Prelude.hashWithSalt` waveIDs++instance Prelude.NFData ListWavesRequestFilters where+ rnf ListWavesRequestFilters' {..} =+ Prelude.rnf isArchived+ `Prelude.seq` Prelude.rnf waveIDs++instance Data.ToJSON ListWavesRequestFilters where+ toJSON ListWavesRequestFilters' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("isArchived" Data..=) Prelude.<$> isArchived,+ ("waveIDs" Data..=) Prelude.<$> waveIDs+ ]+ )
+ gen/Amazonka/MGN/Types/NetworkInterface.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.MGN.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.MGN.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++-- | Network interface.+--+-- /See:/ 'newNetworkInterface' smart constructor.+data NetworkInterface = NetworkInterface'+ { -- | Network interface IPs.+ ips :: Prelude.Maybe [Prelude.Text],+ -- | Network interface primary IP.+ isPrimary :: Prelude.Maybe Prelude.Bool,+ -- | Network interface Mac address.+ macAddress :: 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:+--+-- 'ips', 'networkInterface_ips' - Network interface IPs.+--+-- 'isPrimary', 'networkInterface_isPrimary' - Network interface primary IP.+--+-- 'macAddress', 'networkInterface_macAddress' - Network interface Mac address.+newNetworkInterface ::+ NetworkInterface+newNetworkInterface =+ NetworkInterface'+ { ips = Prelude.Nothing,+ isPrimary = Prelude.Nothing,+ macAddress = Prelude.Nothing+ }++-- | Network interface IPs.+networkInterface_ips :: Lens.Lens' NetworkInterface (Prelude.Maybe [Prelude.Text])+networkInterface_ips = Lens.lens (\NetworkInterface' {ips} -> ips) (\s@NetworkInterface' {} a -> s {ips = a} :: NetworkInterface) Prelude.. Lens.mapping Lens.coerced++-- | Network interface primary IP.+networkInterface_isPrimary :: Lens.Lens' NetworkInterface (Prelude.Maybe Prelude.Bool)+networkInterface_isPrimary = Lens.lens (\NetworkInterface' {isPrimary} -> isPrimary) (\s@NetworkInterface' {} a -> s {isPrimary = a} :: NetworkInterface)++-- | Network interface Mac address.+networkInterface_macAddress :: Lens.Lens' NetworkInterface (Prelude.Maybe Prelude.Text)+networkInterface_macAddress = Lens.lens (\NetworkInterface' {macAddress} -> macAddress) (\s@NetworkInterface' {} a -> s {macAddress = a} :: NetworkInterface)++instance Data.FromJSON NetworkInterface where+ parseJSON =+ Data.withObject+ "NetworkInterface"+ ( \x ->+ NetworkInterface'+ Prelude.<$> (x Data..:? "ips" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "isPrimary")+ Prelude.<*> (x Data..:? "macAddress")+ )++instance Prelude.Hashable NetworkInterface where+ hashWithSalt _salt NetworkInterface' {..} =+ _salt+ `Prelude.hashWithSalt` ips+ `Prelude.hashWithSalt` isPrimary+ `Prelude.hashWithSalt` macAddress++instance Prelude.NFData NetworkInterface where+ rnf NetworkInterface' {..} =+ Prelude.rnf ips+ `Prelude.seq` Prelude.rnf isPrimary+ `Prelude.seq` Prelude.rnf macAddress
+ gen/Amazonka/MGN/Types/OS.hs view
@@ -0,0 +1,64 @@+{-# 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.MGN.Types.OS+-- 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.MGN.Types.OS 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++-- | Operating System.+--+-- /See:/ 'newOS' smart constructor.+data OS = OS'+ { -- | OS full string.+ fullString :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'OS' 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:+--+-- 'fullString', 'os_fullString' - OS full string.+newOS ::+ OS+newOS = OS' {fullString = Prelude.Nothing}++-- | OS full string.+os_fullString :: Lens.Lens' OS (Prelude.Maybe Prelude.Text)+os_fullString = Lens.lens (\OS' {fullString} -> fullString) (\s@OS' {} a -> s {fullString = a} :: OS)++instance Data.FromJSON OS where+ parseJSON =+ Data.withObject+ "OS"+ (\x -> OS' Prelude.<$> (x Data..:? "fullString"))++instance Prelude.Hashable OS where+ hashWithSalt _salt OS' {..} =+ _salt `Prelude.hashWithSalt` fullString++instance Prelude.NFData OS where+ rnf OS' {..} = Prelude.rnf fullString
+ gen/Amazonka/MGN/Types/ParticipatingServer.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.MGN.Types.ParticipatingServer+-- 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.MGN.Types.ParticipatingServer where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types.LaunchStatus+import Amazonka.MGN.Types.PostLaunchActionsStatus+import qualified Amazonka.Prelude as Prelude++-- | Server participating in Job.+--+-- /See:/ 'newParticipatingServer' smart constructor.+data ParticipatingServer = ParticipatingServer'+ { -- | Participating server launch status.+ launchStatus :: Prelude.Maybe LaunchStatus,+ -- | Participating server\'s launched ec2 instance ID.+ launchedEc2InstanceID :: Prelude.Maybe Prelude.Text,+ -- | Participating server\'s Post Launch Actions Status.+ postLaunchActionsStatus :: Prelude.Maybe PostLaunchActionsStatus,+ -- | Participating server Source Server ID.+ sourceServerID :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ParticipatingServer' 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:+--+-- 'launchStatus', 'participatingServer_launchStatus' - Participating server launch status.+--+-- 'launchedEc2InstanceID', 'participatingServer_launchedEc2InstanceID' - Participating server\'s launched ec2 instance ID.+--+-- 'postLaunchActionsStatus', 'participatingServer_postLaunchActionsStatus' - Participating server\'s Post Launch Actions Status.+--+-- 'sourceServerID', 'participatingServer_sourceServerID' - Participating server Source Server ID.+newParticipatingServer ::+ -- | 'sourceServerID'+ Prelude.Text ->+ ParticipatingServer+newParticipatingServer pSourceServerID_ =+ ParticipatingServer'+ { launchStatus =+ Prelude.Nothing,+ launchedEc2InstanceID = Prelude.Nothing,+ postLaunchActionsStatus = Prelude.Nothing,+ sourceServerID = pSourceServerID_+ }++-- | Participating server launch status.+participatingServer_launchStatus :: Lens.Lens' ParticipatingServer (Prelude.Maybe LaunchStatus)+participatingServer_launchStatus = Lens.lens (\ParticipatingServer' {launchStatus} -> launchStatus) (\s@ParticipatingServer' {} a -> s {launchStatus = a} :: ParticipatingServer)++-- | Participating server\'s launched ec2 instance ID.+participatingServer_launchedEc2InstanceID :: Lens.Lens' ParticipatingServer (Prelude.Maybe Prelude.Text)+participatingServer_launchedEc2InstanceID = Lens.lens (\ParticipatingServer' {launchedEc2InstanceID} -> launchedEc2InstanceID) (\s@ParticipatingServer' {} a -> s {launchedEc2InstanceID = a} :: ParticipatingServer)++-- | Participating server\'s Post Launch Actions Status.+participatingServer_postLaunchActionsStatus :: Lens.Lens' ParticipatingServer (Prelude.Maybe PostLaunchActionsStatus)+participatingServer_postLaunchActionsStatus = Lens.lens (\ParticipatingServer' {postLaunchActionsStatus} -> postLaunchActionsStatus) (\s@ParticipatingServer' {} a -> s {postLaunchActionsStatus = a} :: ParticipatingServer)++-- | Participating server Source Server ID.+participatingServer_sourceServerID :: Lens.Lens' ParticipatingServer Prelude.Text+participatingServer_sourceServerID = Lens.lens (\ParticipatingServer' {sourceServerID} -> sourceServerID) (\s@ParticipatingServer' {} a -> s {sourceServerID = a} :: ParticipatingServer)++instance Data.FromJSON ParticipatingServer where+ parseJSON =+ Data.withObject+ "ParticipatingServer"+ ( \x ->+ ParticipatingServer'+ Prelude.<$> (x Data..:? "launchStatus")+ Prelude.<*> (x Data..:? "launchedEc2InstanceID")+ Prelude.<*> (x Data..:? "postLaunchActionsStatus")+ Prelude.<*> (x Data..: "sourceServerID")+ )++instance Prelude.Hashable ParticipatingServer where+ hashWithSalt _salt ParticipatingServer' {..} =+ _salt+ `Prelude.hashWithSalt` launchStatus+ `Prelude.hashWithSalt` launchedEc2InstanceID+ `Prelude.hashWithSalt` postLaunchActionsStatus+ `Prelude.hashWithSalt` sourceServerID++instance Prelude.NFData ParticipatingServer where+ rnf ParticipatingServer' {..} =+ Prelude.rnf launchStatus+ `Prelude.seq` Prelude.rnf launchedEc2InstanceID+ `Prelude.seq` Prelude.rnf postLaunchActionsStatus+ `Prelude.seq` Prelude.rnf sourceServerID
+ gen/Amazonka/MGN/Types/PostLaunchActionExecutionStatus.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.MGN.Types.PostLaunchActionExecutionStatus+-- 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.MGN.Types.PostLaunchActionExecutionStatus+ ( PostLaunchActionExecutionStatus+ ( ..,+ PostLaunchActionExecutionStatus_FAILED,+ PostLaunchActionExecutionStatus_IN_PROGRESS,+ PostLaunchActionExecutionStatus_SUCCESS+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype PostLaunchActionExecutionStatus = PostLaunchActionExecutionStatus'+ { fromPostLaunchActionExecutionStatus ::+ 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 PostLaunchActionExecutionStatus_FAILED :: PostLaunchActionExecutionStatus+pattern PostLaunchActionExecutionStatus_FAILED = PostLaunchActionExecutionStatus' "FAILED"++pattern PostLaunchActionExecutionStatus_IN_PROGRESS :: PostLaunchActionExecutionStatus+pattern PostLaunchActionExecutionStatus_IN_PROGRESS = PostLaunchActionExecutionStatus' "IN_PROGRESS"++pattern PostLaunchActionExecutionStatus_SUCCESS :: PostLaunchActionExecutionStatus+pattern PostLaunchActionExecutionStatus_SUCCESS = PostLaunchActionExecutionStatus' "SUCCESS"++{-# COMPLETE+ PostLaunchActionExecutionStatus_FAILED,+ PostLaunchActionExecutionStatus_IN_PROGRESS,+ PostLaunchActionExecutionStatus_SUCCESS,+ PostLaunchActionExecutionStatus'+ #-}
+ gen/Amazonka/MGN/Types/PostLaunchActions.hs view
@@ -0,0 +1,137 @@+{-# 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.MGN.Types.PostLaunchActions+-- 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.MGN.Types.PostLaunchActions where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types.PostLaunchActionsDeploymentType+import Amazonka.MGN.Types.SsmDocument+import qualified Amazonka.Prelude as Prelude++-- | Post Launch Actions to executed on the Test or Cutover instance.+--+-- /See:/ 'newPostLaunchActions' smart constructor.+data PostLaunchActions = PostLaunchActions'+ { -- | AWS Systems Manager Command\'s CloudWatch log group name.+ cloudWatchLogGroupName :: Prelude.Maybe Prelude.Text,+ -- | Deployment type in which AWS Systems Manager Documents will be executed.+ deployment :: Prelude.Maybe PostLaunchActionsDeploymentType,+ -- | AWS Systems Manager Command\'s logs S3 log bucket.+ s3LogBucket :: Prelude.Maybe Prelude.Text,+ -- | AWS Systems Manager Command\'s logs S3 output key prefix.+ s3OutputKeyPrefix :: Prelude.Maybe Prelude.Text,+ -- | AWS Systems Manager Documents.+ ssmDocuments :: Prelude.Maybe [SsmDocument]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PostLaunchActions' 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:+--+-- 'cloudWatchLogGroupName', 'postLaunchActions_cloudWatchLogGroupName' - AWS Systems Manager Command\'s CloudWatch log group name.+--+-- 'deployment', 'postLaunchActions_deployment' - Deployment type in which AWS Systems Manager Documents will be executed.+--+-- 's3LogBucket', 'postLaunchActions_s3LogBucket' - AWS Systems Manager Command\'s logs S3 log bucket.+--+-- 's3OutputKeyPrefix', 'postLaunchActions_s3OutputKeyPrefix' - AWS Systems Manager Command\'s logs S3 output key prefix.+--+-- 'ssmDocuments', 'postLaunchActions_ssmDocuments' - AWS Systems Manager Documents.+newPostLaunchActions ::+ PostLaunchActions+newPostLaunchActions =+ PostLaunchActions'+ { cloudWatchLogGroupName =+ Prelude.Nothing,+ deployment = Prelude.Nothing,+ s3LogBucket = Prelude.Nothing,+ s3OutputKeyPrefix = Prelude.Nothing,+ ssmDocuments = Prelude.Nothing+ }++-- | AWS Systems Manager Command\'s CloudWatch log group name.+postLaunchActions_cloudWatchLogGroupName :: Lens.Lens' PostLaunchActions (Prelude.Maybe Prelude.Text)+postLaunchActions_cloudWatchLogGroupName = Lens.lens (\PostLaunchActions' {cloudWatchLogGroupName} -> cloudWatchLogGroupName) (\s@PostLaunchActions' {} a -> s {cloudWatchLogGroupName = a} :: PostLaunchActions)++-- | Deployment type in which AWS Systems Manager Documents will be executed.+postLaunchActions_deployment :: Lens.Lens' PostLaunchActions (Prelude.Maybe PostLaunchActionsDeploymentType)+postLaunchActions_deployment = Lens.lens (\PostLaunchActions' {deployment} -> deployment) (\s@PostLaunchActions' {} a -> s {deployment = a} :: PostLaunchActions)++-- | AWS Systems Manager Command\'s logs S3 log bucket.+postLaunchActions_s3LogBucket :: Lens.Lens' PostLaunchActions (Prelude.Maybe Prelude.Text)+postLaunchActions_s3LogBucket = Lens.lens (\PostLaunchActions' {s3LogBucket} -> s3LogBucket) (\s@PostLaunchActions' {} a -> s {s3LogBucket = a} :: PostLaunchActions)++-- | AWS Systems Manager Command\'s logs S3 output key prefix.+postLaunchActions_s3OutputKeyPrefix :: Lens.Lens' PostLaunchActions (Prelude.Maybe Prelude.Text)+postLaunchActions_s3OutputKeyPrefix = Lens.lens (\PostLaunchActions' {s3OutputKeyPrefix} -> s3OutputKeyPrefix) (\s@PostLaunchActions' {} a -> s {s3OutputKeyPrefix = a} :: PostLaunchActions)++-- | AWS Systems Manager Documents.+postLaunchActions_ssmDocuments :: Lens.Lens' PostLaunchActions (Prelude.Maybe [SsmDocument])+postLaunchActions_ssmDocuments = Lens.lens (\PostLaunchActions' {ssmDocuments} -> ssmDocuments) (\s@PostLaunchActions' {} a -> s {ssmDocuments = a} :: PostLaunchActions) Prelude.. Lens.mapping Lens.coerced++instance Data.FromJSON PostLaunchActions where+ parseJSON =+ Data.withObject+ "PostLaunchActions"+ ( \x ->+ PostLaunchActions'+ Prelude.<$> (x Data..:? "cloudWatchLogGroupName")+ Prelude.<*> (x Data..:? "deployment")+ Prelude.<*> (x Data..:? "s3LogBucket")+ Prelude.<*> (x Data..:? "s3OutputKeyPrefix")+ Prelude.<*> (x Data..:? "ssmDocuments" Data..!= Prelude.mempty)+ )++instance Prelude.Hashable PostLaunchActions where+ hashWithSalt _salt PostLaunchActions' {..} =+ _salt+ `Prelude.hashWithSalt` cloudWatchLogGroupName+ `Prelude.hashWithSalt` deployment+ `Prelude.hashWithSalt` s3LogBucket+ `Prelude.hashWithSalt` s3OutputKeyPrefix+ `Prelude.hashWithSalt` ssmDocuments++instance Prelude.NFData PostLaunchActions where+ rnf PostLaunchActions' {..} =+ Prelude.rnf cloudWatchLogGroupName+ `Prelude.seq` Prelude.rnf deployment+ `Prelude.seq` Prelude.rnf s3LogBucket+ `Prelude.seq` Prelude.rnf s3OutputKeyPrefix+ `Prelude.seq` Prelude.rnf ssmDocuments++instance Data.ToJSON PostLaunchActions where+ toJSON PostLaunchActions' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("cloudWatchLogGroupName" Data..=)+ Prelude.<$> cloudWatchLogGroupName,+ ("deployment" Data..=) Prelude.<$> deployment,+ ("s3LogBucket" Data..=) Prelude.<$> s3LogBucket,+ ("s3OutputKeyPrefix" Data..=)+ Prelude.<$> s3OutputKeyPrefix,+ ("ssmDocuments" Data..=) Prelude.<$> ssmDocuments+ ]+ )
+ gen/Amazonka/MGN/Types/PostLaunchActionsDeploymentType.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.MGN.Types.PostLaunchActionsDeploymentType+-- 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.MGN.Types.PostLaunchActionsDeploymentType+ ( PostLaunchActionsDeploymentType+ ( ..,+ PostLaunchActionsDeploymentType_CUTOVER_ONLY,+ PostLaunchActionsDeploymentType_TEST_AND_CUTOVER,+ PostLaunchActionsDeploymentType_TEST_ONLY+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype PostLaunchActionsDeploymentType = PostLaunchActionsDeploymentType'+ { fromPostLaunchActionsDeploymentType ::+ 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 PostLaunchActionsDeploymentType_CUTOVER_ONLY :: PostLaunchActionsDeploymentType+pattern PostLaunchActionsDeploymentType_CUTOVER_ONLY = PostLaunchActionsDeploymentType' "CUTOVER_ONLY"++pattern PostLaunchActionsDeploymentType_TEST_AND_CUTOVER :: PostLaunchActionsDeploymentType+pattern PostLaunchActionsDeploymentType_TEST_AND_CUTOVER = PostLaunchActionsDeploymentType' "TEST_AND_CUTOVER"++pattern PostLaunchActionsDeploymentType_TEST_ONLY :: PostLaunchActionsDeploymentType+pattern PostLaunchActionsDeploymentType_TEST_ONLY = PostLaunchActionsDeploymentType' "TEST_ONLY"++{-# COMPLETE+ PostLaunchActionsDeploymentType_CUTOVER_ONLY,+ PostLaunchActionsDeploymentType_TEST_AND_CUTOVER,+ PostLaunchActionsDeploymentType_TEST_ONLY,+ PostLaunchActionsDeploymentType'+ #-}
+ gen/Amazonka/MGN/Types/PostLaunchActionsStatus.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.MGN.Types.PostLaunchActionsStatus+-- 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.MGN.Types.PostLaunchActionsStatus where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types.JobPostLaunchActionsLaunchStatus+import qualified Amazonka.Prelude as Prelude++-- | Status of the Post Launch Actions running on the Test or Cutover+-- instance.+--+-- /See:/ 'newPostLaunchActionsStatus' smart constructor.+data PostLaunchActionsStatus = PostLaunchActionsStatus'+ { -- | List of Post Launch Action status.+ postLaunchActionsLaunchStatusList :: Prelude.Maybe [JobPostLaunchActionsLaunchStatus],+ -- | Time where the AWS Systems Manager was detected as running on the Test+ -- or Cutover instance.+ ssmAgentDiscoveryDatetime :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PostLaunchActionsStatus' 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:+--+-- 'postLaunchActionsLaunchStatusList', 'postLaunchActionsStatus_postLaunchActionsLaunchStatusList' - List of Post Launch Action status.+--+-- 'ssmAgentDiscoveryDatetime', 'postLaunchActionsStatus_ssmAgentDiscoveryDatetime' - Time where the AWS Systems Manager was detected as running on the Test+-- or Cutover instance.+newPostLaunchActionsStatus ::+ PostLaunchActionsStatus+newPostLaunchActionsStatus =+ PostLaunchActionsStatus'+ { postLaunchActionsLaunchStatusList =+ Prelude.Nothing,+ ssmAgentDiscoveryDatetime = Prelude.Nothing+ }++-- | List of Post Launch Action status.+postLaunchActionsStatus_postLaunchActionsLaunchStatusList :: Lens.Lens' PostLaunchActionsStatus (Prelude.Maybe [JobPostLaunchActionsLaunchStatus])+postLaunchActionsStatus_postLaunchActionsLaunchStatusList = Lens.lens (\PostLaunchActionsStatus' {postLaunchActionsLaunchStatusList} -> postLaunchActionsLaunchStatusList) (\s@PostLaunchActionsStatus' {} a -> s {postLaunchActionsLaunchStatusList = a} :: PostLaunchActionsStatus) Prelude.. Lens.mapping Lens.coerced++-- | Time where the AWS Systems Manager was detected as running on the Test+-- or Cutover instance.+postLaunchActionsStatus_ssmAgentDiscoveryDatetime :: Lens.Lens' PostLaunchActionsStatus (Prelude.Maybe Prelude.Text)+postLaunchActionsStatus_ssmAgentDiscoveryDatetime = Lens.lens (\PostLaunchActionsStatus' {ssmAgentDiscoveryDatetime} -> ssmAgentDiscoveryDatetime) (\s@PostLaunchActionsStatus' {} a -> s {ssmAgentDiscoveryDatetime = a} :: PostLaunchActionsStatus)++instance Data.FromJSON PostLaunchActionsStatus where+ parseJSON =+ Data.withObject+ "PostLaunchActionsStatus"+ ( \x ->+ PostLaunchActionsStatus'+ Prelude.<$> ( x+ Data..:? "postLaunchActionsLaunchStatusList"+ Data..!= Prelude.mempty+ )+ Prelude.<*> (x Data..:? "ssmAgentDiscoveryDatetime")+ )++instance Prelude.Hashable PostLaunchActionsStatus where+ hashWithSalt _salt PostLaunchActionsStatus' {..} =+ _salt+ `Prelude.hashWithSalt` postLaunchActionsLaunchStatusList+ `Prelude.hashWithSalt` ssmAgentDiscoveryDatetime++instance Prelude.NFData PostLaunchActionsStatus where+ rnf PostLaunchActionsStatus' {..} =+ Prelude.rnf postLaunchActionsLaunchStatusList+ `Prelude.seq` Prelude.rnf ssmAgentDiscoveryDatetime
+ gen/Amazonka/MGN/Types/ReplicationConfiguration.hs view
@@ -0,0 +1,257 @@+{-# 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.MGN.Types.ReplicationConfiguration+-- 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.MGN.Types.ReplicationConfiguration where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types.ReplicationConfigurationDataPlaneRouting+import Amazonka.MGN.Types.ReplicationConfigurationDefaultLargeStagingDiskType+import Amazonka.MGN.Types.ReplicationConfigurationEbsEncryption+import Amazonka.MGN.Types.ReplicationConfigurationReplicatedDisk+import qualified Amazonka.Prelude as Prelude++-- | /See:/ 'newReplicationConfiguration' smart constructor.+data ReplicationConfiguration = ReplicationConfiguration'+ { -- | Replication Configuration associate default Application Migration+ -- Service Security Group.+ associateDefaultSecurityGroup :: Prelude.Maybe Prelude.Bool,+ -- | Replication Configuration set bandwidth throttling.+ bandwidthThrottling :: Prelude.Maybe Prelude.Natural,+ -- | Replication Configuration create Public IP.+ createPublicIP :: Prelude.Maybe Prelude.Bool,+ -- | Replication Configuration data plane routing.+ dataPlaneRouting :: Prelude.Maybe ReplicationConfigurationDataPlaneRouting,+ -- | Replication Configuration use default large Staging Disks.+ defaultLargeStagingDiskType :: Prelude.Maybe ReplicationConfigurationDefaultLargeStagingDiskType,+ -- | Replication Configuration EBS encryption.+ ebsEncryption :: Prelude.Maybe ReplicationConfigurationEbsEncryption,+ -- | Replication Configuration EBS encryption key ARN.+ ebsEncryptionKeyArn :: Prelude.Maybe Prelude.Text,+ -- | Replication Configuration name.+ name :: Prelude.Maybe Prelude.Text,+ -- | Replication Configuration replicated disks.+ replicatedDisks :: Prelude.Maybe [ReplicationConfigurationReplicatedDisk],+ -- | Replication Configuration Replication Server instance type.+ replicationServerInstanceType :: Prelude.Maybe Prelude.Text,+ -- | Replication Configuration Replication Server Security Group IDs.+ replicationServersSecurityGroupsIDs :: Prelude.Maybe [Prelude.Text],+ -- | Replication Configuration Source Server ID.+ sourceServerID :: Prelude.Maybe Prelude.Text,+ -- | Replication Configuration Staging Area subnet ID.+ stagingAreaSubnetId :: Prelude.Maybe Prelude.Text,+ -- | Replication Configuration Staging Area tags.+ stagingAreaTags :: Prelude.Maybe (Data.Sensitive (Prelude.HashMap Prelude.Text Prelude.Text)),+ -- | Replication Configuration use Dedicated Replication Server.+ useDedicatedReplicationServer :: Prelude.Maybe Prelude.Bool+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ReplicationConfiguration' 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:+--+-- 'associateDefaultSecurityGroup', 'replicationConfiguration_associateDefaultSecurityGroup' - Replication Configuration associate default Application Migration+-- Service Security Group.+--+-- 'bandwidthThrottling', 'replicationConfiguration_bandwidthThrottling' - Replication Configuration set bandwidth throttling.+--+-- 'createPublicIP', 'replicationConfiguration_createPublicIP' - Replication Configuration create Public IP.+--+-- 'dataPlaneRouting', 'replicationConfiguration_dataPlaneRouting' - Replication Configuration data plane routing.+--+-- 'defaultLargeStagingDiskType', 'replicationConfiguration_defaultLargeStagingDiskType' - Replication Configuration use default large Staging Disks.+--+-- 'ebsEncryption', 'replicationConfiguration_ebsEncryption' - Replication Configuration EBS encryption.+--+-- 'ebsEncryptionKeyArn', 'replicationConfiguration_ebsEncryptionKeyArn' - Replication Configuration EBS encryption key ARN.+--+-- 'name', 'replicationConfiguration_name' - Replication Configuration name.+--+-- 'replicatedDisks', 'replicationConfiguration_replicatedDisks' - Replication Configuration replicated disks.+--+-- 'replicationServerInstanceType', 'replicationConfiguration_replicationServerInstanceType' - Replication Configuration Replication Server instance type.+--+-- 'replicationServersSecurityGroupsIDs', 'replicationConfiguration_replicationServersSecurityGroupsIDs' - Replication Configuration Replication Server Security Group IDs.+--+-- 'sourceServerID', 'replicationConfiguration_sourceServerID' - Replication Configuration Source Server ID.+--+-- 'stagingAreaSubnetId', 'replicationConfiguration_stagingAreaSubnetId' - Replication Configuration Staging Area subnet ID.+--+-- 'stagingAreaTags', 'replicationConfiguration_stagingAreaTags' - Replication Configuration Staging Area tags.+--+-- 'useDedicatedReplicationServer', 'replicationConfiguration_useDedicatedReplicationServer' - Replication Configuration use Dedicated Replication Server.+newReplicationConfiguration ::+ ReplicationConfiguration+newReplicationConfiguration =+ ReplicationConfiguration'+ { associateDefaultSecurityGroup =+ Prelude.Nothing,+ bandwidthThrottling = Prelude.Nothing,+ createPublicIP = Prelude.Nothing,+ dataPlaneRouting = Prelude.Nothing,+ defaultLargeStagingDiskType = Prelude.Nothing,+ ebsEncryption = Prelude.Nothing,+ ebsEncryptionKeyArn = Prelude.Nothing,+ name = Prelude.Nothing,+ replicatedDisks = Prelude.Nothing,+ replicationServerInstanceType = Prelude.Nothing,+ replicationServersSecurityGroupsIDs =+ Prelude.Nothing,+ sourceServerID = Prelude.Nothing,+ stagingAreaSubnetId = Prelude.Nothing,+ stagingAreaTags = Prelude.Nothing,+ useDedicatedReplicationServer = Prelude.Nothing+ }++-- | Replication Configuration associate default Application Migration+-- Service Security Group.+replicationConfiguration_associateDefaultSecurityGroup :: Lens.Lens' ReplicationConfiguration (Prelude.Maybe Prelude.Bool)+replicationConfiguration_associateDefaultSecurityGroup = Lens.lens (\ReplicationConfiguration' {associateDefaultSecurityGroup} -> associateDefaultSecurityGroup) (\s@ReplicationConfiguration' {} a -> s {associateDefaultSecurityGroup = a} :: ReplicationConfiguration)++-- | Replication Configuration set bandwidth throttling.+replicationConfiguration_bandwidthThrottling :: Lens.Lens' ReplicationConfiguration (Prelude.Maybe Prelude.Natural)+replicationConfiguration_bandwidthThrottling = Lens.lens (\ReplicationConfiguration' {bandwidthThrottling} -> bandwidthThrottling) (\s@ReplicationConfiguration' {} a -> s {bandwidthThrottling = a} :: ReplicationConfiguration)++-- | Replication Configuration create Public IP.+replicationConfiguration_createPublicIP :: Lens.Lens' ReplicationConfiguration (Prelude.Maybe Prelude.Bool)+replicationConfiguration_createPublicIP = Lens.lens (\ReplicationConfiguration' {createPublicIP} -> createPublicIP) (\s@ReplicationConfiguration' {} a -> s {createPublicIP = a} :: ReplicationConfiguration)++-- | Replication Configuration data plane routing.+replicationConfiguration_dataPlaneRouting :: Lens.Lens' ReplicationConfiguration (Prelude.Maybe ReplicationConfigurationDataPlaneRouting)+replicationConfiguration_dataPlaneRouting = Lens.lens (\ReplicationConfiguration' {dataPlaneRouting} -> dataPlaneRouting) (\s@ReplicationConfiguration' {} a -> s {dataPlaneRouting = a} :: ReplicationConfiguration)++-- | Replication Configuration use default large Staging Disks.+replicationConfiguration_defaultLargeStagingDiskType :: Lens.Lens' ReplicationConfiguration (Prelude.Maybe ReplicationConfigurationDefaultLargeStagingDiskType)+replicationConfiguration_defaultLargeStagingDiskType = Lens.lens (\ReplicationConfiguration' {defaultLargeStagingDiskType} -> defaultLargeStagingDiskType) (\s@ReplicationConfiguration' {} a -> s {defaultLargeStagingDiskType = a} :: ReplicationConfiguration)++-- | Replication Configuration EBS encryption.+replicationConfiguration_ebsEncryption :: Lens.Lens' ReplicationConfiguration (Prelude.Maybe ReplicationConfigurationEbsEncryption)+replicationConfiguration_ebsEncryption = Lens.lens (\ReplicationConfiguration' {ebsEncryption} -> ebsEncryption) (\s@ReplicationConfiguration' {} a -> s {ebsEncryption = a} :: ReplicationConfiguration)++-- | Replication Configuration EBS encryption key ARN.+replicationConfiguration_ebsEncryptionKeyArn :: Lens.Lens' ReplicationConfiguration (Prelude.Maybe Prelude.Text)+replicationConfiguration_ebsEncryptionKeyArn = Lens.lens (\ReplicationConfiguration' {ebsEncryptionKeyArn} -> ebsEncryptionKeyArn) (\s@ReplicationConfiguration' {} a -> s {ebsEncryptionKeyArn = a} :: ReplicationConfiguration)++-- | Replication Configuration name.+replicationConfiguration_name :: Lens.Lens' ReplicationConfiguration (Prelude.Maybe Prelude.Text)+replicationConfiguration_name = Lens.lens (\ReplicationConfiguration' {name} -> name) (\s@ReplicationConfiguration' {} a -> s {name = a} :: ReplicationConfiguration)++-- | Replication Configuration replicated disks.+replicationConfiguration_replicatedDisks :: Lens.Lens' ReplicationConfiguration (Prelude.Maybe [ReplicationConfigurationReplicatedDisk])+replicationConfiguration_replicatedDisks = Lens.lens (\ReplicationConfiguration' {replicatedDisks} -> replicatedDisks) (\s@ReplicationConfiguration' {} a -> s {replicatedDisks = a} :: ReplicationConfiguration) Prelude.. Lens.mapping Lens.coerced++-- | Replication Configuration Replication Server instance type.+replicationConfiguration_replicationServerInstanceType :: Lens.Lens' ReplicationConfiguration (Prelude.Maybe Prelude.Text)+replicationConfiguration_replicationServerInstanceType = Lens.lens (\ReplicationConfiguration' {replicationServerInstanceType} -> replicationServerInstanceType) (\s@ReplicationConfiguration' {} a -> s {replicationServerInstanceType = a} :: ReplicationConfiguration)++-- | Replication Configuration Replication Server Security Group IDs.+replicationConfiguration_replicationServersSecurityGroupsIDs :: Lens.Lens' ReplicationConfiguration (Prelude.Maybe [Prelude.Text])+replicationConfiguration_replicationServersSecurityGroupsIDs = Lens.lens (\ReplicationConfiguration' {replicationServersSecurityGroupsIDs} -> replicationServersSecurityGroupsIDs) (\s@ReplicationConfiguration' {} a -> s {replicationServersSecurityGroupsIDs = a} :: ReplicationConfiguration) Prelude.. Lens.mapping Lens.coerced++-- | Replication Configuration Source Server ID.+replicationConfiguration_sourceServerID :: Lens.Lens' ReplicationConfiguration (Prelude.Maybe Prelude.Text)+replicationConfiguration_sourceServerID = Lens.lens (\ReplicationConfiguration' {sourceServerID} -> sourceServerID) (\s@ReplicationConfiguration' {} a -> s {sourceServerID = a} :: ReplicationConfiguration)++-- | Replication Configuration Staging Area subnet ID.+replicationConfiguration_stagingAreaSubnetId :: Lens.Lens' ReplicationConfiguration (Prelude.Maybe Prelude.Text)+replicationConfiguration_stagingAreaSubnetId = Lens.lens (\ReplicationConfiguration' {stagingAreaSubnetId} -> stagingAreaSubnetId) (\s@ReplicationConfiguration' {} a -> s {stagingAreaSubnetId = a} :: ReplicationConfiguration)++-- | Replication Configuration Staging Area tags.+replicationConfiguration_stagingAreaTags :: Lens.Lens' ReplicationConfiguration (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+replicationConfiguration_stagingAreaTags = Lens.lens (\ReplicationConfiguration' {stagingAreaTags} -> stagingAreaTags) (\s@ReplicationConfiguration' {} a -> s {stagingAreaTags = a} :: ReplicationConfiguration) Prelude.. Lens.mapping (Data._Sensitive Prelude.. Lens.coerced)++-- | Replication Configuration use Dedicated Replication Server.+replicationConfiguration_useDedicatedReplicationServer :: Lens.Lens' ReplicationConfiguration (Prelude.Maybe Prelude.Bool)+replicationConfiguration_useDedicatedReplicationServer = Lens.lens (\ReplicationConfiguration' {useDedicatedReplicationServer} -> useDedicatedReplicationServer) (\s@ReplicationConfiguration' {} a -> s {useDedicatedReplicationServer = a} :: ReplicationConfiguration)++instance Data.FromJSON ReplicationConfiguration where+ parseJSON =+ Data.withObject+ "ReplicationConfiguration"+ ( \x ->+ ReplicationConfiguration'+ Prelude.<$> (x Data..:? "associateDefaultSecurityGroup")+ Prelude.<*> (x Data..:? "bandwidthThrottling")+ Prelude.<*> (x Data..:? "createPublicIP")+ Prelude.<*> (x Data..:? "dataPlaneRouting")+ Prelude.<*> (x Data..:? "defaultLargeStagingDiskType")+ Prelude.<*> (x Data..:? "ebsEncryption")+ Prelude.<*> (x Data..:? "ebsEncryptionKeyArn")+ Prelude.<*> (x Data..:? "name")+ Prelude.<*> ( x+ Data..:? "replicatedDisks"+ Data..!= Prelude.mempty+ )+ Prelude.<*> (x Data..:? "replicationServerInstanceType")+ Prelude.<*> ( x+ Data..:? "replicationServersSecurityGroupsIDs"+ Data..!= Prelude.mempty+ )+ Prelude.<*> (x Data..:? "sourceServerID")+ Prelude.<*> (x Data..:? "stagingAreaSubnetId")+ Prelude.<*> ( x+ Data..:? "stagingAreaTags"+ Data..!= Prelude.mempty+ )+ Prelude.<*> (x Data..:? "useDedicatedReplicationServer")+ )++instance Prelude.Hashable ReplicationConfiguration where+ hashWithSalt _salt ReplicationConfiguration' {..} =+ _salt+ `Prelude.hashWithSalt` associateDefaultSecurityGroup+ `Prelude.hashWithSalt` bandwidthThrottling+ `Prelude.hashWithSalt` createPublicIP+ `Prelude.hashWithSalt` dataPlaneRouting+ `Prelude.hashWithSalt` defaultLargeStagingDiskType+ `Prelude.hashWithSalt` ebsEncryption+ `Prelude.hashWithSalt` ebsEncryptionKeyArn+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` replicatedDisks+ `Prelude.hashWithSalt` replicationServerInstanceType+ `Prelude.hashWithSalt` replicationServersSecurityGroupsIDs+ `Prelude.hashWithSalt` sourceServerID+ `Prelude.hashWithSalt` stagingAreaSubnetId+ `Prelude.hashWithSalt` stagingAreaTags+ `Prelude.hashWithSalt` useDedicatedReplicationServer++instance Prelude.NFData ReplicationConfiguration where+ rnf ReplicationConfiguration' {..} =+ Prelude.rnf associateDefaultSecurityGroup+ `Prelude.seq` Prelude.rnf bandwidthThrottling+ `Prelude.seq` Prelude.rnf createPublicIP+ `Prelude.seq` Prelude.rnf dataPlaneRouting+ `Prelude.seq` Prelude.rnf defaultLargeStagingDiskType+ `Prelude.seq` Prelude.rnf ebsEncryption+ `Prelude.seq` Prelude.rnf ebsEncryptionKeyArn+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf replicatedDisks+ `Prelude.seq` Prelude.rnf replicationServerInstanceType+ `Prelude.seq` Prelude.rnf replicationServersSecurityGroupsIDs+ `Prelude.seq` Prelude.rnf sourceServerID+ `Prelude.seq` Prelude.rnf stagingAreaSubnetId+ `Prelude.seq` Prelude.rnf stagingAreaTags+ `Prelude.seq` Prelude.rnf+ useDedicatedReplicationServer
+ gen/Amazonka/MGN/Types/ReplicationConfigurationDataPlaneRouting.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.MGN.Types.ReplicationConfigurationDataPlaneRouting+-- 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.MGN.Types.ReplicationConfigurationDataPlaneRouting+ ( ReplicationConfigurationDataPlaneRouting+ ( ..,+ ReplicationConfigurationDataPlaneRouting_PRIVATE_IP,+ ReplicationConfigurationDataPlaneRouting_PUBLIC_IP+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ReplicationConfigurationDataPlaneRouting = ReplicationConfigurationDataPlaneRouting'+ { fromReplicationConfigurationDataPlaneRouting ::+ 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 ReplicationConfigurationDataPlaneRouting_PRIVATE_IP :: ReplicationConfigurationDataPlaneRouting+pattern ReplicationConfigurationDataPlaneRouting_PRIVATE_IP = ReplicationConfigurationDataPlaneRouting' "PRIVATE_IP"++pattern ReplicationConfigurationDataPlaneRouting_PUBLIC_IP :: ReplicationConfigurationDataPlaneRouting+pattern ReplicationConfigurationDataPlaneRouting_PUBLIC_IP = ReplicationConfigurationDataPlaneRouting' "PUBLIC_IP"++{-# COMPLETE+ ReplicationConfigurationDataPlaneRouting_PRIVATE_IP,+ ReplicationConfigurationDataPlaneRouting_PUBLIC_IP,+ ReplicationConfigurationDataPlaneRouting'+ #-}
+ gen/Amazonka/MGN/Types/ReplicationConfigurationDefaultLargeStagingDiskType.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.MGN.Types.ReplicationConfigurationDefaultLargeStagingDiskType+-- 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.MGN.Types.ReplicationConfigurationDefaultLargeStagingDiskType+ ( ReplicationConfigurationDefaultLargeStagingDiskType+ ( ..,+ ReplicationConfigurationDefaultLargeStagingDiskType_GP2,+ ReplicationConfigurationDefaultLargeStagingDiskType_GP3,+ ReplicationConfigurationDefaultLargeStagingDiskType_ST1+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ReplicationConfigurationDefaultLargeStagingDiskType = ReplicationConfigurationDefaultLargeStagingDiskType'+ { fromReplicationConfigurationDefaultLargeStagingDiskType ::+ 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 ReplicationConfigurationDefaultLargeStagingDiskType_GP2 :: ReplicationConfigurationDefaultLargeStagingDiskType+pattern ReplicationConfigurationDefaultLargeStagingDiskType_GP2 = ReplicationConfigurationDefaultLargeStagingDiskType' "GP2"++pattern ReplicationConfigurationDefaultLargeStagingDiskType_GP3 :: ReplicationConfigurationDefaultLargeStagingDiskType+pattern ReplicationConfigurationDefaultLargeStagingDiskType_GP3 = ReplicationConfigurationDefaultLargeStagingDiskType' "GP3"++pattern ReplicationConfigurationDefaultLargeStagingDiskType_ST1 :: ReplicationConfigurationDefaultLargeStagingDiskType+pattern ReplicationConfigurationDefaultLargeStagingDiskType_ST1 = ReplicationConfigurationDefaultLargeStagingDiskType' "ST1"++{-# COMPLETE+ ReplicationConfigurationDefaultLargeStagingDiskType_GP2,+ ReplicationConfigurationDefaultLargeStagingDiskType_GP3,+ ReplicationConfigurationDefaultLargeStagingDiskType_ST1,+ ReplicationConfigurationDefaultLargeStagingDiskType'+ #-}
+ gen/Amazonka/MGN/Types/ReplicationConfigurationEbsEncryption.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.MGN.Types.ReplicationConfigurationEbsEncryption+-- 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.MGN.Types.ReplicationConfigurationEbsEncryption+ ( ReplicationConfigurationEbsEncryption+ ( ..,+ ReplicationConfigurationEbsEncryption_CUSTOM,+ ReplicationConfigurationEbsEncryption_DEFAULT+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ReplicationConfigurationEbsEncryption = ReplicationConfigurationEbsEncryption'+ { fromReplicationConfigurationEbsEncryption ::+ 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 ReplicationConfigurationEbsEncryption_CUSTOM :: ReplicationConfigurationEbsEncryption+pattern ReplicationConfigurationEbsEncryption_CUSTOM = ReplicationConfigurationEbsEncryption' "CUSTOM"++pattern ReplicationConfigurationEbsEncryption_DEFAULT :: ReplicationConfigurationEbsEncryption+pattern ReplicationConfigurationEbsEncryption_DEFAULT = ReplicationConfigurationEbsEncryption' "DEFAULT"++{-# COMPLETE+ ReplicationConfigurationEbsEncryption_CUSTOM,+ ReplicationConfigurationEbsEncryption_DEFAULT,+ ReplicationConfigurationEbsEncryption'+ #-}
+ gen/Amazonka/MGN/Types/ReplicationConfigurationReplicatedDisk.hs view
@@ -0,0 +1,149 @@+{-# 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.MGN.Types.ReplicationConfigurationReplicatedDisk+-- 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.MGN.Types.ReplicationConfigurationReplicatedDisk where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types.ReplicationConfigurationReplicatedDiskStagingDiskType+import qualified Amazonka.Prelude as Prelude++-- | Replication Configuration replicated disk.+--+-- /See:/ 'newReplicationConfigurationReplicatedDisk' smart constructor.+data ReplicationConfigurationReplicatedDisk = ReplicationConfigurationReplicatedDisk'+ { -- | Replication Configuration replicated disk device name.+ deviceName :: Prelude.Maybe Prelude.Text,+ -- | Replication Configuration replicated disk IOPs.+ iops :: Prelude.Maybe Prelude.Natural,+ -- | Replication Configuration replicated disk boot disk.+ isBootDisk :: Prelude.Maybe Prelude.Bool,+ -- | Replication Configuration replicated disk staging disk type.+ stagingDiskType :: Prelude.Maybe ReplicationConfigurationReplicatedDiskStagingDiskType,+ -- | Replication Configuration replicated disk throughput.+ throughput :: Prelude.Maybe Prelude.Natural+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ReplicationConfigurationReplicatedDisk' 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:+--+-- 'deviceName', 'replicationConfigurationReplicatedDisk_deviceName' - Replication Configuration replicated disk device name.+--+-- 'iops', 'replicationConfigurationReplicatedDisk_iops' - Replication Configuration replicated disk IOPs.+--+-- 'isBootDisk', 'replicationConfigurationReplicatedDisk_isBootDisk' - Replication Configuration replicated disk boot disk.+--+-- 'stagingDiskType', 'replicationConfigurationReplicatedDisk_stagingDiskType' - Replication Configuration replicated disk staging disk type.+--+-- 'throughput', 'replicationConfigurationReplicatedDisk_throughput' - Replication Configuration replicated disk throughput.+newReplicationConfigurationReplicatedDisk ::+ ReplicationConfigurationReplicatedDisk+newReplicationConfigurationReplicatedDisk =+ ReplicationConfigurationReplicatedDisk'+ { deviceName =+ Prelude.Nothing,+ iops = Prelude.Nothing,+ isBootDisk = Prelude.Nothing,+ stagingDiskType = Prelude.Nothing,+ throughput = Prelude.Nothing+ }++-- | Replication Configuration replicated disk device name.+replicationConfigurationReplicatedDisk_deviceName :: Lens.Lens' ReplicationConfigurationReplicatedDisk (Prelude.Maybe Prelude.Text)+replicationConfigurationReplicatedDisk_deviceName = Lens.lens (\ReplicationConfigurationReplicatedDisk' {deviceName} -> deviceName) (\s@ReplicationConfigurationReplicatedDisk' {} a -> s {deviceName = a} :: ReplicationConfigurationReplicatedDisk)++-- | Replication Configuration replicated disk IOPs.+replicationConfigurationReplicatedDisk_iops :: Lens.Lens' ReplicationConfigurationReplicatedDisk (Prelude.Maybe Prelude.Natural)+replicationConfigurationReplicatedDisk_iops = Lens.lens (\ReplicationConfigurationReplicatedDisk' {iops} -> iops) (\s@ReplicationConfigurationReplicatedDisk' {} a -> s {iops = a} :: ReplicationConfigurationReplicatedDisk)++-- | Replication Configuration replicated disk boot disk.+replicationConfigurationReplicatedDisk_isBootDisk :: Lens.Lens' ReplicationConfigurationReplicatedDisk (Prelude.Maybe Prelude.Bool)+replicationConfigurationReplicatedDisk_isBootDisk = Lens.lens (\ReplicationConfigurationReplicatedDisk' {isBootDisk} -> isBootDisk) (\s@ReplicationConfigurationReplicatedDisk' {} a -> s {isBootDisk = a} :: ReplicationConfigurationReplicatedDisk)++-- | Replication Configuration replicated disk staging disk type.+replicationConfigurationReplicatedDisk_stagingDiskType :: Lens.Lens' ReplicationConfigurationReplicatedDisk (Prelude.Maybe ReplicationConfigurationReplicatedDiskStagingDiskType)+replicationConfigurationReplicatedDisk_stagingDiskType = Lens.lens (\ReplicationConfigurationReplicatedDisk' {stagingDiskType} -> stagingDiskType) (\s@ReplicationConfigurationReplicatedDisk' {} a -> s {stagingDiskType = a} :: ReplicationConfigurationReplicatedDisk)++-- | Replication Configuration replicated disk throughput.+replicationConfigurationReplicatedDisk_throughput :: Lens.Lens' ReplicationConfigurationReplicatedDisk (Prelude.Maybe Prelude.Natural)+replicationConfigurationReplicatedDisk_throughput = Lens.lens (\ReplicationConfigurationReplicatedDisk' {throughput} -> throughput) (\s@ReplicationConfigurationReplicatedDisk' {} a -> s {throughput = a} :: ReplicationConfigurationReplicatedDisk)++instance+ Data.FromJSON+ ReplicationConfigurationReplicatedDisk+ where+ parseJSON =+ Data.withObject+ "ReplicationConfigurationReplicatedDisk"+ ( \x ->+ ReplicationConfigurationReplicatedDisk'+ Prelude.<$> (x Data..:? "deviceName")+ Prelude.<*> (x Data..:? "iops")+ Prelude.<*> (x Data..:? "isBootDisk")+ Prelude.<*> (x Data..:? "stagingDiskType")+ Prelude.<*> (x Data..:? "throughput")+ )++instance+ Prelude.Hashable+ ReplicationConfigurationReplicatedDisk+ where+ hashWithSalt+ _salt+ ReplicationConfigurationReplicatedDisk' {..} =+ _salt+ `Prelude.hashWithSalt` deviceName+ `Prelude.hashWithSalt` iops+ `Prelude.hashWithSalt` isBootDisk+ `Prelude.hashWithSalt` stagingDiskType+ `Prelude.hashWithSalt` throughput++instance+ Prelude.NFData+ ReplicationConfigurationReplicatedDisk+ where+ rnf ReplicationConfigurationReplicatedDisk' {..} =+ Prelude.rnf deviceName+ `Prelude.seq` Prelude.rnf iops+ `Prelude.seq` Prelude.rnf isBootDisk+ `Prelude.seq` Prelude.rnf stagingDiskType+ `Prelude.seq` Prelude.rnf throughput++instance+ Data.ToJSON+ ReplicationConfigurationReplicatedDisk+ where+ toJSON ReplicationConfigurationReplicatedDisk' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("deviceName" Data..=) Prelude.<$> deviceName,+ ("iops" Data..=) Prelude.<$> iops,+ ("isBootDisk" Data..=) Prelude.<$> isBootDisk,+ ("stagingDiskType" Data..=)+ Prelude.<$> stagingDiskType,+ ("throughput" Data..=) Prelude.<$> throughput+ ]+ )
+ gen/Amazonka/MGN/Types/ReplicationConfigurationReplicatedDiskStagingDiskType.hs view
@@ -0,0 +1,101 @@+{-# 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.MGN.Types.ReplicationConfigurationReplicatedDiskStagingDiskType+-- 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.MGN.Types.ReplicationConfigurationReplicatedDiskStagingDiskType+ ( ReplicationConfigurationReplicatedDiskStagingDiskType+ ( ..,+ ReplicationConfigurationReplicatedDiskStagingDiskType_AUTO,+ ReplicationConfigurationReplicatedDiskStagingDiskType_GP2,+ ReplicationConfigurationReplicatedDiskStagingDiskType_GP3,+ ReplicationConfigurationReplicatedDiskStagingDiskType_IO1,+ ReplicationConfigurationReplicatedDiskStagingDiskType_IO2,+ ReplicationConfigurationReplicatedDiskStagingDiskType_SC1,+ ReplicationConfigurationReplicatedDiskStagingDiskType_ST1,+ ReplicationConfigurationReplicatedDiskStagingDiskType_STANDARD+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ReplicationConfigurationReplicatedDiskStagingDiskType = ReplicationConfigurationReplicatedDiskStagingDiskType'+ { fromReplicationConfigurationReplicatedDiskStagingDiskType ::+ 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 ReplicationConfigurationReplicatedDiskStagingDiskType_AUTO :: ReplicationConfigurationReplicatedDiskStagingDiskType+pattern ReplicationConfigurationReplicatedDiskStagingDiskType_AUTO = ReplicationConfigurationReplicatedDiskStagingDiskType' "AUTO"++pattern ReplicationConfigurationReplicatedDiskStagingDiskType_GP2 :: ReplicationConfigurationReplicatedDiskStagingDiskType+pattern ReplicationConfigurationReplicatedDiskStagingDiskType_GP2 = ReplicationConfigurationReplicatedDiskStagingDiskType' "GP2"++pattern ReplicationConfigurationReplicatedDiskStagingDiskType_GP3 :: ReplicationConfigurationReplicatedDiskStagingDiskType+pattern ReplicationConfigurationReplicatedDiskStagingDiskType_GP3 = ReplicationConfigurationReplicatedDiskStagingDiskType' "GP3"++pattern ReplicationConfigurationReplicatedDiskStagingDiskType_IO1 :: ReplicationConfigurationReplicatedDiskStagingDiskType+pattern ReplicationConfigurationReplicatedDiskStagingDiskType_IO1 = ReplicationConfigurationReplicatedDiskStagingDiskType' "IO1"++pattern ReplicationConfigurationReplicatedDiskStagingDiskType_IO2 :: ReplicationConfigurationReplicatedDiskStagingDiskType+pattern ReplicationConfigurationReplicatedDiskStagingDiskType_IO2 = ReplicationConfigurationReplicatedDiskStagingDiskType' "IO2"++pattern ReplicationConfigurationReplicatedDiskStagingDiskType_SC1 :: ReplicationConfigurationReplicatedDiskStagingDiskType+pattern ReplicationConfigurationReplicatedDiskStagingDiskType_SC1 = ReplicationConfigurationReplicatedDiskStagingDiskType' "SC1"++pattern ReplicationConfigurationReplicatedDiskStagingDiskType_ST1 :: ReplicationConfigurationReplicatedDiskStagingDiskType+pattern ReplicationConfigurationReplicatedDiskStagingDiskType_ST1 = ReplicationConfigurationReplicatedDiskStagingDiskType' "ST1"++pattern ReplicationConfigurationReplicatedDiskStagingDiskType_STANDARD :: ReplicationConfigurationReplicatedDiskStagingDiskType+pattern ReplicationConfigurationReplicatedDiskStagingDiskType_STANDARD = ReplicationConfigurationReplicatedDiskStagingDiskType' "STANDARD"++{-# COMPLETE+ ReplicationConfigurationReplicatedDiskStagingDiskType_AUTO,+ ReplicationConfigurationReplicatedDiskStagingDiskType_GP2,+ ReplicationConfigurationReplicatedDiskStagingDiskType_GP3,+ ReplicationConfigurationReplicatedDiskStagingDiskType_IO1,+ ReplicationConfigurationReplicatedDiskStagingDiskType_IO2,+ ReplicationConfigurationReplicatedDiskStagingDiskType_SC1,+ ReplicationConfigurationReplicatedDiskStagingDiskType_ST1,+ ReplicationConfigurationReplicatedDiskStagingDiskType_STANDARD,+ ReplicationConfigurationReplicatedDiskStagingDiskType'+ #-}
+ gen/Amazonka/MGN/Types/ReplicationConfigurationTemplate.hs view
@@ -0,0 +1,272 @@+{-# 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.MGN.Types.ReplicationConfigurationTemplate+-- 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.MGN.Types.ReplicationConfigurationTemplate where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types.ReplicationConfigurationDataPlaneRouting+import Amazonka.MGN.Types.ReplicationConfigurationDefaultLargeStagingDiskType+import Amazonka.MGN.Types.ReplicationConfigurationEbsEncryption+import qualified Amazonka.Prelude as Prelude++-- | /See:/ 'newReplicationConfigurationTemplate' smart constructor.+data ReplicationConfigurationTemplate = ReplicationConfigurationTemplate'+ { -- | Replication Configuration template ARN.+ arn :: Prelude.Maybe Prelude.Text,+ -- | Replication Configuration template associate default Application+ -- Migration Service Security group.+ associateDefaultSecurityGroup :: Prelude.Maybe Prelude.Bool,+ -- | Replication Configuration template bandwidth throttling.+ bandwidthThrottling :: Prelude.Maybe Prelude.Natural,+ -- | Replication Configuration template create Public IP.+ createPublicIP :: Prelude.Maybe Prelude.Bool,+ -- | Replication Configuration template data plane routing.+ dataPlaneRouting :: Prelude.Maybe ReplicationConfigurationDataPlaneRouting,+ -- | Replication Configuration template use default large Staging Disk type.+ defaultLargeStagingDiskType :: Prelude.Maybe ReplicationConfigurationDefaultLargeStagingDiskType,+ -- | Replication Configuration template EBS encryption.+ ebsEncryption :: Prelude.Maybe ReplicationConfigurationEbsEncryption,+ -- | Replication Configuration template EBS encryption key ARN.+ ebsEncryptionKeyArn :: Prelude.Maybe Prelude.Text,+ -- | Replication Configuration template server instance type.+ replicationServerInstanceType :: Prelude.Maybe Prelude.Text,+ -- | Replication Configuration template server Security Groups IDs.+ replicationServersSecurityGroupsIDs :: Prelude.Maybe [Prelude.Text],+ -- | Replication Configuration template Staging Area subnet ID.+ stagingAreaSubnetId :: Prelude.Maybe Prelude.Text,+ -- | Replication Configuration template Staging Area Tags.+ stagingAreaTags :: Prelude.Maybe (Data.Sensitive (Prelude.HashMap Prelude.Text Prelude.Text)),+ -- | Replication Configuration template Tags.+ tags :: Prelude.Maybe (Data.Sensitive (Prelude.HashMap Prelude.Text Prelude.Text)),+ -- | Replication Configuration template use Dedicated Replication Server.+ useDedicatedReplicationServer :: Prelude.Maybe Prelude.Bool,+ -- | Replication Configuration template ID.+ replicationConfigurationTemplateID :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ReplicationConfigurationTemplate' 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', 'replicationConfigurationTemplate_arn' - Replication Configuration template ARN.+--+-- 'associateDefaultSecurityGroup', 'replicationConfigurationTemplate_associateDefaultSecurityGroup' - Replication Configuration template associate default Application+-- Migration Service Security group.+--+-- 'bandwidthThrottling', 'replicationConfigurationTemplate_bandwidthThrottling' - Replication Configuration template bandwidth throttling.+--+-- 'createPublicIP', 'replicationConfigurationTemplate_createPublicIP' - Replication Configuration template create Public IP.+--+-- 'dataPlaneRouting', 'replicationConfigurationTemplate_dataPlaneRouting' - Replication Configuration template data plane routing.+--+-- 'defaultLargeStagingDiskType', 'replicationConfigurationTemplate_defaultLargeStagingDiskType' - Replication Configuration template use default large Staging Disk type.+--+-- 'ebsEncryption', 'replicationConfigurationTemplate_ebsEncryption' - Replication Configuration template EBS encryption.+--+-- 'ebsEncryptionKeyArn', 'replicationConfigurationTemplate_ebsEncryptionKeyArn' - Replication Configuration template EBS encryption key ARN.+--+-- 'replicationServerInstanceType', 'replicationConfigurationTemplate_replicationServerInstanceType' - Replication Configuration template server instance type.+--+-- 'replicationServersSecurityGroupsIDs', 'replicationConfigurationTemplate_replicationServersSecurityGroupsIDs' - Replication Configuration template server Security Groups IDs.+--+-- 'stagingAreaSubnetId', 'replicationConfigurationTemplate_stagingAreaSubnetId' - Replication Configuration template Staging Area subnet ID.+--+-- 'stagingAreaTags', 'replicationConfigurationTemplate_stagingAreaTags' - Replication Configuration template Staging Area Tags.+--+-- 'tags', 'replicationConfigurationTemplate_tags' - Replication Configuration template Tags.+--+-- 'useDedicatedReplicationServer', 'replicationConfigurationTemplate_useDedicatedReplicationServer' - Replication Configuration template use Dedicated Replication Server.+--+-- 'replicationConfigurationTemplateID', 'replicationConfigurationTemplate_replicationConfigurationTemplateID' - Replication Configuration template ID.+newReplicationConfigurationTemplate ::+ -- | 'replicationConfigurationTemplateID'+ Prelude.Text ->+ ReplicationConfigurationTemplate+newReplicationConfigurationTemplate+ pReplicationConfigurationTemplateID_ =+ ReplicationConfigurationTemplate'+ { arn =+ Prelude.Nothing,+ associateDefaultSecurityGroup =+ Prelude.Nothing,+ bandwidthThrottling = Prelude.Nothing,+ createPublicIP = Prelude.Nothing,+ dataPlaneRouting = Prelude.Nothing,+ defaultLargeStagingDiskType =+ Prelude.Nothing,+ ebsEncryption = Prelude.Nothing,+ ebsEncryptionKeyArn = Prelude.Nothing,+ replicationServerInstanceType =+ Prelude.Nothing,+ replicationServersSecurityGroupsIDs =+ Prelude.Nothing,+ stagingAreaSubnetId = Prelude.Nothing,+ stagingAreaTags = Prelude.Nothing,+ tags = Prelude.Nothing,+ useDedicatedReplicationServer =+ Prelude.Nothing,+ replicationConfigurationTemplateID =+ pReplicationConfigurationTemplateID_+ }++-- | Replication Configuration template ARN.+replicationConfigurationTemplate_arn :: Lens.Lens' ReplicationConfigurationTemplate (Prelude.Maybe Prelude.Text)+replicationConfigurationTemplate_arn = Lens.lens (\ReplicationConfigurationTemplate' {arn} -> arn) (\s@ReplicationConfigurationTemplate' {} a -> s {arn = a} :: ReplicationConfigurationTemplate)++-- | Replication Configuration template associate default Application+-- Migration Service Security group.+replicationConfigurationTemplate_associateDefaultSecurityGroup :: Lens.Lens' ReplicationConfigurationTemplate (Prelude.Maybe Prelude.Bool)+replicationConfigurationTemplate_associateDefaultSecurityGroup = Lens.lens (\ReplicationConfigurationTemplate' {associateDefaultSecurityGroup} -> associateDefaultSecurityGroup) (\s@ReplicationConfigurationTemplate' {} a -> s {associateDefaultSecurityGroup = a} :: ReplicationConfigurationTemplate)++-- | Replication Configuration template bandwidth throttling.+replicationConfigurationTemplate_bandwidthThrottling :: Lens.Lens' ReplicationConfigurationTemplate (Prelude.Maybe Prelude.Natural)+replicationConfigurationTemplate_bandwidthThrottling = Lens.lens (\ReplicationConfigurationTemplate' {bandwidthThrottling} -> bandwidthThrottling) (\s@ReplicationConfigurationTemplate' {} a -> s {bandwidthThrottling = a} :: ReplicationConfigurationTemplate)++-- | Replication Configuration template create Public IP.+replicationConfigurationTemplate_createPublicIP :: Lens.Lens' ReplicationConfigurationTemplate (Prelude.Maybe Prelude.Bool)+replicationConfigurationTemplate_createPublicIP = Lens.lens (\ReplicationConfigurationTemplate' {createPublicIP} -> createPublicIP) (\s@ReplicationConfigurationTemplate' {} a -> s {createPublicIP = a} :: ReplicationConfigurationTemplate)++-- | Replication Configuration template data plane routing.+replicationConfigurationTemplate_dataPlaneRouting :: Lens.Lens' ReplicationConfigurationTemplate (Prelude.Maybe ReplicationConfigurationDataPlaneRouting)+replicationConfigurationTemplate_dataPlaneRouting = Lens.lens (\ReplicationConfigurationTemplate' {dataPlaneRouting} -> dataPlaneRouting) (\s@ReplicationConfigurationTemplate' {} a -> s {dataPlaneRouting = a} :: ReplicationConfigurationTemplate)++-- | Replication Configuration template use default large Staging Disk type.+replicationConfigurationTemplate_defaultLargeStagingDiskType :: Lens.Lens' ReplicationConfigurationTemplate (Prelude.Maybe ReplicationConfigurationDefaultLargeStagingDiskType)+replicationConfigurationTemplate_defaultLargeStagingDiskType = Lens.lens (\ReplicationConfigurationTemplate' {defaultLargeStagingDiskType} -> defaultLargeStagingDiskType) (\s@ReplicationConfigurationTemplate' {} a -> s {defaultLargeStagingDiskType = a} :: ReplicationConfigurationTemplate)++-- | Replication Configuration template EBS encryption.+replicationConfigurationTemplate_ebsEncryption :: Lens.Lens' ReplicationConfigurationTemplate (Prelude.Maybe ReplicationConfigurationEbsEncryption)+replicationConfigurationTemplate_ebsEncryption = Lens.lens (\ReplicationConfigurationTemplate' {ebsEncryption} -> ebsEncryption) (\s@ReplicationConfigurationTemplate' {} a -> s {ebsEncryption = a} :: ReplicationConfigurationTemplate)++-- | Replication Configuration template EBS encryption key ARN.+replicationConfigurationTemplate_ebsEncryptionKeyArn :: Lens.Lens' ReplicationConfigurationTemplate (Prelude.Maybe Prelude.Text)+replicationConfigurationTemplate_ebsEncryptionKeyArn = Lens.lens (\ReplicationConfigurationTemplate' {ebsEncryptionKeyArn} -> ebsEncryptionKeyArn) (\s@ReplicationConfigurationTemplate' {} a -> s {ebsEncryptionKeyArn = a} :: ReplicationConfigurationTemplate)++-- | Replication Configuration template server instance type.+replicationConfigurationTemplate_replicationServerInstanceType :: Lens.Lens' ReplicationConfigurationTemplate (Prelude.Maybe Prelude.Text)+replicationConfigurationTemplate_replicationServerInstanceType = Lens.lens (\ReplicationConfigurationTemplate' {replicationServerInstanceType} -> replicationServerInstanceType) (\s@ReplicationConfigurationTemplate' {} a -> s {replicationServerInstanceType = a} :: ReplicationConfigurationTemplate)++-- | Replication Configuration template server Security Groups IDs.+replicationConfigurationTemplate_replicationServersSecurityGroupsIDs :: Lens.Lens' ReplicationConfigurationTemplate (Prelude.Maybe [Prelude.Text])+replicationConfigurationTemplate_replicationServersSecurityGroupsIDs = Lens.lens (\ReplicationConfigurationTemplate' {replicationServersSecurityGroupsIDs} -> replicationServersSecurityGroupsIDs) (\s@ReplicationConfigurationTemplate' {} a -> s {replicationServersSecurityGroupsIDs = a} :: ReplicationConfigurationTemplate) Prelude.. Lens.mapping Lens.coerced++-- | Replication Configuration template Staging Area subnet ID.+replicationConfigurationTemplate_stagingAreaSubnetId :: Lens.Lens' ReplicationConfigurationTemplate (Prelude.Maybe Prelude.Text)+replicationConfigurationTemplate_stagingAreaSubnetId = Lens.lens (\ReplicationConfigurationTemplate' {stagingAreaSubnetId} -> stagingAreaSubnetId) (\s@ReplicationConfigurationTemplate' {} a -> s {stagingAreaSubnetId = a} :: ReplicationConfigurationTemplate)++-- | Replication Configuration template Staging Area Tags.+replicationConfigurationTemplate_stagingAreaTags :: Lens.Lens' ReplicationConfigurationTemplate (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+replicationConfigurationTemplate_stagingAreaTags = Lens.lens (\ReplicationConfigurationTemplate' {stagingAreaTags} -> stagingAreaTags) (\s@ReplicationConfigurationTemplate' {} a -> s {stagingAreaTags = a} :: ReplicationConfigurationTemplate) Prelude.. Lens.mapping (Data._Sensitive Prelude.. Lens.coerced)++-- | Replication Configuration template Tags.+replicationConfigurationTemplate_tags :: Lens.Lens' ReplicationConfigurationTemplate (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+replicationConfigurationTemplate_tags = Lens.lens (\ReplicationConfigurationTemplate' {tags} -> tags) (\s@ReplicationConfigurationTemplate' {} a -> s {tags = a} :: ReplicationConfigurationTemplate) Prelude.. Lens.mapping (Data._Sensitive Prelude.. Lens.coerced)++-- | Replication Configuration template use Dedicated Replication Server.+replicationConfigurationTemplate_useDedicatedReplicationServer :: Lens.Lens' ReplicationConfigurationTemplate (Prelude.Maybe Prelude.Bool)+replicationConfigurationTemplate_useDedicatedReplicationServer = Lens.lens (\ReplicationConfigurationTemplate' {useDedicatedReplicationServer} -> useDedicatedReplicationServer) (\s@ReplicationConfigurationTemplate' {} a -> s {useDedicatedReplicationServer = a} :: ReplicationConfigurationTemplate)++-- | Replication Configuration template ID.+replicationConfigurationTemplate_replicationConfigurationTemplateID :: Lens.Lens' ReplicationConfigurationTemplate Prelude.Text+replicationConfigurationTemplate_replicationConfigurationTemplateID = Lens.lens (\ReplicationConfigurationTemplate' {replicationConfigurationTemplateID} -> replicationConfigurationTemplateID) (\s@ReplicationConfigurationTemplate' {} a -> s {replicationConfigurationTemplateID = a} :: ReplicationConfigurationTemplate)++instance+ Data.FromJSON+ ReplicationConfigurationTemplate+ where+ parseJSON =+ Data.withObject+ "ReplicationConfigurationTemplate"+ ( \x ->+ ReplicationConfigurationTemplate'+ Prelude.<$> (x Data..:? "arn")+ Prelude.<*> (x Data..:? "associateDefaultSecurityGroup")+ Prelude.<*> (x Data..:? "bandwidthThrottling")+ Prelude.<*> (x Data..:? "createPublicIP")+ Prelude.<*> (x Data..:? "dataPlaneRouting")+ Prelude.<*> (x Data..:? "defaultLargeStagingDiskType")+ Prelude.<*> (x Data..:? "ebsEncryption")+ Prelude.<*> (x Data..:? "ebsEncryptionKeyArn")+ Prelude.<*> (x Data..:? "replicationServerInstanceType")+ Prelude.<*> ( x+ Data..:? "replicationServersSecurityGroupsIDs"+ Data..!= Prelude.mempty+ )+ Prelude.<*> (x Data..:? "stagingAreaSubnetId")+ Prelude.<*> ( x+ Data..:? "stagingAreaTags"+ Data..!= Prelude.mempty+ )+ Prelude.<*> (x Data..:? "tags" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "useDedicatedReplicationServer")+ Prelude.<*> (x Data..: "replicationConfigurationTemplateID")+ )++instance+ Prelude.Hashable+ ReplicationConfigurationTemplate+ where+ hashWithSalt+ _salt+ ReplicationConfigurationTemplate' {..} =+ _salt+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` associateDefaultSecurityGroup+ `Prelude.hashWithSalt` bandwidthThrottling+ `Prelude.hashWithSalt` createPublicIP+ `Prelude.hashWithSalt` dataPlaneRouting+ `Prelude.hashWithSalt` defaultLargeStagingDiskType+ `Prelude.hashWithSalt` ebsEncryption+ `Prelude.hashWithSalt` ebsEncryptionKeyArn+ `Prelude.hashWithSalt` replicationServerInstanceType+ `Prelude.hashWithSalt` replicationServersSecurityGroupsIDs+ `Prelude.hashWithSalt` stagingAreaSubnetId+ `Prelude.hashWithSalt` stagingAreaTags+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` useDedicatedReplicationServer+ `Prelude.hashWithSalt` replicationConfigurationTemplateID++instance+ Prelude.NFData+ ReplicationConfigurationTemplate+ where+ rnf ReplicationConfigurationTemplate' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf associateDefaultSecurityGroup+ `Prelude.seq` Prelude.rnf bandwidthThrottling+ `Prelude.seq` Prelude.rnf createPublicIP+ `Prelude.seq` Prelude.rnf dataPlaneRouting+ `Prelude.seq` Prelude.rnf defaultLargeStagingDiskType+ `Prelude.seq` Prelude.rnf ebsEncryption+ `Prelude.seq` Prelude.rnf ebsEncryptionKeyArn+ `Prelude.seq` Prelude.rnf replicationServerInstanceType+ `Prelude.seq` Prelude.rnf replicationServersSecurityGroupsIDs+ `Prelude.seq` Prelude.rnf stagingAreaSubnetId+ `Prelude.seq` Prelude.rnf stagingAreaTags+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf useDedicatedReplicationServer+ `Prelude.seq` Prelude.rnf+ replicationConfigurationTemplateID
+ gen/Amazonka/MGN/Types/ReplicationType.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.MGN.Types.ReplicationType+-- 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.MGN.Types.ReplicationType+ ( ReplicationType+ ( ..,+ ReplicationType_AGENT_BASED,+ ReplicationType_SNAPSHOT_SHIPPING+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ReplicationType = ReplicationType'+ { fromReplicationType ::+ 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 ReplicationType_AGENT_BASED :: ReplicationType+pattern ReplicationType_AGENT_BASED = ReplicationType' "AGENT_BASED"++pattern ReplicationType_SNAPSHOT_SHIPPING :: ReplicationType+pattern ReplicationType_SNAPSHOT_SHIPPING = ReplicationType' "SNAPSHOT_SHIPPING"++{-# COMPLETE+ ReplicationType_AGENT_BASED,+ ReplicationType_SNAPSHOT_SHIPPING,+ ReplicationType'+ #-}
+ gen/Amazonka/MGN/Types/SourceProperties.hs view
@@ -0,0 +1,164 @@+{-# 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.MGN.Types.SourceProperties+-- 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.MGN.Types.SourceProperties where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types.CPU+import Amazonka.MGN.Types.Disk+import Amazonka.MGN.Types.IdentificationHints+import Amazonka.MGN.Types.NetworkInterface+import Amazonka.MGN.Types.OS+import qualified Amazonka.Prelude as Prelude++-- | Source server properties.+--+-- /See:/ 'newSourceProperties' smart constructor.+data SourceProperties = SourceProperties'+ { -- | Source Server CPUs.+ cpus :: Prelude.Maybe [CPU],+ -- | Source Server disks.+ disks :: Prelude.Maybe [Disk],+ -- | Source server identification hints.+ identificationHints :: Prelude.Maybe IdentificationHints,+ -- | Source server last update date and time.+ lastUpdatedDateTime :: Prelude.Maybe Prelude.Text,+ -- | Source server network interfaces.+ networkInterfaces :: Prelude.Maybe [NetworkInterface],+ -- | Source server OS.+ os :: Prelude.Maybe OS,+ -- | Source server RAM in bytes.+ ramBytes :: Prelude.Maybe Prelude.Natural,+ -- | Source server recommended instance type.+ recommendedInstanceType :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SourceProperties' 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:+--+-- 'cpus', 'sourceProperties_cpus' - Source Server CPUs.+--+-- 'disks', 'sourceProperties_disks' - Source Server disks.+--+-- 'identificationHints', 'sourceProperties_identificationHints' - Source server identification hints.+--+-- 'lastUpdatedDateTime', 'sourceProperties_lastUpdatedDateTime' - Source server last update date and time.+--+-- 'networkInterfaces', 'sourceProperties_networkInterfaces' - Source server network interfaces.+--+-- 'os', 'sourceProperties_os' - Source server OS.+--+-- 'ramBytes', 'sourceProperties_ramBytes' - Source server RAM in bytes.+--+-- 'recommendedInstanceType', 'sourceProperties_recommendedInstanceType' - Source server recommended instance type.+newSourceProperties ::+ SourceProperties+newSourceProperties =+ SourceProperties'+ { cpus = Prelude.Nothing,+ disks = Prelude.Nothing,+ identificationHints = Prelude.Nothing,+ lastUpdatedDateTime = Prelude.Nothing,+ networkInterfaces = Prelude.Nothing,+ os = Prelude.Nothing,+ ramBytes = Prelude.Nothing,+ recommendedInstanceType = Prelude.Nothing+ }++-- | Source Server CPUs.+sourceProperties_cpus :: Lens.Lens' SourceProperties (Prelude.Maybe [CPU])+sourceProperties_cpus = Lens.lens (\SourceProperties' {cpus} -> cpus) (\s@SourceProperties' {} a -> s {cpus = a} :: SourceProperties) Prelude.. Lens.mapping Lens.coerced++-- | Source Server disks.+sourceProperties_disks :: Lens.Lens' SourceProperties (Prelude.Maybe [Disk])+sourceProperties_disks = Lens.lens (\SourceProperties' {disks} -> disks) (\s@SourceProperties' {} a -> s {disks = a} :: SourceProperties) Prelude.. Lens.mapping Lens.coerced++-- | Source server identification hints.+sourceProperties_identificationHints :: Lens.Lens' SourceProperties (Prelude.Maybe IdentificationHints)+sourceProperties_identificationHints = Lens.lens (\SourceProperties' {identificationHints} -> identificationHints) (\s@SourceProperties' {} a -> s {identificationHints = a} :: SourceProperties)++-- | Source server last update date and time.+sourceProperties_lastUpdatedDateTime :: Lens.Lens' SourceProperties (Prelude.Maybe Prelude.Text)+sourceProperties_lastUpdatedDateTime = Lens.lens (\SourceProperties' {lastUpdatedDateTime} -> lastUpdatedDateTime) (\s@SourceProperties' {} a -> s {lastUpdatedDateTime = a} :: SourceProperties)++-- | Source server network interfaces.+sourceProperties_networkInterfaces :: Lens.Lens' SourceProperties (Prelude.Maybe [NetworkInterface])+sourceProperties_networkInterfaces = Lens.lens (\SourceProperties' {networkInterfaces} -> networkInterfaces) (\s@SourceProperties' {} a -> s {networkInterfaces = a} :: SourceProperties) Prelude.. Lens.mapping Lens.coerced++-- | Source server OS.+sourceProperties_os :: Lens.Lens' SourceProperties (Prelude.Maybe OS)+sourceProperties_os = Lens.lens (\SourceProperties' {os} -> os) (\s@SourceProperties' {} a -> s {os = a} :: SourceProperties)++-- | Source server RAM in bytes.+sourceProperties_ramBytes :: Lens.Lens' SourceProperties (Prelude.Maybe Prelude.Natural)+sourceProperties_ramBytes = Lens.lens (\SourceProperties' {ramBytes} -> ramBytes) (\s@SourceProperties' {} a -> s {ramBytes = a} :: SourceProperties)++-- | Source server recommended instance type.+sourceProperties_recommendedInstanceType :: Lens.Lens' SourceProperties (Prelude.Maybe Prelude.Text)+sourceProperties_recommendedInstanceType = Lens.lens (\SourceProperties' {recommendedInstanceType} -> recommendedInstanceType) (\s@SourceProperties' {} a -> s {recommendedInstanceType = a} :: SourceProperties)++instance Data.FromJSON SourceProperties where+ parseJSON =+ Data.withObject+ "SourceProperties"+ ( \x ->+ SourceProperties'+ Prelude.<$> (x Data..:? "cpus" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "disks" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "identificationHints")+ Prelude.<*> (x Data..:? "lastUpdatedDateTime")+ Prelude.<*> ( x+ Data..:? "networkInterfaces"+ Data..!= Prelude.mempty+ )+ Prelude.<*> (x Data..:? "os")+ Prelude.<*> (x Data..:? "ramBytes")+ Prelude.<*> (x Data..:? "recommendedInstanceType")+ )++instance Prelude.Hashable SourceProperties where+ hashWithSalt _salt SourceProperties' {..} =+ _salt+ `Prelude.hashWithSalt` cpus+ `Prelude.hashWithSalt` disks+ `Prelude.hashWithSalt` identificationHints+ `Prelude.hashWithSalt` lastUpdatedDateTime+ `Prelude.hashWithSalt` networkInterfaces+ `Prelude.hashWithSalt` os+ `Prelude.hashWithSalt` ramBytes+ `Prelude.hashWithSalt` recommendedInstanceType++instance Prelude.NFData SourceProperties where+ rnf SourceProperties' {..} =+ Prelude.rnf cpus+ `Prelude.seq` Prelude.rnf disks+ `Prelude.seq` Prelude.rnf identificationHints+ `Prelude.seq` Prelude.rnf lastUpdatedDateTime+ `Prelude.seq` Prelude.rnf networkInterfaces+ `Prelude.seq` Prelude.rnf os+ `Prelude.seq` Prelude.rnf ramBytes+ `Prelude.seq` Prelude.rnf recommendedInstanceType
+ gen/Amazonka/MGN/Types/SourceServer.hs view
@@ -0,0 +1,195 @@+{-# 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.MGN.Types.SourceServer+-- 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.MGN.Types.SourceServer where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types.DataReplicationInfo+import Amazonka.MGN.Types.LaunchedInstance+import Amazonka.MGN.Types.LifeCycle+import Amazonka.MGN.Types.ReplicationType+import Amazonka.MGN.Types.SourceProperties+import qualified Amazonka.Prelude as Prelude++-- | /See:/ 'newSourceServer' smart constructor.+data SourceServer = SourceServer'+ { -- | Source server application ID.+ applicationID :: Prelude.Maybe Prelude.Text,+ -- | Source server ARN.+ arn :: Prelude.Maybe Prelude.Text,+ -- | Source server data replication info.+ dataReplicationInfo :: Prelude.Maybe DataReplicationInfo,+ -- | Source server archived status.+ isArchived :: Prelude.Maybe Prelude.Bool,+ -- | Source server launched instance.+ launchedInstance :: Prelude.Maybe LaunchedInstance,+ -- | Source server lifecycle state.+ lifeCycle :: Prelude.Maybe LifeCycle,+ -- | Source server replication type.+ replicationType :: Prelude.Maybe ReplicationType,+ -- | Source server properties.+ sourceProperties :: Prelude.Maybe SourceProperties,+ -- | Source server ID.+ sourceServerID :: Prelude.Maybe Prelude.Text,+ -- | Source server Tags.+ tags :: Prelude.Maybe (Data.Sensitive (Prelude.HashMap Prelude.Text Prelude.Text)),+ -- | Source server vCenter client id.+ vcenterClientID :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SourceServer' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationID', 'sourceServer_applicationID' - Source server application ID.+--+-- 'arn', 'sourceServer_arn' - Source server ARN.+--+-- 'dataReplicationInfo', 'sourceServer_dataReplicationInfo' - Source server data replication info.+--+-- 'isArchived', 'sourceServer_isArchived' - Source server archived status.+--+-- 'launchedInstance', 'sourceServer_launchedInstance' - Source server launched instance.+--+-- 'lifeCycle', 'sourceServer_lifeCycle' - Source server lifecycle state.+--+-- 'replicationType', 'sourceServer_replicationType' - Source server replication type.+--+-- 'sourceProperties', 'sourceServer_sourceProperties' - Source server properties.+--+-- 'sourceServerID', 'sourceServer_sourceServerID' - Source server ID.+--+-- 'tags', 'sourceServer_tags' - Source server Tags.+--+-- 'vcenterClientID', 'sourceServer_vcenterClientID' - Source server vCenter client id.+newSourceServer ::+ SourceServer+newSourceServer =+ SourceServer'+ { applicationID = Prelude.Nothing,+ arn = Prelude.Nothing,+ dataReplicationInfo = Prelude.Nothing,+ isArchived = Prelude.Nothing,+ launchedInstance = Prelude.Nothing,+ lifeCycle = Prelude.Nothing,+ replicationType = Prelude.Nothing,+ sourceProperties = Prelude.Nothing,+ sourceServerID = Prelude.Nothing,+ tags = Prelude.Nothing,+ vcenterClientID = Prelude.Nothing+ }++-- | Source server application ID.+sourceServer_applicationID :: Lens.Lens' SourceServer (Prelude.Maybe Prelude.Text)+sourceServer_applicationID = Lens.lens (\SourceServer' {applicationID} -> applicationID) (\s@SourceServer' {} a -> s {applicationID = a} :: SourceServer)++-- | Source server ARN.+sourceServer_arn :: Lens.Lens' SourceServer (Prelude.Maybe Prelude.Text)+sourceServer_arn = Lens.lens (\SourceServer' {arn} -> arn) (\s@SourceServer' {} a -> s {arn = a} :: SourceServer)++-- | Source server data replication info.+sourceServer_dataReplicationInfo :: Lens.Lens' SourceServer (Prelude.Maybe DataReplicationInfo)+sourceServer_dataReplicationInfo = Lens.lens (\SourceServer' {dataReplicationInfo} -> dataReplicationInfo) (\s@SourceServer' {} a -> s {dataReplicationInfo = a} :: SourceServer)++-- | Source server archived status.+sourceServer_isArchived :: Lens.Lens' SourceServer (Prelude.Maybe Prelude.Bool)+sourceServer_isArchived = Lens.lens (\SourceServer' {isArchived} -> isArchived) (\s@SourceServer' {} a -> s {isArchived = a} :: SourceServer)++-- | Source server launched instance.+sourceServer_launchedInstance :: Lens.Lens' SourceServer (Prelude.Maybe LaunchedInstance)+sourceServer_launchedInstance = Lens.lens (\SourceServer' {launchedInstance} -> launchedInstance) (\s@SourceServer' {} a -> s {launchedInstance = a} :: SourceServer)++-- | Source server lifecycle state.+sourceServer_lifeCycle :: Lens.Lens' SourceServer (Prelude.Maybe LifeCycle)+sourceServer_lifeCycle = Lens.lens (\SourceServer' {lifeCycle} -> lifeCycle) (\s@SourceServer' {} a -> s {lifeCycle = a} :: SourceServer)++-- | Source server replication type.+sourceServer_replicationType :: Lens.Lens' SourceServer (Prelude.Maybe ReplicationType)+sourceServer_replicationType = Lens.lens (\SourceServer' {replicationType} -> replicationType) (\s@SourceServer' {} a -> s {replicationType = a} :: SourceServer)++-- | Source server properties.+sourceServer_sourceProperties :: Lens.Lens' SourceServer (Prelude.Maybe SourceProperties)+sourceServer_sourceProperties = Lens.lens (\SourceServer' {sourceProperties} -> sourceProperties) (\s@SourceServer' {} a -> s {sourceProperties = a} :: SourceServer)++-- | Source server ID.+sourceServer_sourceServerID :: Lens.Lens' SourceServer (Prelude.Maybe Prelude.Text)+sourceServer_sourceServerID = Lens.lens (\SourceServer' {sourceServerID} -> sourceServerID) (\s@SourceServer' {} a -> s {sourceServerID = a} :: SourceServer)++-- | Source server Tags.+sourceServer_tags :: Lens.Lens' SourceServer (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+sourceServer_tags = Lens.lens (\SourceServer' {tags} -> tags) (\s@SourceServer' {} a -> s {tags = a} :: SourceServer) Prelude.. Lens.mapping (Data._Sensitive Prelude.. Lens.coerced)++-- | Source server vCenter client id.+sourceServer_vcenterClientID :: Lens.Lens' SourceServer (Prelude.Maybe Prelude.Text)+sourceServer_vcenterClientID = Lens.lens (\SourceServer' {vcenterClientID} -> vcenterClientID) (\s@SourceServer' {} a -> s {vcenterClientID = a} :: SourceServer)++instance Data.FromJSON SourceServer where+ parseJSON =+ Data.withObject+ "SourceServer"+ ( \x ->+ SourceServer'+ Prelude.<$> (x Data..:? "applicationID")+ Prelude.<*> (x Data..:? "arn")+ Prelude.<*> (x Data..:? "dataReplicationInfo")+ Prelude.<*> (x Data..:? "isArchived")+ Prelude.<*> (x Data..:? "launchedInstance")+ Prelude.<*> (x Data..:? "lifeCycle")+ Prelude.<*> (x Data..:? "replicationType")+ Prelude.<*> (x Data..:? "sourceProperties")+ Prelude.<*> (x Data..:? "sourceServerID")+ Prelude.<*> (x Data..:? "tags" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "vcenterClientID")+ )++instance Prelude.Hashable SourceServer where+ hashWithSalt _salt SourceServer' {..} =+ _salt+ `Prelude.hashWithSalt` applicationID+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` dataReplicationInfo+ `Prelude.hashWithSalt` isArchived+ `Prelude.hashWithSalt` launchedInstance+ `Prelude.hashWithSalt` lifeCycle+ `Prelude.hashWithSalt` replicationType+ `Prelude.hashWithSalt` sourceProperties+ `Prelude.hashWithSalt` sourceServerID+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` vcenterClientID++instance Prelude.NFData SourceServer where+ rnf SourceServer' {..} =+ Prelude.rnf applicationID+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf dataReplicationInfo+ `Prelude.seq` Prelude.rnf isArchived+ `Prelude.seq` Prelude.rnf launchedInstance+ `Prelude.seq` Prelude.rnf lifeCycle+ `Prelude.seq` Prelude.rnf replicationType+ `Prelude.seq` Prelude.rnf sourceProperties+ `Prelude.seq` Prelude.rnf sourceServerID+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf vcenterClientID
+ gen/Amazonka/MGN/Types/SourceServerActionDocument.hs view
@@ -0,0 +1,168 @@+{-# 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.MGN.Types.SourceServerActionDocument+-- 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.MGN.Types.SourceServerActionDocument where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types.SsmParameterStoreParameter+import qualified Amazonka.Prelude as Prelude++-- | /See:/ 'newSourceServerActionDocument' smart constructor.+data SourceServerActionDocument = SourceServerActionDocument'+ { -- | Source server post migration custom action ID.+ actionID :: Prelude.Maybe Prelude.Text,+ -- | Source server post migration custom action name.+ actionName :: Prelude.Maybe Prelude.Text,+ -- | Source server post migration custom action active status.+ active :: Prelude.Maybe Prelude.Bool,+ -- | Source server post migration custom action document identifier.+ documentIdentifier :: Prelude.Maybe Prelude.Text,+ -- | Source server post migration custom action document version.+ documentVersion :: Prelude.Maybe Prelude.Text,+ -- | Source server post migration custom action must succeed for cutover.+ mustSucceedForCutover :: Prelude.Maybe Prelude.Bool,+ -- | Source server post migration custom action order.+ order :: Prelude.Maybe Prelude.Natural,+ -- | Source server post migration custom action parameters.+ parameters :: Prelude.Maybe (Prelude.HashMap Prelude.Text [SsmParameterStoreParameter]),+ -- | Source server post migration custom action timeout in seconds.+ timeoutSeconds :: Prelude.Maybe Prelude.Natural+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SourceServerActionDocument' 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:+--+-- 'actionID', 'sourceServerActionDocument_actionID' - Source server post migration custom action ID.+--+-- 'actionName', 'sourceServerActionDocument_actionName' - Source server post migration custom action name.+--+-- 'active', 'sourceServerActionDocument_active' - Source server post migration custom action active status.+--+-- 'documentIdentifier', 'sourceServerActionDocument_documentIdentifier' - Source server post migration custom action document identifier.+--+-- 'documentVersion', 'sourceServerActionDocument_documentVersion' - Source server post migration custom action document version.+--+-- 'mustSucceedForCutover', 'sourceServerActionDocument_mustSucceedForCutover' - Source server post migration custom action must succeed for cutover.+--+-- 'order', 'sourceServerActionDocument_order' - Source server post migration custom action order.+--+-- 'parameters', 'sourceServerActionDocument_parameters' - Source server post migration custom action parameters.+--+-- 'timeoutSeconds', 'sourceServerActionDocument_timeoutSeconds' - Source server post migration custom action timeout in seconds.+newSourceServerActionDocument ::+ SourceServerActionDocument+newSourceServerActionDocument =+ SourceServerActionDocument'+ { actionID =+ Prelude.Nothing,+ actionName = Prelude.Nothing,+ active = Prelude.Nothing,+ documentIdentifier = Prelude.Nothing,+ documentVersion = Prelude.Nothing,+ mustSucceedForCutover = Prelude.Nothing,+ order = Prelude.Nothing,+ parameters = Prelude.Nothing,+ timeoutSeconds = Prelude.Nothing+ }++-- | Source server post migration custom action ID.+sourceServerActionDocument_actionID :: Lens.Lens' SourceServerActionDocument (Prelude.Maybe Prelude.Text)+sourceServerActionDocument_actionID = Lens.lens (\SourceServerActionDocument' {actionID} -> actionID) (\s@SourceServerActionDocument' {} a -> s {actionID = a} :: SourceServerActionDocument)++-- | Source server post migration custom action name.+sourceServerActionDocument_actionName :: Lens.Lens' SourceServerActionDocument (Prelude.Maybe Prelude.Text)+sourceServerActionDocument_actionName = Lens.lens (\SourceServerActionDocument' {actionName} -> actionName) (\s@SourceServerActionDocument' {} a -> s {actionName = a} :: SourceServerActionDocument)++-- | Source server post migration custom action active status.+sourceServerActionDocument_active :: Lens.Lens' SourceServerActionDocument (Prelude.Maybe Prelude.Bool)+sourceServerActionDocument_active = Lens.lens (\SourceServerActionDocument' {active} -> active) (\s@SourceServerActionDocument' {} a -> s {active = a} :: SourceServerActionDocument)++-- | Source server post migration custom action document identifier.+sourceServerActionDocument_documentIdentifier :: Lens.Lens' SourceServerActionDocument (Prelude.Maybe Prelude.Text)+sourceServerActionDocument_documentIdentifier = Lens.lens (\SourceServerActionDocument' {documentIdentifier} -> documentIdentifier) (\s@SourceServerActionDocument' {} a -> s {documentIdentifier = a} :: SourceServerActionDocument)++-- | Source server post migration custom action document version.+sourceServerActionDocument_documentVersion :: Lens.Lens' SourceServerActionDocument (Prelude.Maybe Prelude.Text)+sourceServerActionDocument_documentVersion = Lens.lens (\SourceServerActionDocument' {documentVersion} -> documentVersion) (\s@SourceServerActionDocument' {} a -> s {documentVersion = a} :: SourceServerActionDocument)++-- | Source server post migration custom action must succeed for cutover.+sourceServerActionDocument_mustSucceedForCutover :: Lens.Lens' SourceServerActionDocument (Prelude.Maybe Prelude.Bool)+sourceServerActionDocument_mustSucceedForCutover = Lens.lens (\SourceServerActionDocument' {mustSucceedForCutover} -> mustSucceedForCutover) (\s@SourceServerActionDocument' {} a -> s {mustSucceedForCutover = a} :: SourceServerActionDocument)++-- | Source server post migration custom action order.+sourceServerActionDocument_order :: Lens.Lens' SourceServerActionDocument (Prelude.Maybe Prelude.Natural)+sourceServerActionDocument_order = Lens.lens (\SourceServerActionDocument' {order} -> order) (\s@SourceServerActionDocument' {} a -> s {order = a} :: SourceServerActionDocument)++-- | Source server post migration custom action parameters.+sourceServerActionDocument_parameters :: Lens.Lens' SourceServerActionDocument (Prelude.Maybe (Prelude.HashMap Prelude.Text [SsmParameterStoreParameter]))+sourceServerActionDocument_parameters = Lens.lens (\SourceServerActionDocument' {parameters} -> parameters) (\s@SourceServerActionDocument' {} a -> s {parameters = a} :: SourceServerActionDocument) Prelude.. Lens.mapping Lens.coerced++-- | Source server post migration custom action timeout in seconds.+sourceServerActionDocument_timeoutSeconds :: Lens.Lens' SourceServerActionDocument (Prelude.Maybe Prelude.Natural)+sourceServerActionDocument_timeoutSeconds = Lens.lens (\SourceServerActionDocument' {timeoutSeconds} -> timeoutSeconds) (\s@SourceServerActionDocument' {} a -> s {timeoutSeconds = a} :: SourceServerActionDocument)++instance Data.FromJSON SourceServerActionDocument where+ parseJSON =+ Data.withObject+ "SourceServerActionDocument"+ ( \x ->+ SourceServerActionDocument'+ Prelude.<$> (x Data..:? "actionID")+ Prelude.<*> (x Data..:? "actionName")+ Prelude.<*> (x Data..:? "active")+ Prelude.<*> (x Data..:? "documentIdentifier")+ Prelude.<*> (x Data..:? "documentVersion")+ Prelude.<*> (x Data..:? "mustSucceedForCutover")+ Prelude.<*> (x Data..:? "order")+ Prelude.<*> (x Data..:? "parameters" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "timeoutSeconds")+ )++instance Prelude.Hashable SourceServerActionDocument where+ hashWithSalt _salt SourceServerActionDocument' {..} =+ _salt+ `Prelude.hashWithSalt` actionID+ `Prelude.hashWithSalt` actionName+ `Prelude.hashWithSalt` active+ `Prelude.hashWithSalt` documentIdentifier+ `Prelude.hashWithSalt` documentVersion+ `Prelude.hashWithSalt` mustSucceedForCutover+ `Prelude.hashWithSalt` order+ `Prelude.hashWithSalt` parameters+ `Prelude.hashWithSalt` timeoutSeconds++instance Prelude.NFData SourceServerActionDocument where+ rnf SourceServerActionDocument' {..} =+ Prelude.rnf actionID+ `Prelude.seq` Prelude.rnf actionName+ `Prelude.seq` Prelude.rnf active+ `Prelude.seq` Prelude.rnf documentIdentifier+ `Prelude.seq` Prelude.rnf documentVersion+ `Prelude.seq` Prelude.rnf mustSucceedForCutover+ `Prelude.seq` Prelude.rnf order+ `Prelude.seq` Prelude.rnf parameters+ `Prelude.seq` Prelude.rnf timeoutSeconds
+ gen/Amazonka/MGN/Types/SourceServerActionsRequestFilters.hs view
@@ -0,0 +1,81 @@+{-# 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.MGN.Types.SourceServerActionsRequestFilters+-- 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.MGN.Types.SourceServerActionsRequestFilters 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++-- | Source server post migration custom action filters.+--+-- /See:/ 'newSourceServerActionsRequestFilters' smart constructor.+data SourceServerActionsRequestFilters = SourceServerActionsRequestFilters'+ { -- | Action IDs to filter source server post migration custom actions by.+ actionIDs :: Prelude.Maybe [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SourceServerActionsRequestFilters' 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:+--+-- 'actionIDs', 'sourceServerActionsRequestFilters_actionIDs' - Action IDs to filter source server post migration custom actions by.+newSourceServerActionsRequestFilters ::+ SourceServerActionsRequestFilters+newSourceServerActionsRequestFilters =+ SourceServerActionsRequestFilters'+ { actionIDs =+ Prelude.Nothing+ }++-- | Action IDs to filter source server post migration custom actions by.+sourceServerActionsRequestFilters_actionIDs :: Lens.Lens' SourceServerActionsRequestFilters (Prelude.Maybe [Prelude.Text])+sourceServerActionsRequestFilters_actionIDs = Lens.lens (\SourceServerActionsRequestFilters' {actionIDs} -> actionIDs) (\s@SourceServerActionsRequestFilters' {} a -> s {actionIDs = a} :: SourceServerActionsRequestFilters) Prelude.. Lens.mapping Lens.coerced++instance+ Prelude.Hashable+ SourceServerActionsRequestFilters+ where+ hashWithSalt+ _salt+ SourceServerActionsRequestFilters' {..} =+ _salt `Prelude.hashWithSalt` actionIDs++instance+ Prelude.NFData+ SourceServerActionsRequestFilters+ where+ rnf SourceServerActionsRequestFilters' {..} =+ Prelude.rnf actionIDs++instance+ Data.ToJSON+ SourceServerActionsRequestFilters+ where+ toJSON SourceServerActionsRequestFilters' {..} =+ Data.object+ ( Prelude.catMaybes+ [("actionIDs" Data..=) Prelude.<$> actionIDs]+ )
+ gen/Amazonka/MGN/Types/SsmDocument.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.MGN.Types.SsmDocument+-- 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.MGN.Types.SsmDocument where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types.SsmParameterStoreParameter+import qualified Amazonka.Prelude as Prelude++-- | AWS Systems Manager Document.+--+-- /See:/ 'newSsmDocument' smart constructor.+data SsmDocument = SsmDocument'+ { -- | If true, Cutover will not be enabled if the document has failed.+ mustSucceedForCutover :: Prelude.Maybe Prelude.Bool,+ -- | AWS Systems Manager Document parameters.+ parameters :: Prelude.Maybe (Prelude.HashMap Prelude.Text [SsmParameterStoreParameter]),+ -- | AWS Systems Manager Document timeout seconds.+ timeoutSeconds :: Prelude.Maybe Prelude.Natural,+ -- | User-friendly name for the AWS Systems Manager Document.+ actionName :: Prelude.Text,+ -- | AWS Systems Manager Document name or full ARN.+ ssmDocumentName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SsmDocument' 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:+--+-- 'mustSucceedForCutover', 'ssmDocument_mustSucceedForCutover' - If true, Cutover will not be enabled if the document has failed.+--+-- 'parameters', 'ssmDocument_parameters' - AWS Systems Manager Document parameters.+--+-- 'timeoutSeconds', 'ssmDocument_timeoutSeconds' - AWS Systems Manager Document timeout seconds.+--+-- 'actionName', 'ssmDocument_actionName' - User-friendly name for the AWS Systems Manager Document.+--+-- 'ssmDocumentName', 'ssmDocument_ssmDocumentName' - AWS Systems Manager Document name or full ARN.+newSsmDocument ::+ -- | 'actionName'+ Prelude.Text ->+ -- | 'ssmDocumentName'+ Prelude.Text ->+ SsmDocument+newSsmDocument pActionName_ pSsmDocumentName_ =+ SsmDocument'+ { mustSucceedForCutover =+ Prelude.Nothing,+ parameters = Prelude.Nothing,+ timeoutSeconds = Prelude.Nothing,+ actionName = pActionName_,+ ssmDocumentName = pSsmDocumentName_+ }++-- | If true, Cutover will not be enabled if the document has failed.+ssmDocument_mustSucceedForCutover :: Lens.Lens' SsmDocument (Prelude.Maybe Prelude.Bool)+ssmDocument_mustSucceedForCutover = Lens.lens (\SsmDocument' {mustSucceedForCutover} -> mustSucceedForCutover) (\s@SsmDocument' {} a -> s {mustSucceedForCutover = a} :: SsmDocument)++-- | AWS Systems Manager Document parameters.+ssmDocument_parameters :: Lens.Lens' SsmDocument (Prelude.Maybe (Prelude.HashMap Prelude.Text [SsmParameterStoreParameter]))+ssmDocument_parameters = Lens.lens (\SsmDocument' {parameters} -> parameters) (\s@SsmDocument' {} a -> s {parameters = a} :: SsmDocument) Prelude.. Lens.mapping Lens.coerced++-- | AWS Systems Manager Document timeout seconds.+ssmDocument_timeoutSeconds :: Lens.Lens' SsmDocument (Prelude.Maybe Prelude.Natural)+ssmDocument_timeoutSeconds = Lens.lens (\SsmDocument' {timeoutSeconds} -> timeoutSeconds) (\s@SsmDocument' {} a -> s {timeoutSeconds = a} :: SsmDocument)++-- | User-friendly name for the AWS Systems Manager Document.+ssmDocument_actionName :: Lens.Lens' SsmDocument Prelude.Text+ssmDocument_actionName = Lens.lens (\SsmDocument' {actionName} -> actionName) (\s@SsmDocument' {} a -> s {actionName = a} :: SsmDocument)++-- | AWS Systems Manager Document name or full ARN.+ssmDocument_ssmDocumentName :: Lens.Lens' SsmDocument Prelude.Text+ssmDocument_ssmDocumentName = Lens.lens (\SsmDocument' {ssmDocumentName} -> ssmDocumentName) (\s@SsmDocument' {} a -> s {ssmDocumentName = a} :: SsmDocument)++instance Data.FromJSON SsmDocument where+ parseJSON =+ Data.withObject+ "SsmDocument"+ ( \x ->+ SsmDocument'+ Prelude.<$> (x Data..:? "mustSucceedForCutover")+ Prelude.<*> (x Data..:? "parameters" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "timeoutSeconds")+ Prelude.<*> (x Data..: "actionName")+ Prelude.<*> (x Data..: "ssmDocumentName")+ )++instance Prelude.Hashable SsmDocument where+ hashWithSalt _salt SsmDocument' {..} =+ _salt+ `Prelude.hashWithSalt` mustSucceedForCutover+ `Prelude.hashWithSalt` parameters+ `Prelude.hashWithSalt` timeoutSeconds+ `Prelude.hashWithSalt` actionName+ `Prelude.hashWithSalt` ssmDocumentName++instance Prelude.NFData SsmDocument where+ rnf SsmDocument' {..} =+ Prelude.rnf mustSucceedForCutover+ `Prelude.seq` Prelude.rnf parameters+ `Prelude.seq` Prelude.rnf timeoutSeconds+ `Prelude.seq` Prelude.rnf actionName+ `Prelude.seq` Prelude.rnf ssmDocumentName++instance Data.ToJSON SsmDocument where+ toJSON SsmDocument' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("mustSucceedForCutover" Data..=)+ Prelude.<$> mustSucceedForCutover,+ ("parameters" Data..=) Prelude.<$> parameters,+ ("timeoutSeconds" Data..=)+ Prelude.<$> timeoutSeconds,+ Prelude.Just ("actionName" Data..= actionName),+ Prelude.Just+ ("ssmDocumentName" Data..= ssmDocumentName)+ ]+ )
+ gen/Amazonka/MGN/Types/SsmDocumentType.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.MGN.Types.SsmDocumentType+-- 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.MGN.Types.SsmDocumentType+ ( SsmDocumentType+ ( ..,+ SsmDocumentType_AUTOMATION,+ SsmDocumentType_COMMAND+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype SsmDocumentType = SsmDocumentType'+ { fromSsmDocumentType ::+ 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 SsmDocumentType_AUTOMATION :: SsmDocumentType+pattern SsmDocumentType_AUTOMATION = SsmDocumentType' "AUTOMATION"++pattern SsmDocumentType_COMMAND :: SsmDocumentType+pattern SsmDocumentType_COMMAND = SsmDocumentType' "COMMAND"++{-# COMPLETE+ SsmDocumentType_AUTOMATION,+ SsmDocumentType_COMMAND,+ SsmDocumentType'+ #-}
+ gen/Amazonka/MGN/Types/SsmParameterStoreParameter.hs view
@@ -0,0 +1,103 @@+{-# 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.MGN.Types.SsmParameterStoreParameter+-- 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.MGN.Types.SsmParameterStoreParameter where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types.SsmParameterStoreParameterType+import qualified Amazonka.Prelude as Prelude++-- | AWS Systems Manager Parameter Store parameter.+--+-- /See:/ 'newSsmParameterStoreParameter' smart constructor.+data SsmParameterStoreParameter = SsmParameterStoreParameter'+ { -- | AWS Systems Manager Parameter Store parameter name.+ parameterName :: Prelude.Text,+ -- | AWS Systems Manager Parameter Store parameter type.+ parameterType :: SsmParameterStoreParameterType+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SsmParameterStoreParameter' 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:+--+-- 'parameterName', 'ssmParameterStoreParameter_parameterName' - AWS Systems Manager Parameter Store parameter name.+--+-- 'parameterType', 'ssmParameterStoreParameter_parameterType' - AWS Systems Manager Parameter Store parameter type.+newSsmParameterStoreParameter ::+ -- | 'parameterName'+ Prelude.Text ->+ -- | 'parameterType'+ SsmParameterStoreParameterType ->+ SsmParameterStoreParameter+newSsmParameterStoreParameter+ pParameterName_+ pParameterType_ =+ SsmParameterStoreParameter'+ { parameterName =+ pParameterName_,+ parameterType = pParameterType_+ }++-- | AWS Systems Manager Parameter Store parameter name.+ssmParameterStoreParameter_parameterName :: Lens.Lens' SsmParameterStoreParameter Prelude.Text+ssmParameterStoreParameter_parameterName = Lens.lens (\SsmParameterStoreParameter' {parameterName} -> parameterName) (\s@SsmParameterStoreParameter' {} a -> s {parameterName = a} :: SsmParameterStoreParameter)++-- | AWS Systems Manager Parameter Store parameter type.+ssmParameterStoreParameter_parameterType :: Lens.Lens' SsmParameterStoreParameter SsmParameterStoreParameterType+ssmParameterStoreParameter_parameterType = Lens.lens (\SsmParameterStoreParameter' {parameterType} -> parameterType) (\s@SsmParameterStoreParameter' {} a -> s {parameterType = a} :: SsmParameterStoreParameter)++instance Data.FromJSON SsmParameterStoreParameter where+ parseJSON =+ Data.withObject+ "SsmParameterStoreParameter"+ ( \x ->+ SsmParameterStoreParameter'+ Prelude.<$> (x Data..: "parameterName")+ Prelude.<*> (x Data..: "parameterType")+ )++instance Prelude.Hashable SsmParameterStoreParameter where+ hashWithSalt _salt SsmParameterStoreParameter' {..} =+ _salt+ `Prelude.hashWithSalt` parameterName+ `Prelude.hashWithSalt` parameterType++instance Prelude.NFData SsmParameterStoreParameter where+ rnf SsmParameterStoreParameter' {..} =+ Prelude.rnf parameterName+ `Prelude.seq` Prelude.rnf parameterType++instance Data.ToJSON SsmParameterStoreParameter where+ toJSON SsmParameterStoreParameter' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("parameterName" Data..= parameterName),+ Prelude.Just+ ("parameterType" Data..= parameterType)+ ]+ )
+ gen/Amazonka/MGN/Types/SsmParameterStoreParameterType.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.MGN.Types.SsmParameterStoreParameterType+-- 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.MGN.Types.SsmParameterStoreParameterType+ ( SsmParameterStoreParameterType+ ( ..,+ SsmParameterStoreParameterType_STRING+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype SsmParameterStoreParameterType = SsmParameterStoreParameterType'+ { fromSsmParameterStoreParameterType ::+ 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 SsmParameterStoreParameterType_STRING :: SsmParameterStoreParameterType+pattern SsmParameterStoreParameterType_STRING = SsmParameterStoreParameterType' "STRING"++{-# COMPLETE+ SsmParameterStoreParameterType_STRING,+ SsmParameterStoreParameterType'+ #-}
+ gen/Amazonka/MGN/Types/TargetInstanceTypeRightSizingMethod.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.MGN.Types.TargetInstanceTypeRightSizingMethod+-- 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.MGN.Types.TargetInstanceTypeRightSizingMethod+ ( TargetInstanceTypeRightSizingMethod+ ( ..,+ TargetInstanceTypeRightSizingMethod_BASIC,+ TargetInstanceTypeRightSizingMethod_NONE+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype TargetInstanceTypeRightSizingMethod = TargetInstanceTypeRightSizingMethod'+ { fromTargetInstanceTypeRightSizingMethod ::+ 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 TargetInstanceTypeRightSizingMethod_BASIC :: TargetInstanceTypeRightSizingMethod+pattern TargetInstanceTypeRightSizingMethod_BASIC = TargetInstanceTypeRightSizingMethod' "BASIC"++pattern TargetInstanceTypeRightSizingMethod_NONE :: TargetInstanceTypeRightSizingMethod+pattern TargetInstanceTypeRightSizingMethod_NONE = TargetInstanceTypeRightSizingMethod' "NONE"++{-# COMPLETE+ TargetInstanceTypeRightSizingMethod_BASIC,+ TargetInstanceTypeRightSizingMethod_NONE,+ TargetInstanceTypeRightSizingMethod'+ #-}
+ gen/Amazonka/MGN/Types/TemplateActionDocument.hs view
@@ -0,0 +1,182 @@+{-# 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.MGN.Types.TemplateActionDocument+-- 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.MGN.Types.TemplateActionDocument where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types.SsmParameterStoreParameter+import qualified Amazonka.Prelude as Prelude++-- | /See:/ 'newTemplateActionDocument' smart constructor.+data TemplateActionDocument = TemplateActionDocument'+ { -- | Template post migration custom action ID.+ actionID :: Prelude.Maybe Prelude.Text,+ -- | Template post migration custom action name.+ actionName :: Prelude.Maybe Prelude.Text,+ -- | Template post migration custom action active status.+ active :: Prelude.Maybe Prelude.Bool,+ -- | Template post migration custom action document identifier.+ documentIdentifier :: Prelude.Maybe Prelude.Text,+ -- | Template post migration custom action document version.+ documentVersion :: Prelude.Maybe Prelude.Text,+ -- | Template post migration custom action must succeed for cutover.+ mustSucceedForCutover :: Prelude.Maybe Prelude.Bool,+ -- | Operating system eligible for this template post migration custom+ -- action.+ operatingSystem :: Prelude.Maybe Prelude.Text,+ -- | Template post migration custom action order.+ order :: Prelude.Maybe Prelude.Natural,+ -- | Template post migration custom action parameters.+ parameters :: Prelude.Maybe (Prelude.HashMap Prelude.Text [SsmParameterStoreParameter]),+ -- | Template post migration custom action timeout in seconds.+ timeoutSeconds :: Prelude.Maybe Prelude.Natural+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TemplateActionDocument' 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:+--+-- 'actionID', 'templateActionDocument_actionID' - Template post migration custom action ID.+--+-- 'actionName', 'templateActionDocument_actionName' - Template post migration custom action name.+--+-- 'active', 'templateActionDocument_active' - Template post migration custom action active status.+--+-- 'documentIdentifier', 'templateActionDocument_documentIdentifier' - Template post migration custom action document identifier.+--+-- 'documentVersion', 'templateActionDocument_documentVersion' - Template post migration custom action document version.+--+-- 'mustSucceedForCutover', 'templateActionDocument_mustSucceedForCutover' - Template post migration custom action must succeed for cutover.+--+-- 'operatingSystem', 'templateActionDocument_operatingSystem' - Operating system eligible for this template post migration custom+-- action.+--+-- 'order', 'templateActionDocument_order' - Template post migration custom action order.+--+-- 'parameters', 'templateActionDocument_parameters' - Template post migration custom action parameters.+--+-- 'timeoutSeconds', 'templateActionDocument_timeoutSeconds' - Template post migration custom action timeout in seconds.+newTemplateActionDocument ::+ TemplateActionDocument+newTemplateActionDocument =+ TemplateActionDocument'+ { actionID = Prelude.Nothing,+ actionName = Prelude.Nothing,+ active = Prelude.Nothing,+ documentIdentifier = Prelude.Nothing,+ documentVersion = Prelude.Nothing,+ mustSucceedForCutover = Prelude.Nothing,+ operatingSystem = Prelude.Nothing,+ order = Prelude.Nothing,+ parameters = Prelude.Nothing,+ timeoutSeconds = Prelude.Nothing+ }++-- | Template post migration custom action ID.+templateActionDocument_actionID :: Lens.Lens' TemplateActionDocument (Prelude.Maybe Prelude.Text)+templateActionDocument_actionID = Lens.lens (\TemplateActionDocument' {actionID} -> actionID) (\s@TemplateActionDocument' {} a -> s {actionID = a} :: TemplateActionDocument)++-- | Template post migration custom action name.+templateActionDocument_actionName :: Lens.Lens' TemplateActionDocument (Prelude.Maybe Prelude.Text)+templateActionDocument_actionName = Lens.lens (\TemplateActionDocument' {actionName} -> actionName) (\s@TemplateActionDocument' {} a -> s {actionName = a} :: TemplateActionDocument)++-- | Template post migration custom action active status.+templateActionDocument_active :: Lens.Lens' TemplateActionDocument (Prelude.Maybe Prelude.Bool)+templateActionDocument_active = Lens.lens (\TemplateActionDocument' {active} -> active) (\s@TemplateActionDocument' {} a -> s {active = a} :: TemplateActionDocument)++-- | Template post migration custom action document identifier.+templateActionDocument_documentIdentifier :: Lens.Lens' TemplateActionDocument (Prelude.Maybe Prelude.Text)+templateActionDocument_documentIdentifier = Lens.lens (\TemplateActionDocument' {documentIdentifier} -> documentIdentifier) (\s@TemplateActionDocument' {} a -> s {documentIdentifier = a} :: TemplateActionDocument)++-- | Template post migration custom action document version.+templateActionDocument_documentVersion :: Lens.Lens' TemplateActionDocument (Prelude.Maybe Prelude.Text)+templateActionDocument_documentVersion = Lens.lens (\TemplateActionDocument' {documentVersion} -> documentVersion) (\s@TemplateActionDocument' {} a -> s {documentVersion = a} :: TemplateActionDocument)++-- | Template post migration custom action must succeed for cutover.+templateActionDocument_mustSucceedForCutover :: Lens.Lens' TemplateActionDocument (Prelude.Maybe Prelude.Bool)+templateActionDocument_mustSucceedForCutover = Lens.lens (\TemplateActionDocument' {mustSucceedForCutover} -> mustSucceedForCutover) (\s@TemplateActionDocument' {} a -> s {mustSucceedForCutover = a} :: TemplateActionDocument)++-- | Operating system eligible for this template post migration custom+-- action.+templateActionDocument_operatingSystem :: Lens.Lens' TemplateActionDocument (Prelude.Maybe Prelude.Text)+templateActionDocument_operatingSystem = Lens.lens (\TemplateActionDocument' {operatingSystem} -> operatingSystem) (\s@TemplateActionDocument' {} a -> s {operatingSystem = a} :: TemplateActionDocument)++-- | Template post migration custom action order.+templateActionDocument_order :: Lens.Lens' TemplateActionDocument (Prelude.Maybe Prelude.Natural)+templateActionDocument_order = Lens.lens (\TemplateActionDocument' {order} -> order) (\s@TemplateActionDocument' {} a -> s {order = a} :: TemplateActionDocument)++-- | Template post migration custom action parameters.+templateActionDocument_parameters :: Lens.Lens' TemplateActionDocument (Prelude.Maybe (Prelude.HashMap Prelude.Text [SsmParameterStoreParameter]))+templateActionDocument_parameters = Lens.lens (\TemplateActionDocument' {parameters} -> parameters) (\s@TemplateActionDocument' {} a -> s {parameters = a} :: TemplateActionDocument) Prelude.. Lens.mapping Lens.coerced++-- | Template post migration custom action timeout in seconds.+templateActionDocument_timeoutSeconds :: Lens.Lens' TemplateActionDocument (Prelude.Maybe Prelude.Natural)+templateActionDocument_timeoutSeconds = Lens.lens (\TemplateActionDocument' {timeoutSeconds} -> timeoutSeconds) (\s@TemplateActionDocument' {} a -> s {timeoutSeconds = a} :: TemplateActionDocument)++instance Data.FromJSON TemplateActionDocument where+ parseJSON =+ Data.withObject+ "TemplateActionDocument"+ ( \x ->+ TemplateActionDocument'+ Prelude.<$> (x Data..:? "actionID")+ Prelude.<*> (x Data..:? "actionName")+ Prelude.<*> (x Data..:? "active")+ Prelude.<*> (x Data..:? "documentIdentifier")+ Prelude.<*> (x Data..:? "documentVersion")+ Prelude.<*> (x Data..:? "mustSucceedForCutover")+ Prelude.<*> (x Data..:? "operatingSystem")+ Prelude.<*> (x Data..:? "order")+ Prelude.<*> (x Data..:? "parameters" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "timeoutSeconds")+ )++instance Prelude.Hashable TemplateActionDocument where+ hashWithSalt _salt TemplateActionDocument' {..} =+ _salt+ `Prelude.hashWithSalt` actionID+ `Prelude.hashWithSalt` actionName+ `Prelude.hashWithSalt` active+ `Prelude.hashWithSalt` documentIdentifier+ `Prelude.hashWithSalt` documentVersion+ `Prelude.hashWithSalt` mustSucceedForCutover+ `Prelude.hashWithSalt` operatingSystem+ `Prelude.hashWithSalt` order+ `Prelude.hashWithSalt` parameters+ `Prelude.hashWithSalt` timeoutSeconds++instance Prelude.NFData TemplateActionDocument where+ rnf TemplateActionDocument' {..} =+ Prelude.rnf actionID+ `Prelude.seq` Prelude.rnf actionName+ `Prelude.seq` Prelude.rnf active+ `Prelude.seq` Prelude.rnf documentIdentifier+ `Prelude.seq` Prelude.rnf documentVersion+ `Prelude.seq` Prelude.rnf mustSucceedForCutover+ `Prelude.seq` Prelude.rnf operatingSystem+ `Prelude.seq` Prelude.rnf order+ `Prelude.seq` Prelude.rnf parameters+ `Prelude.seq` Prelude.rnf timeoutSeconds
+ gen/Amazonka/MGN/Types/TemplateActionsRequestFilters.hs view
@@ -0,0 +1,73 @@+{-# 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.MGN.Types.TemplateActionsRequestFilters+-- 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.MGN.Types.TemplateActionsRequestFilters 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++-- | Template post migration custom action filters.+--+-- /See:/ 'newTemplateActionsRequestFilters' smart constructor.+data TemplateActionsRequestFilters = TemplateActionsRequestFilters'+ { -- | Action IDs to filter template post migration custom actions by.+ actionIDs :: Prelude.Maybe [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TemplateActionsRequestFilters' 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:+--+-- 'actionIDs', 'templateActionsRequestFilters_actionIDs' - Action IDs to filter template post migration custom actions by.+newTemplateActionsRequestFilters ::+ TemplateActionsRequestFilters+newTemplateActionsRequestFilters =+ TemplateActionsRequestFilters'+ { actionIDs =+ Prelude.Nothing+ }++-- | Action IDs to filter template post migration custom actions by.+templateActionsRequestFilters_actionIDs :: Lens.Lens' TemplateActionsRequestFilters (Prelude.Maybe [Prelude.Text])+templateActionsRequestFilters_actionIDs = Lens.lens (\TemplateActionsRequestFilters' {actionIDs} -> actionIDs) (\s@TemplateActionsRequestFilters' {} a -> s {actionIDs = a} :: TemplateActionsRequestFilters) Prelude.. Lens.mapping Lens.coerced++instance+ Prelude.Hashable+ TemplateActionsRequestFilters+ where+ hashWithSalt _salt TemplateActionsRequestFilters' {..} =+ _salt `Prelude.hashWithSalt` actionIDs++instance Prelude.NFData TemplateActionsRequestFilters where+ rnf TemplateActionsRequestFilters' {..} =+ Prelude.rnf actionIDs++instance Data.ToJSON TemplateActionsRequestFilters where+ toJSON TemplateActionsRequestFilters' {..} =+ Data.object+ ( Prelude.catMaybes+ [("actionIDs" Data..=) Prelude.<$> actionIDs]+ )
+ gen/Amazonka/MGN/Types/VcenterClient.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.MGN.Types.VcenterClient+-- 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.MGN.Types.VcenterClient 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++-- | vCenter client.+--+-- /See:/ 'newVcenterClient' smart constructor.+data VcenterClient = VcenterClient'+ { -- | Arn of vCenter client.+ arn :: Prelude.Maybe Prelude.Text,+ -- | Datacenter name of vCenter client.+ datacenterName :: Prelude.Maybe Prelude.Text,+ -- | Hostname of vCenter client .+ hostname :: Prelude.Maybe Prelude.Text,+ -- | Last seen time of vCenter client.+ lastSeenDatetime :: Prelude.Maybe Prelude.Text,+ -- | Tags for Source Server of vCenter client.+ sourceServerTags :: Prelude.Maybe (Data.Sensitive (Prelude.HashMap Prelude.Text Prelude.Text)),+ -- | Tags for vCenter client.+ tags :: Prelude.Maybe (Data.Sensitive (Prelude.HashMap Prelude.Text Prelude.Text)),+ -- | ID of vCenter client.+ vcenterClientID :: Prelude.Maybe Prelude.Text,+ -- | Vcenter UUID of vCenter client.+ vcenterUUID :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'VcenterClient' 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', 'vcenterClient_arn' - Arn of vCenter client.+--+-- 'datacenterName', 'vcenterClient_datacenterName' - Datacenter name of vCenter client.+--+-- 'hostname', 'vcenterClient_hostname' - Hostname of vCenter client .+--+-- 'lastSeenDatetime', 'vcenterClient_lastSeenDatetime' - Last seen time of vCenter client.+--+-- 'sourceServerTags', 'vcenterClient_sourceServerTags' - Tags for Source Server of vCenter client.+--+-- 'tags', 'vcenterClient_tags' - Tags for vCenter client.+--+-- 'vcenterClientID', 'vcenterClient_vcenterClientID' - ID of vCenter client.+--+-- 'vcenterUUID', 'vcenterClient_vcenterUUID' - Vcenter UUID of vCenter client.+newVcenterClient ::+ VcenterClient+newVcenterClient =+ VcenterClient'+ { arn = Prelude.Nothing,+ datacenterName = Prelude.Nothing,+ hostname = Prelude.Nothing,+ lastSeenDatetime = Prelude.Nothing,+ sourceServerTags = Prelude.Nothing,+ tags = Prelude.Nothing,+ vcenterClientID = Prelude.Nothing,+ vcenterUUID = Prelude.Nothing+ }++-- | Arn of vCenter client.+vcenterClient_arn :: Lens.Lens' VcenterClient (Prelude.Maybe Prelude.Text)+vcenterClient_arn = Lens.lens (\VcenterClient' {arn} -> arn) (\s@VcenterClient' {} a -> s {arn = a} :: VcenterClient)++-- | Datacenter name of vCenter client.+vcenterClient_datacenterName :: Lens.Lens' VcenterClient (Prelude.Maybe Prelude.Text)+vcenterClient_datacenterName = Lens.lens (\VcenterClient' {datacenterName} -> datacenterName) (\s@VcenterClient' {} a -> s {datacenterName = a} :: VcenterClient)++-- | Hostname of vCenter client .+vcenterClient_hostname :: Lens.Lens' VcenterClient (Prelude.Maybe Prelude.Text)+vcenterClient_hostname = Lens.lens (\VcenterClient' {hostname} -> hostname) (\s@VcenterClient' {} a -> s {hostname = a} :: VcenterClient)++-- | Last seen time of vCenter client.+vcenterClient_lastSeenDatetime :: Lens.Lens' VcenterClient (Prelude.Maybe Prelude.Text)+vcenterClient_lastSeenDatetime = Lens.lens (\VcenterClient' {lastSeenDatetime} -> lastSeenDatetime) (\s@VcenterClient' {} a -> s {lastSeenDatetime = a} :: VcenterClient)++-- | Tags for Source Server of vCenter client.+vcenterClient_sourceServerTags :: Lens.Lens' VcenterClient (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+vcenterClient_sourceServerTags = Lens.lens (\VcenterClient' {sourceServerTags} -> sourceServerTags) (\s@VcenterClient' {} a -> s {sourceServerTags = a} :: VcenterClient) Prelude.. Lens.mapping (Data._Sensitive Prelude.. Lens.coerced)++-- | Tags for vCenter client.+vcenterClient_tags :: Lens.Lens' VcenterClient (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+vcenterClient_tags = Lens.lens (\VcenterClient' {tags} -> tags) (\s@VcenterClient' {} a -> s {tags = a} :: VcenterClient) Prelude.. Lens.mapping (Data._Sensitive Prelude.. Lens.coerced)++-- | ID of vCenter client.+vcenterClient_vcenterClientID :: Lens.Lens' VcenterClient (Prelude.Maybe Prelude.Text)+vcenterClient_vcenterClientID = Lens.lens (\VcenterClient' {vcenterClientID} -> vcenterClientID) (\s@VcenterClient' {} a -> s {vcenterClientID = a} :: VcenterClient)++-- | Vcenter UUID of vCenter client.+vcenterClient_vcenterUUID :: Lens.Lens' VcenterClient (Prelude.Maybe Prelude.Text)+vcenterClient_vcenterUUID = Lens.lens (\VcenterClient' {vcenterUUID} -> vcenterUUID) (\s@VcenterClient' {} a -> s {vcenterUUID = a} :: VcenterClient)++instance Data.FromJSON VcenterClient where+ parseJSON =+ Data.withObject+ "VcenterClient"+ ( \x ->+ VcenterClient'+ Prelude.<$> (x Data..:? "arn")+ Prelude.<*> (x Data..:? "datacenterName")+ Prelude.<*> (x Data..:? "hostname")+ Prelude.<*> (x Data..:? "lastSeenDatetime")+ Prelude.<*> ( x+ Data..:? "sourceServerTags"+ Data..!= Prelude.mempty+ )+ Prelude.<*> (x Data..:? "tags" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "vcenterClientID")+ Prelude.<*> (x Data..:? "vcenterUUID")+ )++instance Prelude.Hashable VcenterClient where+ hashWithSalt _salt VcenterClient' {..} =+ _salt+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` datacenterName+ `Prelude.hashWithSalt` hostname+ `Prelude.hashWithSalt` lastSeenDatetime+ `Prelude.hashWithSalt` sourceServerTags+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` vcenterClientID+ `Prelude.hashWithSalt` vcenterUUID++instance Prelude.NFData VcenterClient where+ rnf VcenterClient' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf datacenterName+ `Prelude.seq` Prelude.rnf hostname+ `Prelude.seq` Prelude.rnf lastSeenDatetime+ `Prelude.seq` Prelude.rnf sourceServerTags+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf vcenterClientID+ `Prelude.seq` Prelude.rnf vcenterUUID
+ gen/Amazonka/MGN/Types/VolumeType.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.MGN.Types.VolumeType+-- 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.MGN.Types.VolumeType+ ( VolumeType+ ( ..,+ VolumeType_Gp2,+ VolumeType_Gp3,+ VolumeType_Io1,+ VolumeType_Io2,+ VolumeType_Sc1,+ VolumeType_St1,+ VolumeType_Standard+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype VolumeType = VolumeType'+ { fromVolumeType ::+ 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 VolumeType_Gp2 :: VolumeType+pattern VolumeType_Gp2 = VolumeType' "gp2"++pattern VolumeType_Gp3 :: VolumeType+pattern VolumeType_Gp3 = VolumeType' "gp3"++pattern VolumeType_Io1 :: VolumeType+pattern VolumeType_Io1 = VolumeType' "io1"++pattern VolumeType_Io2 :: VolumeType+pattern VolumeType_Io2 = VolumeType' "io2"++pattern VolumeType_Sc1 :: VolumeType+pattern VolumeType_Sc1 = VolumeType' "sc1"++pattern VolumeType_St1 :: VolumeType+pattern VolumeType_St1 = VolumeType' "st1"++pattern VolumeType_Standard :: VolumeType+pattern VolumeType_Standard = VolumeType' "standard"++{-# COMPLETE+ VolumeType_Gp2,+ VolumeType_Gp3,+ VolumeType_Io1,+ VolumeType_Io2,+ VolumeType_Sc1,+ VolumeType_St1,+ VolumeType_Standard,+ VolumeType'+ #-}
+ gen/Amazonka/MGN/Types/Wave.hs view
@@ -0,0 +1,167 @@+{-# 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.MGN.Types.Wave+-- 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.MGN.Types.Wave where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types.WaveAggregatedStatus+import qualified Amazonka.Prelude as Prelude++-- | /See:/ 'newWave' smart constructor.+data Wave = Wave'+ { -- | Wave ARN.+ arn :: Prelude.Maybe Prelude.Text,+ -- | Wave creation dateTime.+ creationDateTime :: Prelude.Maybe Prelude.Text,+ -- | Wave description.+ description :: Prelude.Maybe Prelude.Text,+ -- | Wave archival status.+ isArchived :: Prelude.Maybe Prelude.Bool,+ -- | Wave last modified dateTime.+ lastModifiedDateTime :: Prelude.Maybe Prelude.Text,+ -- | Wave name.+ name :: Prelude.Maybe Prelude.Text,+ -- | Wave tags.+ tags :: Prelude.Maybe (Data.Sensitive (Prelude.HashMap Prelude.Text Prelude.Text)),+ -- | Wave aggregated status.+ waveAggregatedStatus :: Prelude.Maybe WaveAggregatedStatus,+ -- | Wave ID.+ waveID :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Wave' 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', 'wave_arn' - Wave ARN.+--+-- 'creationDateTime', 'wave_creationDateTime' - Wave creation dateTime.+--+-- 'description', 'wave_description' - Wave description.+--+-- 'isArchived', 'wave_isArchived' - Wave archival status.+--+-- 'lastModifiedDateTime', 'wave_lastModifiedDateTime' - Wave last modified dateTime.+--+-- 'name', 'wave_name' - Wave name.+--+-- 'tags', 'wave_tags' - Wave tags.+--+-- 'waveAggregatedStatus', 'wave_waveAggregatedStatus' - Wave aggregated status.+--+-- 'waveID', 'wave_waveID' - Wave ID.+newWave ::+ Wave+newWave =+ Wave'+ { arn = Prelude.Nothing,+ creationDateTime = Prelude.Nothing,+ description = Prelude.Nothing,+ isArchived = Prelude.Nothing,+ lastModifiedDateTime = Prelude.Nothing,+ name = Prelude.Nothing,+ tags = Prelude.Nothing,+ waveAggregatedStatus = Prelude.Nothing,+ waveID = Prelude.Nothing+ }++-- | Wave ARN.+wave_arn :: Lens.Lens' Wave (Prelude.Maybe Prelude.Text)+wave_arn = Lens.lens (\Wave' {arn} -> arn) (\s@Wave' {} a -> s {arn = a} :: Wave)++-- | Wave creation dateTime.+wave_creationDateTime :: Lens.Lens' Wave (Prelude.Maybe Prelude.Text)+wave_creationDateTime = Lens.lens (\Wave' {creationDateTime} -> creationDateTime) (\s@Wave' {} a -> s {creationDateTime = a} :: Wave)++-- | Wave description.+wave_description :: Lens.Lens' Wave (Prelude.Maybe Prelude.Text)+wave_description = Lens.lens (\Wave' {description} -> description) (\s@Wave' {} a -> s {description = a} :: Wave)++-- | Wave archival status.+wave_isArchived :: Lens.Lens' Wave (Prelude.Maybe Prelude.Bool)+wave_isArchived = Lens.lens (\Wave' {isArchived} -> isArchived) (\s@Wave' {} a -> s {isArchived = a} :: Wave)++-- | Wave last modified dateTime.+wave_lastModifiedDateTime :: Lens.Lens' Wave (Prelude.Maybe Prelude.Text)+wave_lastModifiedDateTime = Lens.lens (\Wave' {lastModifiedDateTime} -> lastModifiedDateTime) (\s@Wave' {} a -> s {lastModifiedDateTime = a} :: Wave)++-- | Wave name.+wave_name :: Lens.Lens' Wave (Prelude.Maybe Prelude.Text)+wave_name = Lens.lens (\Wave' {name} -> name) (\s@Wave' {} a -> s {name = a} :: Wave)++-- | Wave tags.+wave_tags :: Lens.Lens' Wave (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+wave_tags = Lens.lens (\Wave' {tags} -> tags) (\s@Wave' {} a -> s {tags = a} :: Wave) Prelude.. Lens.mapping (Data._Sensitive Prelude.. Lens.coerced)++-- | Wave aggregated status.+wave_waveAggregatedStatus :: Lens.Lens' Wave (Prelude.Maybe WaveAggregatedStatus)+wave_waveAggregatedStatus = Lens.lens (\Wave' {waveAggregatedStatus} -> waveAggregatedStatus) (\s@Wave' {} a -> s {waveAggregatedStatus = a} :: Wave)++-- | Wave ID.+wave_waveID :: Lens.Lens' Wave (Prelude.Maybe Prelude.Text)+wave_waveID = Lens.lens (\Wave' {waveID} -> waveID) (\s@Wave' {} a -> s {waveID = a} :: Wave)++instance Data.FromJSON Wave where+ parseJSON =+ Data.withObject+ "Wave"+ ( \x ->+ Wave'+ Prelude.<$> (x Data..:? "arn")+ Prelude.<*> (x Data..:? "creationDateTime")+ Prelude.<*> (x Data..:? "description")+ Prelude.<*> (x Data..:? "isArchived")+ Prelude.<*> (x Data..:? "lastModifiedDateTime")+ Prelude.<*> (x Data..:? "name")+ Prelude.<*> (x Data..:? "tags" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "waveAggregatedStatus")+ Prelude.<*> (x Data..:? "waveID")+ )++instance Prelude.Hashable Wave where+ hashWithSalt _salt Wave' {..} =+ _salt+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` creationDateTime+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` isArchived+ `Prelude.hashWithSalt` lastModifiedDateTime+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` waveAggregatedStatus+ `Prelude.hashWithSalt` waveID++instance Prelude.NFData Wave where+ rnf Wave' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf creationDateTime+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf isArchived+ `Prelude.seq` Prelude.rnf lastModifiedDateTime+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf waveAggregatedStatus+ `Prelude.seq` Prelude.rnf waveID
+ gen/Amazonka/MGN/Types/WaveAggregatedStatus.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.MGN.Types.WaveAggregatedStatus+-- 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.MGN.Types.WaveAggregatedStatus where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types.WaveHealthStatus+import Amazonka.MGN.Types.WaveProgressStatus+import qualified Amazonka.Prelude as Prelude++-- | Wave aggregated status.+--+-- /See:/ 'newWaveAggregatedStatus' smart constructor.+data WaveAggregatedStatus = WaveAggregatedStatus'+ { -- | Wave aggregated status health status.+ healthStatus :: Prelude.Maybe WaveHealthStatus,+ -- | Wave aggregated status last update dateTime.+ lastUpdateDateTime :: Prelude.Maybe Prelude.Text,+ -- | Wave aggregated status progress status.+ progressStatus :: Prelude.Maybe WaveProgressStatus,+ -- | DateTime marking when the first source server in the wave started+ -- replication.+ replicationStartedDateTime :: Prelude.Maybe Prelude.Text,+ -- | Wave aggregated status total applications amount.+ totalApplications :: Prelude.Maybe Prelude.Natural+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'WaveAggregatedStatus' 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:+--+-- 'healthStatus', 'waveAggregatedStatus_healthStatus' - Wave aggregated status health status.+--+-- 'lastUpdateDateTime', 'waveAggregatedStatus_lastUpdateDateTime' - Wave aggregated status last update dateTime.+--+-- 'progressStatus', 'waveAggregatedStatus_progressStatus' - Wave aggregated status progress status.+--+-- 'replicationStartedDateTime', 'waveAggregatedStatus_replicationStartedDateTime' - DateTime marking when the first source server in the wave started+-- replication.+--+-- 'totalApplications', 'waveAggregatedStatus_totalApplications' - Wave aggregated status total applications amount.+newWaveAggregatedStatus ::+ WaveAggregatedStatus+newWaveAggregatedStatus =+ WaveAggregatedStatus'+ { healthStatus =+ Prelude.Nothing,+ lastUpdateDateTime = Prelude.Nothing,+ progressStatus = Prelude.Nothing,+ replicationStartedDateTime = Prelude.Nothing,+ totalApplications = Prelude.Nothing+ }++-- | Wave aggregated status health status.+waveAggregatedStatus_healthStatus :: Lens.Lens' WaveAggregatedStatus (Prelude.Maybe WaveHealthStatus)+waveAggregatedStatus_healthStatus = Lens.lens (\WaveAggregatedStatus' {healthStatus} -> healthStatus) (\s@WaveAggregatedStatus' {} a -> s {healthStatus = a} :: WaveAggregatedStatus)++-- | Wave aggregated status last update dateTime.+waveAggregatedStatus_lastUpdateDateTime :: Lens.Lens' WaveAggregatedStatus (Prelude.Maybe Prelude.Text)+waveAggregatedStatus_lastUpdateDateTime = Lens.lens (\WaveAggregatedStatus' {lastUpdateDateTime} -> lastUpdateDateTime) (\s@WaveAggregatedStatus' {} a -> s {lastUpdateDateTime = a} :: WaveAggregatedStatus)++-- | Wave aggregated status progress status.+waveAggregatedStatus_progressStatus :: Lens.Lens' WaveAggregatedStatus (Prelude.Maybe WaveProgressStatus)+waveAggregatedStatus_progressStatus = Lens.lens (\WaveAggregatedStatus' {progressStatus} -> progressStatus) (\s@WaveAggregatedStatus' {} a -> s {progressStatus = a} :: WaveAggregatedStatus)++-- | DateTime marking when the first source server in the wave started+-- replication.+waveAggregatedStatus_replicationStartedDateTime :: Lens.Lens' WaveAggregatedStatus (Prelude.Maybe Prelude.Text)+waveAggregatedStatus_replicationStartedDateTime = Lens.lens (\WaveAggregatedStatus' {replicationStartedDateTime} -> replicationStartedDateTime) (\s@WaveAggregatedStatus' {} a -> s {replicationStartedDateTime = a} :: WaveAggregatedStatus)++-- | Wave aggregated status total applications amount.+waveAggregatedStatus_totalApplications :: Lens.Lens' WaveAggregatedStatus (Prelude.Maybe Prelude.Natural)+waveAggregatedStatus_totalApplications = Lens.lens (\WaveAggregatedStatus' {totalApplications} -> totalApplications) (\s@WaveAggregatedStatus' {} a -> s {totalApplications = a} :: WaveAggregatedStatus)++instance Data.FromJSON WaveAggregatedStatus where+ parseJSON =+ Data.withObject+ "WaveAggregatedStatus"+ ( \x ->+ WaveAggregatedStatus'+ Prelude.<$> (x Data..:? "healthStatus")+ Prelude.<*> (x Data..:? "lastUpdateDateTime")+ Prelude.<*> (x Data..:? "progressStatus")+ Prelude.<*> (x Data..:? "replicationStartedDateTime")+ Prelude.<*> (x Data..:? "totalApplications")+ )++instance Prelude.Hashable WaveAggregatedStatus where+ hashWithSalt _salt WaveAggregatedStatus' {..} =+ _salt+ `Prelude.hashWithSalt` healthStatus+ `Prelude.hashWithSalt` lastUpdateDateTime+ `Prelude.hashWithSalt` progressStatus+ `Prelude.hashWithSalt` replicationStartedDateTime+ `Prelude.hashWithSalt` totalApplications++instance Prelude.NFData WaveAggregatedStatus where+ rnf WaveAggregatedStatus' {..} =+ Prelude.rnf healthStatus+ `Prelude.seq` Prelude.rnf lastUpdateDateTime+ `Prelude.seq` Prelude.rnf progressStatus+ `Prelude.seq` Prelude.rnf replicationStartedDateTime+ `Prelude.seq` Prelude.rnf totalApplications
+ gen/Amazonka/MGN/Types/WaveHealthStatus.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.MGN.Types.WaveHealthStatus+-- 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.MGN.Types.WaveHealthStatus+ ( WaveHealthStatus+ ( ..,+ WaveHealthStatus_ERROR,+ WaveHealthStatus_HEALTHY,+ WaveHealthStatus_LAGGING+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype WaveHealthStatus = WaveHealthStatus'+ { fromWaveHealthStatus ::+ 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 WaveHealthStatus_ERROR :: WaveHealthStatus+pattern WaveHealthStatus_ERROR = WaveHealthStatus' "ERROR"++pattern WaveHealthStatus_HEALTHY :: WaveHealthStatus+pattern WaveHealthStatus_HEALTHY = WaveHealthStatus' "HEALTHY"++pattern WaveHealthStatus_LAGGING :: WaveHealthStatus+pattern WaveHealthStatus_LAGGING = WaveHealthStatus' "LAGGING"++{-# COMPLETE+ WaveHealthStatus_ERROR,+ WaveHealthStatus_HEALTHY,+ WaveHealthStatus_LAGGING,+ WaveHealthStatus'+ #-}
+ gen/Amazonka/MGN/Types/WaveProgressStatus.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.MGN.Types.WaveProgressStatus+-- 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.MGN.Types.WaveProgressStatus+ ( WaveProgressStatus+ ( ..,+ WaveProgressStatus_COMPLETED,+ WaveProgressStatus_IN_PROGRESS,+ WaveProgressStatus_NOT_STARTED+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype WaveProgressStatus = WaveProgressStatus'+ { fromWaveProgressStatus ::+ 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 WaveProgressStatus_COMPLETED :: WaveProgressStatus+pattern WaveProgressStatus_COMPLETED = WaveProgressStatus' "COMPLETED"++pattern WaveProgressStatus_IN_PROGRESS :: WaveProgressStatus+pattern WaveProgressStatus_IN_PROGRESS = WaveProgressStatus' "IN_PROGRESS"++pattern WaveProgressStatus_NOT_STARTED :: WaveProgressStatus+pattern WaveProgressStatus_NOT_STARTED = WaveProgressStatus' "NOT_STARTED"++{-# COMPLETE+ WaveProgressStatus_COMPLETED,+ WaveProgressStatus_IN_PROGRESS,+ WaveProgressStatus_NOT_STARTED,+ WaveProgressStatus'+ #-}
+ gen/Amazonka/MGN/UnarchiveApplication.hs view
@@ -0,0 +1,128 @@+{-# 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.MGN.UnarchiveApplication+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Unarchive application.+module Amazonka.MGN.UnarchiveApplication+ ( -- * Creating a Request+ UnarchiveApplication (..),+ newUnarchiveApplication,++ -- * Request Lenses+ unarchiveApplication_applicationID,++ -- * Destructuring the Response+ Application (..),+ newApplication,++ -- * Response Lenses+ application_applicationAggregatedStatus,+ application_applicationID,+ application_arn,+ application_creationDateTime,+ application_description,+ application_isArchived,+ application_lastModifiedDateTime,+ application_name,+ application_tags,+ application_waveID,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUnarchiveApplication' smart constructor.+data UnarchiveApplication = UnarchiveApplication'+ { -- | Application ID.+ applicationID :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UnarchiveApplication' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationID', 'unarchiveApplication_applicationID' - Application ID.+newUnarchiveApplication ::+ -- | 'applicationID'+ Prelude.Text ->+ UnarchiveApplication+newUnarchiveApplication pApplicationID_ =+ UnarchiveApplication'+ { applicationID =+ pApplicationID_+ }++-- | Application ID.+unarchiveApplication_applicationID :: Lens.Lens' UnarchiveApplication Prelude.Text+unarchiveApplication_applicationID = Lens.lens (\UnarchiveApplication' {applicationID} -> applicationID) (\s@UnarchiveApplication' {} a -> s {applicationID = a} :: UnarchiveApplication)++instance Core.AWSRequest UnarchiveApplication where+ type AWSResponse UnarchiveApplication = Application+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ (\s h x -> Data.eitherParseJSON x)++instance Prelude.Hashable UnarchiveApplication where+ hashWithSalt _salt UnarchiveApplication' {..} =+ _salt `Prelude.hashWithSalt` applicationID++instance Prelude.NFData UnarchiveApplication where+ rnf UnarchiveApplication' {..} =+ Prelude.rnf applicationID++instance Data.ToHeaders UnarchiveApplication where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON UnarchiveApplication where+ toJSON UnarchiveApplication' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("applicationID" Data..= applicationID)+ ]+ )++instance Data.ToPath UnarchiveApplication where+ toPath = Prelude.const "/UnarchiveApplication"++instance Data.ToQuery UnarchiveApplication where+ toQuery = Prelude.const Prelude.mempty
+ gen/Amazonka/MGN/UnarchiveWave.hs view
@@ -0,0 +1,121 @@+{-# 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.MGN.UnarchiveWave+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Unarchive wave.+module Amazonka.MGN.UnarchiveWave+ ( -- * Creating a Request+ UnarchiveWave (..),+ newUnarchiveWave,++ -- * Request Lenses+ unarchiveWave_waveID,++ -- * Destructuring the Response+ Wave (..),+ newWave,++ -- * Response Lenses+ wave_arn,+ wave_creationDateTime,+ wave_description,+ wave_isArchived,+ wave_lastModifiedDateTime,+ wave_name,+ wave_tags,+ wave_waveAggregatedStatus,+ wave_waveID,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUnarchiveWave' smart constructor.+data UnarchiveWave = UnarchiveWave'+ { -- | Wave ID.+ waveID :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UnarchiveWave' 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:+--+-- 'waveID', 'unarchiveWave_waveID' - Wave ID.+newUnarchiveWave ::+ -- | 'waveID'+ Prelude.Text ->+ UnarchiveWave+newUnarchiveWave pWaveID_ =+ UnarchiveWave' {waveID = pWaveID_}++-- | Wave ID.+unarchiveWave_waveID :: Lens.Lens' UnarchiveWave Prelude.Text+unarchiveWave_waveID = Lens.lens (\UnarchiveWave' {waveID} -> waveID) (\s@UnarchiveWave' {} a -> s {waveID = a} :: UnarchiveWave)++instance Core.AWSRequest UnarchiveWave where+ type AWSResponse UnarchiveWave = Wave+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ (\s h x -> Data.eitherParseJSON x)++instance Prelude.Hashable UnarchiveWave where+ hashWithSalt _salt UnarchiveWave' {..} =+ _salt `Prelude.hashWithSalt` waveID++instance Prelude.NFData UnarchiveWave where+ rnf UnarchiveWave' {..} = Prelude.rnf waveID++instance Data.ToHeaders UnarchiveWave where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON UnarchiveWave where+ toJSON UnarchiveWave' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("waveID" Data..= waveID)]+ )++instance Data.ToPath UnarchiveWave where+ toPath = Prelude.const "/UnarchiveWave"++instance Data.ToQuery UnarchiveWave where+ toQuery = Prelude.const Prelude.mempty
+ gen/Amazonka/MGN/UntagResource.hs view
@@ -0,0 +1,141 @@+{-# 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.MGN.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)+--+-- Deletes the specified set of tags from the specified set of Application+-- Migration Service resources.+module Amazonka.MGN.UntagResource+ ( -- * Creating a Request+ UntagResource (..),+ newUntagResource,++ -- * Request Lenses+ untagResource_resourceArn,+ untagResource_tagKeys,++ -- * Destructuring the Response+ UntagResourceResponse (..),+ newUntagResourceResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUntagResource' smart constructor.+data UntagResource = UntagResource'+ { -- | Untag resource by ARN.+ resourceArn :: Prelude.Text,+ -- | Untag resource by Keys.+ tagKeys :: Data.Sensitive [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UntagResource' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'resourceArn', 'untagResource_resourceArn' - Untag resource by ARN.+--+-- 'tagKeys', 'untagResource_tagKeys' - Untag resource by Keys.+newUntagResource ::+ -- | 'resourceArn'+ Prelude.Text ->+ UntagResource+newUntagResource pResourceArn_ =+ UntagResource'+ { resourceArn = pResourceArn_,+ tagKeys = Prelude.mempty+ }++-- | Untag resource by ARN.+untagResource_resourceArn :: Lens.Lens' UntagResource Prelude.Text+untagResource_resourceArn = Lens.lens (\UntagResource' {resourceArn} -> resourceArn) (\s@UntagResource' {} a -> s {resourceArn = a} :: UntagResource)++-- | Untag resource by Keys.+untagResource_tagKeys :: Lens.Lens' UntagResource [Prelude.Text]+untagResource_tagKeys = Lens.lens (\UntagResource' {tagKeys} -> tagKeys) (\s@UntagResource' {} a -> s {tagKeys = a} :: UntagResource) Prelude.. Data._Sensitive Prelude.. Lens.coerced++instance Core.AWSRequest UntagResource where+ type+ AWSResponse UntagResource =+ UntagResourceResponse+ request overrides =+ Request.delete (overrides defaultService)+ response =+ Response.receiveNull UntagResourceResponse'++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'+ {+ }+ 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.+newUntagResourceResponse ::+ UntagResourceResponse+newUntagResourceResponse = UntagResourceResponse'++instance Prelude.NFData UntagResourceResponse where+ rnf _ = ()
+ gen/Amazonka/MGN/UpdateApplication.hs view
@@ -0,0 +1,154 @@+{-# 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.MGN.UpdateApplication+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Update application.+module Amazonka.MGN.UpdateApplication+ ( -- * Creating a Request+ UpdateApplication (..),+ newUpdateApplication,++ -- * Request Lenses+ updateApplication_description,+ updateApplication_name,+ updateApplication_applicationID,++ -- * Destructuring the Response+ Application (..),+ newApplication,++ -- * Response Lenses+ application_applicationAggregatedStatus,+ application_applicationID,+ application_arn,+ application_creationDateTime,+ application_description,+ application_isArchived,+ application_lastModifiedDateTime,+ application_name,+ application_tags,+ application_waveID,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateApplication' smart constructor.+data UpdateApplication = UpdateApplication'+ { -- | Application description.+ description :: Prelude.Maybe Prelude.Text,+ -- | Application name.+ name :: Prelude.Maybe Prelude.Text,+ -- | Application ID.+ applicationID :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateApplication' 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:+--+-- 'description', 'updateApplication_description' - Application description.+--+-- 'name', 'updateApplication_name' - Application name.+--+-- 'applicationID', 'updateApplication_applicationID' - Application ID.+newUpdateApplication ::+ -- | 'applicationID'+ Prelude.Text ->+ UpdateApplication+newUpdateApplication pApplicationID_ =+ UpdateApplication'+ { description = Prelude.Nothing,+ name = Prelude.Nothing,+ applicationID = pApplicationID_+ }++-- | Application description.+updateApplication_description :: Lens.Lens' UpdateApplication (Prelude.Maybe Prelude.Text)+updateApplication_description = Lens.lens (\UpdateApplication' {description} -> description) (\s@UpdateApplication' {} a -> s {description = a} :: UpdateApplication)++-- | Application name.+updateApplication_name :: Lens.Lens' UpdateApplication (Prelude.Maybe Prelude.Text)+updateApplication_name = Lens.lens (\UpdateApplication' {name} -> name) (\s@UpdateApplication' {} a -> s {name = a} :: UpdateApplication)++-- | Application ID.+updateApplication_applicationID :: Lens.Lens' UpdateApplication Prelude.Text+updateApplication_applicationID = Lens.lens (\UpdateApplication' {applicationID} -> applicationID) (\s@UpdateApplication' {} a -> s {applicationID = a} :: UpdateApplication)++instance Core.AWSRequest UpdateApplication where+ type AWSResponse UpdateApplication = Application+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ (\s h x -> Data.eitherParseJSON x)++instance Prelude.Hashable UpdateApplication where+ hashWithSalt _salt UpdateApplication' {..} =+ _salt+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` applicationID++instance Prelude.NFData UpdateApplication where+ rnf UpdateApplication' {..} =+ Prelude.rnf description+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf applicationID++instance Data.ToHeaders UpdateApplication where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON UpdateApplication where+ toJSON UpdateApplication' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("description" Data..=) Prelude.<$> description,+ ("name" Data..=) Prelude.<$> name,+ Prelude.Just+ ("applicationID" Data..= applicationID)+ ]+ )++instance Data.ToPath UpdateApplication where+ toPath = Prelude.const "/UpdateApplication"++instance Data.ToQuery UpdateApplication where+ toQuery = Prelude.const Prelude.mempty
+ gen/Amazonka/MGN/UpdateLaunchConfiguration.hs view
@@ -0,0 +1,268 @@+{-# 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.MGN.UpdateLaunchConfiguration+-- 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 multiple LaunchConfigurations by Source Server ID.+module Amazonka.MGN.UpdateLaunchConfiguration+ ( -- * Creating a Request+ UpdateLaunchConfiguration (..),+ newUpdateLaunchConfiguration,++ -- * Request Lenses+ updateLaunchConfiguration_bootMode,+ updateLaunchConfiguration_copyPrivateIp,+ updateLaunchConfiguration_copyTags,+ updateLaunchConfiguration_enableMapAutoTagging,+ updateLaunchConfiguration_launchDisposition,+ updateLaunchConfiguration_licensing,+ updateLaunchConfiguration_mapAutoTaggingMpeID,+ updateLaunchConfiguration_name,+ updateLaunchConfiguration_postLaunchActions,+ updateLaunchConfiguration_targetInstanceTypeRightSizingMethod,+ updateLaunchConfiguration_sourceServerID,++ -- * Destructuring the Response+ LaunchConfiguration (..),+ newLaunchConfiguration,++ -- * Response Lenses+ launchConfiguration_bootMode,+ launchConfiguration_copyPrivateIp,+ launchConfiguration_copyTags,+ launchConfiguration_ec2LaunchTemplateID,+ launchConfiguration_enableMapAutoTagging,+ launchConfiguration_launchDisposition,+ launchConfiguration_licensing,+ launchConfiguration_mapAutoTaggingMpeID,+ launchConfiguration_name,+ launchConfiguration_postLaunchActions,+ launchConfiguration_sourceServerID,+ launchConfiguration_targetInstanceTypeRightSizingMethod,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateLaunchConfiguration' smart constructor.+data UpdateLaunchConfiguration = UpdateLaunchConfiguration'+ { -- | Update Launch configuration boot mode request.+ bootMode :: Prelude.Maybe BootMode,+ -- | Update Launch configuration copy Private IP request.+ copyPrivateIp :: Prelude.Maybe Prelude.Bool,+ -- | Update Launch configuration copy Tags request.+ copyTags :: Prelude.Maybe Prelude.Bool,+ -- | Enable map auto tagging.+ enableMapAutoTagging :: Prelude.Maybe Prelude.Bool,+ -- | Update Launch configuration launch disposition request.+ launchDisposition :: Prelude.Maybe LaunchDisposition,+ -- | Update Launch configuration licensing request.+ licensing :: Prelude.Maybe Licensing,+ -- | Launch configuration map auto tagging MPE ID.+ mapAutoTaggingMpeID :: Prelude.Maybe Prelude.Text,+ -- | Update Launch configuration name request.+ name :: Prelude.Maybe Prelude.Text,+ postLaunchActions :: Prelude.Maybe PostLaunchActions,+ -- | Update Launch configuration Target instance right sizing request.+ targetInstanceTypeRightSizingMethod :: Prelude.Maybe TargetInstanceTypeRightSizingMethod,+ -- | Update Launch configuration by Source Server ID request.+ sourceServerID :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateLaunchConfiguration' 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:+--+-- 'bootMode', 'updateLaunchConfiguration_bootMode' - Update Launch configuration boot mode request.+--+-- 'copyPrivateIp', 'updateLaunchConfiguration_copyPrivateIp' - Update Launch configuration copy Private IP request.+--+-- 'copyTags', 'updateLaunchConfiguration_copyTags' - Update Launch configuration copy Tags request.+--+-- 'enableMapAutoTagging', 'updateLaunchConfiguration_enableMapAutoTagging' - Enable map auto tagging.+--+-- 'launchDisposition', 'updateLaunchConfiguration_launchDisposition' - Update Launch configuration launch disposition request.+--+-- 'licensing', 'updateLaunchConfiguration_licensing' - Update Launch configuration licensing request.+--+-- 'mapAutoTaggingMpeID', 'updateLaunchConfiguration_mapAutoTaggingMpeID' - Launch configuration map auto tagging MPE ID.+--+-- 'name', 'updateLaunchConfiguration_name' - Update Launch configuration name request.+--+-- 'postLaunchActions', 'updateLaunchConfiguration_postLaunchActions' - Undocumented member.+--+-- 'targetInstanceTypeRightSizingMethod', 'updateLaunchConfiguration_targetInstanceTypeRightSizingMethod' - Update Launch configuration Target instance right sizing request.+--+-- 'sourceServerID', 'updateLaunchConfiguration_sourceServerID' - Update Launch configuration by Source Server ID request.+newUpdateLaunchConfiguration ::+ -- | 'sourceServerID'+ Prelude.Text ->+ UpdateLaunchConfiguration+newUpdateLaunchConfiguration pSourceServerID_ =+ UpdateLaunchConfiguration'+ { bootMode =+ Prelude.Nothing,+ copyPrivateIp = Prelude.Nothing,+ copyTags = Prelude.Nothing,+ enableMapAutoTagging = Prelude.Nothing,+ launchDisposition = Prelude.Nothing,+ licensing = Prelude.Nothing,+ mapAutoTaggingMpeID = Prelude.Nothing,+ name = Prelude.Nothing,+ postLaunchActions = Prelude.Nothing,+ targetInstanceTypeRightSizingMethod =+ Prelude.Nothing,+ sourceServerID = pSourceServerID_+ }++-- | Update Launch configuration boot mode request.+updateLaunchConfiguration_bootMode :: Lens.Lens' UpdateLaunchConfiguration (Prelude.Maybe BootMode)+updateLaunchConfiguration_bootMode = Lens.lens (\UpdateLaunchConfiguration' {bootMode} -> bootMode) (\s@UpdateLaunchConfiguration' {} a -> s {bootMode = a} :: UpdateLaunchConfiguration)++-- | Update Launch configuration copy Private IP request.+updateLaunchConfiguration_copyPrivateIp :: Lens.Lens' UpdateLaunchConfiguration (Prelude.Maybe Prelude.Bool)+updateLaunchConfiguration_copyPrivateIp = Lens.lens (\UpdateLaunchConfiguration' {copyPrivateIp} -> copyPrivateIp) (\s@UpdateLaunchConfiguration' {} a -> s {copyPrivateIp = a} :: UpdateLaunchConfiguration)++-- | Update Launch configuration copy Tags request.+updateLaunchConfiguration_copyTags :: Lens.Lens' UpdateLaunchConfiguration (Prelude.Maybe Prelude.Bool)+updateLaunchConfiguration_copyTags = Lens.lens (\UpdateLaunchConfiguration' {copyTags} -> copyTags) (\s@UpdateLaunchConfiguration' {} a -> s {copyTags = a} :: UpdateLaunchConfiguration)++-- | Enable map auto tagging.+updateLaunchConfiguration_enableMapAutoTagging :: Lens.Lens' UpdateLaunchConfiguration (Prelude.Maybe Prelude.Bool)+updateLaunchConfiguration_enableMapAutoTagging = Lens.lens (\UpdateLaunchConfiguration' {enableMapAutoTagging} -> enableMapAutoTagging) (\s@UpdateLaunchConfiguration' {} a -> s {enableMapAutoTagging = a} :: UpdateLaunchConfiguration)++-- | Update Launch configuration launch disposition request.+updateLaunchConfiguration_launchDisposition :: Lens.Lens' UpdateLaunchConfiguration (Prelude.Maybe LaunchDisposition)+updateLaunchConfiguration_launchDisposition = Lens.lens (\UpdateLaunchConfiguration' {launchDisposition} -> launchDisposition) (\s@UpdateLaunchConfiguration' {} a -> s {launchDisposition = a} :: UpdateLaunchConfiguration)++-- | Update Launch configuration licensing request.+updateLaunchConfiguration_licensing :: Lens.Lens' UpdateLaunchConfiguration (Prelude.Maybe Licensing)+updateLaunchConfiguration_licensing = Lens.lens (\UpdateLaunchConfiguration' {licensing} -> licensing) (\s@UpdateLaunchConfiguration' {} a -> s {licensing = a} :: UpdateLaunchConfiguration)++-- | Launch configuration map auto tagging MPE ID.+updateLaunchConfiguration_mapAutoTaggingMpeID :: Lens.Lens' UpdateLaunchConfiguration (Prelude.Maybe Prelude.Text)+updateLaunchConfiguration_mapAutoTaggingMpeID = Lens.lens (\UpdateLaunchConfiguration' {mapAutoTaggingMpeID} -> mapAutoTaggingMpeID) (\s@UpdateLaunchConfiguration' {} a -> s {mapAutoTaggingMpeID = a} :: UpdateLaunchConfiguration)++-- | Update Launch configuration name request.+updateLaunchConfiguration_name :: Lens.Lens' UpdateLaunchConfiguration (Prelude.Maybe Prelude.Text)+updateLaunchConfiguration_name = Lens.lens (\UpdateLaunchConfiguration' {name} -> name) (\s@UpdateLaunchConfiguration' {} a -> s {name = a} :: UpdateLaunchConfiguration)++-- | Undocumented member.+updateLaunchConfiguration_postLaunchActions :: Lens.Lens' UpdateLaunchConfiguration (Prelude.Maybe PostLaunchActions)+updateLaunchConfiguration_postLaunchActions = Lens.lens (\UpdateLaunchConfiguration' {postLaunchActions} -> postLaunchActions) (\s@UpdateLaunchConfiguration' {} a -> s {postLaunchActions = a} :: UpdateLaunchConfiguration)++-- | Update Launch configuration Target instance right sizing request.+updateLaunchConfiguration_targetInstanceTypeRightSizingMethod :: Lens.Lens' UpdateLaunchConfiguration (Prelude.Maybe TargetInstanceTypeRightSizingMethod)+updateLaunchConfiguration_targetInstanceTypeRightSizingMethod = Lens.lens (\UpdateLaunchConfiguration' {targetInstanceTypeRightSizingMethod} -> targetInstanceTypeRightSizingMethod) (\s@UpdateLaunchConfiguration' {} a -> s {targetInstanceTypeRightSizingMethod = a} :: UpdateLaunchConfiguration)++-- | Update Launch configuration by Source Server ID request.+updateLaunchConfiguration_sourceServerID :: Lens.Lens' UpdateLaunchConfiguration Prelude.Text+updateLaunchConfiguration_sourceServerID = Lens.lens (\UpdateLaunchConfiguration' {sourceServerID} -> sourceServerID) (\s@UpdateLaunchConfiguration' {} a -> s {sourceServerID = a} :: UpdateLaunchConfiguration)++instance Core.AWSRequest UpdateLaunchConfiguration where+ type+ AWSResponse UpdateLaunchConfiguration =+ LaunchConfiguration+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ (\s h x -> Data.eitherParseJSON x)++instance Prelude.Hashable UpdateLaunchConfiguration where+ hashWithSalt _salt UpdateLaunchConfiguration' {..} =+ _salt+ `Prelude.hashWithSalt` bootMode+ `Prelude.hashWithSalt` copyPrivateIp+ `Prelude.hashWithSalt` copyTags+ `Prelude.hashWithSalt` enableMapAutoTagging+ `Prelude.hashWithSalt` launchDisposition+ `Prelude.hashWithSalt` licensing+ `Prelude.hashWithSalt` mapAutoTaggingMpeID+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` postLaunchActions+ `Prelude.hashWithSalt` targetInstanceTypeRightSizingMethod+ `Prelude.hashWithSalt` sourceServerID++instance Prelude.NFData UpdateLaunchConfiguration where+ rnf UpdateLaunchConfiguration' {..} =+ Prelude.rnf bootMode+ `Prelude.seq` Prelude.rnf copyPrivateIp+ `Prelude.seq` Prelude.rnf copyTags+ `Prelude.seq` Prelude.rnf enableMapAutoTagging+ `Prelude.seq` Prelude.rnf launchDisposition+ `Prelude.seq` Prelude.rnf licensing+ `Prelude.seq` Prelude.rnf mapAutoTaggingMpeID+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf postLaunchActions+ `Prelude.seq` Prelude.rnf targetInstanceTypeRightSizingMethod+ `Prelude.seq` Prelude.rnf sourceServerID++instance Data.ToHeaders UpdateLaunchConfiguration where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON UpdateLaunchConfiguration where+ toJSON UpdateLaunchConfiguration' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("bootMode" Data..=) Prelude.<$> bootMode,+ ("copyPrivateIp" Data..=) Prelude.<$> copyPrivateIp,+ ("copyTags" Data..=) Prelude.<$> copyTags,+ ("enableMapAutoTagging" Data..=)+ Prelude.<$> enableMapAutoTagging,+ ("launchDisposition" Data..=)+ Prelude.<$> launchDisposition,+ ("licensing" Data..=) Prelude.<$> licensing,+ ("mapAutoTaggingMpeID" Data..=)+ Prelude.<$> mapAutoTaggingMpeID,+ ("name" Data..=) Prelude.<$> name,+ ("postLaunchActions" Data..=)+ Prelude.<$> postLaunchActions,+ ("targetInstanceTypeRightSizingMethod" Data..=)+ Prelude.<$> targetInstanceTypeRightSizingMethod,+ Prelude.Just+ ("sourceServerID" Data..= sourceServerID)+ ]+ )++instance Data.ToPath UpdateLaunchConfiguration where+ toPath = Prelude.const "/UpdateLaunchConfiguration"++instance Data.ToQuery UpdateLaunchConfiguration where+ toQuery = Prelude.const Prelude.mempty
+ gen/Amazonka/MGN/UpdateLaunchConfigurationTemplate.hs view
@@ -0,0 +1,345 @@+{-# 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.MGN.UpdateLaunchConfigurationTemplate+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Updates an existing Launch Configuration Template by ID.+module Amazonka.MGN.UpdateLaunchConfigurationTemplate+ ( -- * Creating a Request+ UpdateLaunchConfigurationTemplate (..),+ newUpdateLaunchConfigurationTemplate,++ -- * Request Lenses+ updateLaunchConfigurationTemplate_associatePublicIpAddress,+ updateLaunchConfigurationTemplate_bootMode,+ updateLaunchConfigurationTemplate_copyPrivateIp,+ updateLaunchConfigurationTemplate_copyTags,+ updateLaunchConfigurationTemplate_enableMapAutoTagging,+ updateLaunchConfigurationTemplate_largeVolumeConf,+ updateLaunchConfigurationTemplate_launchDisposition,+ updateLaunchConfigurationTemplate_licensing,+ updateLaunchConfigurationTemplate_mapAutoTaggingMpeID,+ updateLaunchConfigurationTemplate_postLaunchActions,+ updateLaunchConfigurationTemplate_smallVolumeConf,+ updateLaunchConfigurationTemplate_smallVolumeMaxSize,+ updateLaunchConfigurationTemplate_targetInstanceTypeRightSizingMethod,+ updateLaunchConfigurationTemplate_launchConfigurationTemplateID,++ -- * Destructuring the Response+ LaunchConfigurationTemplate (..),+ newLaunchConfigurationTemplate,++ -- * Response Lenses+ launchConfigurationTemplate_arn,+ launchConfigurationTemplate_associatePublicIpAddress,+ launchConfigurationTemplate_bootMode,+ launchConfigurationTemplate_copyPrivateIp,+ launchConfigurationTemplate_copyTags,+ launchConfigurationTemplate_ec2LaunchTemplateID,+ launchConfigurationTemplate_enableMapAutoTagging,+ launchConfigurationTemplate_largeVolumeConf,+ launchConfigurationTemplate_launchDisposition,+ launchConfigurationTemplate_licensing,+ launchConfigurationTemplate_mapAutoTaggingMpeID,+ launchConfigurationTemplate_postLaunchActions,+ launchConfigurationTemplate_smallVolumeConf,+ launchConfigurationTemplate_smallVolumeMaxSize,+ launchConfigurationTemplate_tags,+ launchConfigurationTemplate_targetInstanceTypeRightSizingMethod,+ launchConfigurationTemplate_launchConfigurationTemplateID,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateLaunchConfigurationTemplate' smart constructor.+data UpdateLaunchConfigurationTemplate = UpdateLaunchConfigurationTemplate'+ { -- | Associate public Ip address.+ associatePublicIpAddress :: Prelude.Maybe Prelude.Bool,+ -- | Launch configuration template boot mode.+ bootMode :: Prelude.Maybe BootMode,+ -- | Copy private Ip.+ copyPrivateIp :: Prelude.Maybe Prelude.Bool,+ -- | Copy tags.+ copyTags :: Prelude.Maybe Prelude.Bool,+ -- | Enable map auto tagging.+ enableMapAutoTagging :: Prelude.Maybe Prelude.Bool,+ -- | Large volume config.+ largeVolumeConf :: Prelude.Maybe LaunchTemplateDiskConf,+ -- | Launch disposition.+ launchDisposition :: Prelude.Maybe LaunchDisposition,+ licensing :: Prelude.Maybe Licensing,+ -- | Launch configuration template map auto tagging MPE ID.+ mapAutoTaggingMpeID :: Prelude.Maybe Prelude.Text,+ -- | Post Launch Action to execute on the Test or Cutover instance.+ postLaunchActions :: Prelude.Maybe PostLaunchActions,+ -- | Small volume config.+ smallVolumeConf :: Prelude.Maybe LaunchTemplateDiskConf,+ -- | Small volume maximum size.+ smallVolumeMaxSize :: Prelude.Maybe Prelude.Natural,+ -- | Target instance type right-sizing method.+ targetInstanceTypeRightSizingMethod :: Prelude.Maybe TargetInstanceTypeRightSizingMethod,+ -- | Launch Configuration Template ID.+ launchConfigurationTemplateID :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateLaunchConfigurationTemplate' 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:+--+-- 'associatePublicIpAddress', 'updateLaunchConfigurationTemplate_associatePublicIpAddress' - Associate public Ip address.+--+-- 'bootMode', 'updateLaunchConfigurationTemplate_bootMode' - Launch configuration template boot mode.+--+-- 'copyPrivateIp', 'updateLaunchConfigurationTemplate_copyPrivateIp' - Copy private Ip.+--+-- 'copyTags', 'updateLaunchConfigurationTemplate_copyTags' - Copy tags.+--+-- 'enableMapAutoTagging', 'updateLaunchConfigurationTemplate_enableMapAutoTagging' - Enable map auto tagging.+--+-- 'largeVolumeConf', 'updateLaunchConfigurationTemplate_largeVolumeConf' - Large volume config.+--+-- 'launchDisposition', 'updateLaunchConfigurationTemplate_launchDisposition' - Launch disposition.+--+-- 'licensing', 'updateLaunchConfigurationTemplate_licensing' - Undocumented member.+--+-- 'mapAutoTaggingMpeID', 'updateLaunchConfigurationTemplate_mapAutoTaggingMpeID' - Launch configuration template map auto tagging MPE ID.+--+-- 'postLaunchActions', 'updateLaunchConfigurationTemplate_postLaunchActions' - Post Launch Action to execute on the Test or Cutover instance.+--+-- 'smallVolumeConf', 'updateLaunchConfigurationTemplate_smallVolumeConf' - Small volume config.+--+-- 'smallVolumeMaxSize', 'updateLaunchConfigurationTemplate_smallVolumeMaxSize' - Small volume maximum size.+--+-- 'targetInstanceTypeRightSizingMethod', 'updateLaunchConfigurationTemplate_targetInstanceTypeRightSizingMethod' - Target instance type right-sizing method.+--+-- 'launchConfigurationTemplateID', 'updateLaunchConfigurationTemplate_launchConfigurationTemplateID' - Launch Configuration Template ID.+newUpdateLaunchConfigurationTemplate ::+ -- | 'launchConfigurationTemplateID'+ Prelude.Text ->+ UpdateLaunchConfigurationTemplate+newUpdateLaunchConfigurationTemplate+ pLaunchConfigurationTemplateID_ =+ UpdateLaunchConfigurationTemplate'+ { associatePublicIpAddress =+ Prelude.Nothing,+ bootMode = Prelude.Nothing,+ copyPrivateIp = Prelude.Nothing,+ copyTags = Prelude.Nothing,+ enableMapAutoTagging = Prelude.Nothing,+ largeVolumeConf = Prelude.Nothing,+ launchDisposition = Prelude.Nothing,+ licensing = Prelude.Nothing,+ mapAutoTaggingMpeID = Prelude.Nothing,+ postLaunchActions = Prelude.Nothing,+ smallVolumeConf = Prelude.Nothing,+ smallVolumeMaxSize = Prelude.Nothing,+ targetInstanceTypeRightSizingMethod =+ Prelude.Nothing,+ launchConfigurationTemplateID =+ pLaunchConfigurationTemplateID_+ }++-- | Associate public Ip address.+updateLaunchConfigurationTemplate_associatePublicIpAddress :: Lens.Lens' UpdateLaunchConfigurationTemplate (Prelude.Maybe Prelude.Bool)+updateLaunchConfigurationTemplate_associatePublicIpAddress = Lens.lens (\UpdateLaunchConfigurationTemplate' {associatePublicIpAddress} -> associatePublicIpAddress) (\s@UpdateLaunchConfigurationTemplate' {} a -> s {associatePublicIpAddress = a} :: UpdateLaunchConfigurationTemplate)++-- | Launch configuration template boot mode.+updateLaunchConfigurationTemplate_bootMode :: Lens.Lens' UpdateLaunchConfigurationTemplate (Prelude.Maybe BootMode)+updateLaunchConfigurationTemplate_bootMode = Lens.lens (\UpdateLaunchConfigurationTemplate' {bootMode} -> bootMode) (\s@UpdateLaunchConfigurationTemplate' {} a -> s {bootMode = a} :: UpdateLaunchConfigurationTemplate)++-- | Copy private Ip.+updateLaunchConfigurationTemplate_copyPrivateIp :: Lens.Lens' UpdateLaunchConfigurationTemplate (Prelude.Maybe Prelude.Bool)+updateLaunchConfigurationTemplate_copyPrivateIp = Lens.lens (\UpdateLaunchConfigurationTemplate' {copyPrivateIp} -> copyPrivateIp) (\s@UpdateLaunchConfigurationTemplate' {} a -> s {copyPrivateIp = a} :: UpdateLaunchConfigurationTemplate)++-- | Copy tags.+updateLaunchConfigurationTemplate_copyTags :: Lens.Lens' UpdateLaunchConfigurationTemplate (Prelude.Maybe Prelude.Bool)+updateLaunchConfigurationTemplate_copyTags = Lens.lens (\UpdateLaunchConfigurationTemplate' {copyTags} -> copyTags) (\s@UpdateLaunchConfigurationTemplate' {} a -> s {copyTags = a} :: UpdateLaunchConfigurationTemplate)++-- | Enable map auto tagging.+updateLaunchConfigurationTemplate_enableMapAutoTagging :: Lens.Lens' UpdateLaunchConfigurationTemplate (Prelude.Maybe Prelude.Bool)+updateLaunchConfigurationTemplate_enableMapAutoTagging = Lens.lens (\UpdateLaunchConfigurationTemplate' {enableMapAutoTagging} -> enableMapAutoTagging) (\s@UpdateLaunchConfigurationTemplate' {} a -> s {enableMapAutoTagging = a} :: UpdateLaunchConfigurationTemplate)++-- | Large volume config.+updateLaunchConfigurationTemplate_largeVolumeConf :: Lens.Lens' UpdateLaunchConfigurationTemplate (Prelude.Maybe LaunchTemplateDiskConf)+updateLaunchConfigurationTemplate_largeVolumeConf = Lens.lens (\UpdateLaunchConfigurationTemplate' {largeVolumeConf} -> largeVolumeConf) (\s@UpdateLaunchConfigurationTemplate' {} a -> s {largeVolumeConf = a} :: UpdateLaunchConfigurationTemplate)++-- | Launch disposition.+updateLaunchConfigurationTemplate_launchDisposition :: Lens.Lens' UpdateLaunchConfigurationTemplate (Prelude.Maybe LaunchDisposition)+updateLaunchConfigurationTemplate_launchDisposition = Lens.lens (\UpdateLaunchConfigurationTemplate' {launchDisposition} -> launchDisposition) (\s@UpdateLaunchConfigurationTemplate' {} a -> s {launchDisposition = a} :: UpdateLaunchConfigurationTemplate)++-- | Undocumented member.+updateLaunchConfigurationTemplate_licensing :: Lens.Lens' UpdateLaunchConfigurationTemplate (Prelude.Maybe Licensing)+updateLaunchConfigurationTemplate_licensing = Lens.lens (\UpdateLaunchConfigurationTemplate' {licensing} -> licensing) (\s@UpdateLaunchConfigurationTemplate' {} a -> s {licensing = a} :: UpdateLaunchConfigurationTemplate)++-- | Launch configuration template map auto tagging MPE ID.+updateLaunchConfigurationTemplate_mapAutoTaggingMpeID :: Lens.Lens' UpdateLaunchConfigurationTemplate (Prelude.Maybe Prelude.Text)+updateLaunchConfigurationTemplate_mapAutoTaggingMpeID = Lens.lens (\UpdateLaunchConfigurationTemplate' {mapAutoTaggingMpeID} -> mapAutoTaggingMpeID) (\s@UpdateLaunchConfigurationTemplate' {} a -> s {mapAutoTaggingMpeID = a} :: UpdateLaunchConfigurationTemplate)++-- | Post Launch Action to execute on the Test or Cutover instance.+updateLaunchConfigurationTemplate_postLaunchActions :: Lens.Lens' UpdateLaunchConfigurationTemplate (Prelude.Maybe PostLaunchActions)+updateLaunchConfigurationTemplate_postLaunchActions = Lens.lens (\UpdateLaunchConfigurationTemplate' {postLaunchActions} -> postLaunchActions) (\s@UpdateLaunchConfigurationTemplate' {} a -> s {postLaunchActions = a} :: UpdateLaunchConfigurationTemplate)++-- | Small volume config.+updateLaunchConfigurationTemplate_smallVolumeConf :: Lens.Lens' UpdateLaunchConfigurationTemplate (Prelude.Maybe LaunchTemplateDiskConf)+updateLaunchConfigurationTemplate_smallVolumeConf = Lens.lens (\UpdateLaunchConfigurationTemplate' {smallVolumeConf} -> smallVolumeConf) (\s@UpdateLaunchConfigurationTemplate' {} a -> s {smallVolumeConf = a} :: UpdateLaunchConfigurationTemplate)++-- | Small volume maximum size.+updateLaunchConfigurationTemplate_smallVolumeMaxSize :: Lens.Lens' UpdateLaunchConfigurationTemplate (Prelude.Maybe Prelude.Natural)+updateLaunchConfigurationTemplate_smallVolumeMaxSize = Lens.lens (\UpdateLaunchConfigurationTemplate' {smallVolumeMaxSize} -> smallVolumeMaxSize) (\s@UpdateLaunchConfigurationTemplate' {} a -> s {smallVolumeMaxSize = a} :: UpdateLaunchConfigurationTemplate)++-- | Target instance type right-sizing method.+updateLaunchConfigurationTemplate_targetInstanceTypeRightSizingMethod :: Lens.Lens' UpdateLaunchConfigurationTemplate (Prelude.Maybe TargetInstanceTypeRightSizingMethod)+updateLaunchConfigurationTemplate_targetInstanceTypeRightSizingMethod = Lens.lens (\UpdateLaunchConfigurationTemplate' {targetInstanceTypeRightSizingMethod} -> targetInstanceTypeRightSizingMethod) (\s@UpdateLaunchConfigurationTemplate' {} a -> s {targetInstanceTypeRightSizingMethod = a} :: UpdateLaunchConfigurationTemplate)++-- | Launch Configuration Template ID.+updateLaunchConfigurationTemplate_launchConfigurationTemplateID :: Lens.Lens' UpdateLaunchConfigurationTemplate Prelude.Text+updateLaunchConfigurationTemplate_launchConfigurationTemplateID = Lens.lens (\UpdateLaunchConfigurationTemplate' {launchConfigurationTemplateID} -> launchConfigurationTemplateID) (\s@UpdateLaunchConfigurationTemplate' {} a -> s {launchConfigurationTemplateID = a} :: UpdateLaunchConfigurationTemplate)++instance+ Core.AWSRequest+ UpdateLaunchConfigurationTemplate+ where+ type+ AWSResponse UpdateLaunchConfigurationTemplate =+ LaunchConfigurationTemplate+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ (\s h x -> Data.eitherParseJSON x)++instance+ Prelude.Hashable+ UpdateLaunchConfigurationTemplate+ where+ hashWithSalt+ _salt+ UpdateLaunchConfigurationTemplate' {..} =+ _salt+ `Prelude.hashWithSalt` associatePublicIpAddress+ `Prelude.hashWithSalt` bootMode+ `Prelude.hashWithSalt` copyPrivateIp+ `Prelude.hashWithSalt` copyTags+ `Prelude.hashWithSalt` enableMapAutoTagging+ `Prelude.hashWithSalt` largeVolumeConf+ `Prelude.hashWithSalt` launchDisposition+ `Prelude.hashWithSalt` licensing+ `Prelude.hashWithSalt` mapAutoTaggingMpeID+ `Prelude.hashWithSalt` postLaunchActions+ `Prelude.hashWithSalt` smallVolumeConf+ `Prelude.hashWithSalt` smallVolumeMaxSize+ `Prelude.hashWithSalt` targetInstanceTypeRightSizingMethod+ `Prelude.hashWithSalt` launchConfigurationTemplateID++instance+ Prelude.NFData+ UpdateLaunchConfigurationTemplate+ where+ rnf UpdateLaunchConfigurationTemplate' {..} =+ Prelude.rnf associatePublicIpAddress+ `Prelude.seq` Prelude.rnf bootMode+ `Prelude.seq` Prelude.rnf copyPrivateIp+ `Prelude.seq` Prelude.rnf copyTags+ `Prelude.seq` Prelude.rnf enableMapAutoTagging+ `Prelude.seq` Prelude.rnf largeVolumeConf+ `Prelude.seq` Prelude.rnf launchDisposition+ `Prelude.seq` Prelude.rnf licensing+ `Prelude.seq` Prelude.rnf mapAutoTaggingMpeID+ `Prelude.seq` Prelude.rnf postLaunchActions+ `Prelude.seq` Prelude.rnf smallVolumeConf+ `Prelude.seq` Prelude.rnf smallVolumeMaxSize+ `Prelude.seq` Prelude.rnf+ targetInstanceTypeRightSizingMethod+ `Prelude.seq` Prelude.rnf launchConfigurationTemplateID++instance+ Data.ToHeaders+ UpdateLaunchConfigurationTemplate+ where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance+ Data.ToJSON+ UpdateLaunchConfigurationTemplate+ where+ toJSON UpdateLaunchConfigurationTemplate' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("associatePublicIpAddress" Data..=)+ Prelude.<$> associatePublicIpAddress,+ ("bootMode" Data..=) Prelude.<$> bootMode,+ ("copyPrivateIp" Data..=) Prelude.<$> copyPrivateIp,+ ("copyTags" Data..=) Prelude.<$> copyTags,+ ("enableMapAutoTagging" Data..=)+ Prelude.<$> enableMapAutoTagging,+ ("largeVolumeConf" Data..=)+ Prelude.<$> largeVolumeConf,+ ("launchDisposition" Data..=)+ Prelude.<$> launchDisposition,+ ("licensing" Data..=) Prelude.<$> licensing,+ ("mapAutoTaggingMpeID" Data..=)+ Prelude.<$> mapAutoTaggingMpeID,+ ("postLaunchActions" Data..=)+ Prelude.<$> postLaunchActions,+ ("smallVolumeConf" Data..=)+ Prelude.<$> smallVolumeConf,+ ("smallVolumeMaxSize" Data..=)+ Prelude.<$> smallVolumeMaxSize,+ ("targetInstanceTypeRightSizingMethod" Data..=)+ Prelude.<$> targetInstanceTypeRightSizingMethod,+ Prelude.Just+ ( "launchConfigurationTemplateID"+ Data..= launchConfigurationTemplateID+ )+ ]+ )++instance+ Data.ToPath+ UpdateLaunchConfigurationTemplate+ where+ toPath =+ Prelude.const "/UpdateLaunchConfigurationTemplate"++instance+ Data.ToQuery+ UpdateLaunchConfigurationTemplate+ where+ toQuery = Prelude.const Prelude.mempty
+ gen/Amazonka/MGN/UpdateReplicationConfiguration.hs view
@@ -0,0 +1,365 @@+{-# 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.MGN.UpdateReplicationConfiguration+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Allows you to update multiple ReplicationConfigurations by Source Server+-- ID.+module Amazonka.MGN.UpdateReplicationConfiguration+ ( -- * Creating a Request+ UpdateReplicationConfiguration (..),+ newUpdateReplicationConfiguration,++ -- * Request Lenses+ updateReplicationConfiguration_associateDefaultSecurityGroup,+ updateReplicationConfiguration_bandwidthThrottling,+ updateReplicationConfiguration_createPublicIP,+ updateReplicationConfiguration_dataPlaneRouting,+ updateReplicationConfiguration_defaultLargeStagingDiskType,+ updateReplicationConfiguration_ebsEncryption,+ updateReplicationConfiguration_ebsEncryptionKeyArn,+ updateReplicationConfiguration_name,+ updateReplicationConfiguration_replicatedDisks,+ updateReplicationConfiguration_replicationServerInstanceType,+ updateReplicationConfiguration_replicationServersSecurityGroupsIDs,+ updateReplicationConfiguration_stagingAreaSubnetId,+ updateReplicationConfiguration_stagingAreaTags,+ updateReplicationConfiguration_useDedicatedReplicationServer,+ updateReplicationConfiguration_sourceServerID,++ -- * Destructuring the Response+ ReplicationConfiguration (..),+ newReplicationConfiguration,++ -- * Response Lenses+ replicationConfiguration_associateDefaultSecurityGroup,+ replicationConfiguration_bandwidthThrottling,+ replicationConfiguration_createPublicIP,+ replicationConfiguration_dataPlaneRouting,+ replicationConfiguration_defaultLargeStagingDiskType,+ replicationConfiguration_ebsEncryption,+ replicationConfiguration_ebsEncryptionKeyArn,+ replicationConfiguration_name,+ replicationConfiguration_replicatedDisks,+ replicationConfiguration_replicationServerInstanceType,+ replicationConfiguration_replicationServersSecurityGroupsIDs,+ replicationConfiguration_sourceServerID,+ replicationConfiguration_stagingAreaSubnetId,+ replicationConfiguration_stagingAreaTags,+ replicationConfiguration_useDedicatedReplicationServer,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateReplicationConfiguration' smart constructor.+data UpdateReplicationConfiguration = UpdateReplicationConfiguration'+ { -- | Update replication configuration associate default Application Migration+ -- Service Security group request.+ associateDefaultSecurityGroup :: Prelude.Maybe Prelude.Bool,+ -- | Update replication configuration bandwidth throttling request.+ bandwidthThrottling :: Prelude.Maybe Prelude.Natural,+ -- | Update replication configuration create Public IP request.+ createPublicIP :: Prelude.Maybe Prelude.Bool,+ -- | Update replication configuration data plane routing request.+ dataPlaneRouting :: Prelude.Maybe ReplicationConfigurationDataPlaneRouting,+ -- | Update replication configuration use default large Staging Disk type+ -- request.+ defaultLargeStagingDiskType :: Prelude.Maybe ReplicationConfigurationDefaultLargeStagingDiskType,+ -- | Update replication configuration EBS encryption request.+ ebsEncryption :: Prelude.Maybe ReplicationConfigurationEbsEncryption,+ -- | Update replication configuration EBS encryption key ARN request.+ ebsEncryptionKeyArn :: Prelude.Maybe Prelude.Text,+ -- | Update replication configuration name request.+ name :: Prelude.Maybe Prelude.Text,+ -- | Update replication configuration replicated disks request.+ replicatedDisks :: Prelude.Maybe [ReplicationConfigurationReplicatedDisk],+ -- | Update replication configuration Replication Server instance type+ -- request.+ replicationServerInstanceType :: Prelude.Maybe Prelude.Text,+ -- | Update replication configuration Replication Server Security Groups IDs+ -- request.+ replicationServersSecurityGroupsIDs :: Prelude.Maybe [Prelude.Text],+ -- | Update replication configuration Staging Area subnet request.+ stagingAreaSubnetId :: Prelude.Maybe Prelude.Text,+ -- | Update replication configuration Staging Area Tags request.+ stagingAreaTags :: Prelude.Maybe (Data.Sensitive (Prelude.HashMap Prelude.Text Prelude.Text)),+ -- | Update replication configuration use dedicated Replication Server+ -- request.+ useDedicatedReplicationServer :: Prelude.Maybe Prelude.Bool,+ -- | Update replication configuration Source Server ID request.+ sourceServerID :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateReplicationConfiguration' 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:+--+-- 'associateDefaultSecurityGroup', 'updateReplicationConfiguration_associateDefaultSecurityGroup' - Update replication configuration associate default Application Migration+-- Service Security group request.+--+-- 'bandwidthThrottling', 'updateReplicationConfiguration_bandwidthThrottling' - Update replication configuration bandwidth throttling request.+--+-- 'createPublicIP', 'updateReplicationConfiguration_createPublicIP' - Update replication configuration create Public IP request.+--+-- 'dataPlaneRouting', 'updateReplicationConfiguration_dataPlaneRouting' - Update replication configuration data plane routing request.+--+-- 'defaultLargeStagingDiskType', 'updateReplicationConfiguration_defaultLargeStagingDiskType' - Update replication configuration use default large Staging Disk type+-- request.+--+-- 'ebsEncryption', 'updateReplicationConfiguration_ebsEncryption' - Update replication configuration EBS encryption request.+--+-- 'ebsEncryptionKeyArn', 'updateReplicationConfiguration_ebsEncryptionKeyArn' - Update replication configuration EBS encryption key ARN request.+--+-- 'name', 'updateReplicationConfiguration_name' - Update replication configuration name request.+--+-- 'replicatedDisks', 'updateReplicationConfiguration_replicatedDisks' - Update replication configuration replicated disks request.+--+-- 'replicationServerInstanceType', 'updateReplicationConfiguration_replicationServerInstanceType' - Update replication configuration Replication Server instance type+-- request.+--+-- 'replicationServersSecurityGroupsIDs', 'updateReplicationConfiguration_replicationServersSecurityGroupsIDs' - Update replication configuration Replication Server Security Groups IDs+-- request.+--+-- 'stagingAreaSubnetId', 'updateReplicationConfiguration_stagingAreaSubnetId' - Update replication configuration Staging Area subnet request.+--+-- 'stagingAreaTags', 'updateReplicationConfiguration_stagingAreaTags' - Update replication configuration Staging Area Tags request.+--+-- 'useDedicatedReplicationServer', 'updateReplicationConfiguration_useDedicatedReplicationServer' - Update replication configuration use dedicated Replication Server+-- request.+--+-- 'sourceServerID', 'updateReplicationConfiguration_sourceServerID' - Update replication configuration Source Server ID request.+newUpdateReplicationConfiguration ::+ -- | 'sourceServerID'+ Prelude.Text ->+ UpdateReplicationConfiguration+newUpdateReplicationConfiguration pSourceServerID_ =+ UpdateReplicationConfiguration'+ { associateDefaultSecurityGroup =+ Prelude.Nothing,+ bandwidthThrottling = Prelude.Nothing,+ createPublicIP = Prelude.Nothing,+ dataPlaneRouting = Prelude.Nothing,+ defaultLargeStagingDiskType =+ Prelude.Nothing,+ ebsEncryption = Prelude.Nothing,+ ebsEncryptionKeyArn = Prelude.Nothing,+ name = Prelude.Nothing,+ replicatedDisks = Prelude.Nothing,+ replicationServerInstanceType =+ Prelude.Nothing,+ replicationServersSecurityGroupsIDs =+ Prelude.Nothing,+ stagingAreaSubnetId = Prelude.Nothing,+ stagingAreaTags = Prelude.Nothing,+ useDedicatedReplicationServer =+ Prelude.Nothing,+ sourceServerID = pSourceServerID_+ }++-- | Update replication configuration associate default Application Migration+-- Service Security group request.+updateReplicationConfiguration_associateDefaultSecurityGroup :: Lens.Lens' UpdateReplicationConfiguration (Prelude.Maybe Prelude.Bool)+updateReplicationConfiguration_associateDefaultSecurityGroup = Lens.lens (\UpdateReplicationConfiguration' {associateDefaultSecurityGroup} -> associateDefaultSecurityGroup) (\s@UpdateReplicationConfiguration' {} a -> s {associateDefaultSecurityGroup = a} :: UpdateReplicationConfiguration)++-- | Update replication configuration bandwidth throttling request.+updateReplicationConfiguration_bandwidthThrottling :: Lens.Lens' UpdateReplicationConfiguration (Prelude.Maybe Prelude.Natural)+updateReplicationConfiguration_bandwidthThrottling = Lens.lens (\UpdateReplicationConfiguration' {bandwidthThrottling} -> bandwidthThrottling) (\s@UpdateReplicationConfiguration' {} a -> s {bandwidthThrottling = a} :: UpdateReplicationConfiguration)++-- | Update replication configuration create Public IP request.+updateReplicationConfiguration_createPublicIP :: Lens.Lens' UpdateReplicationConfiguration (Prelude.Maybe Prelude.Bool)+updateReplicationConfiguration_createPublicIP = Lens.lens (\UpdateReplicationConfiguration' {createPublicIP} -> createPublicIP) (\s@UpdateReplicationConfiguration' {} a -> s {createPublicIP = a} :: UpdateReplicationConfiguration)++-- | Update replication configuration data plane routing request.+updateReplicationConfiguration_dataPlaneRouting :: Lens.Lens' UpdateReplicationConfiguration (Prelude.Maybe ReplicationConfigurationDataPlaneRouting)+updateReplicationConfiguration_dataPlaneRouting = Lens.lens (\UpdateReplicationConfiguration' {dataPlaneRouting} -> dataPlaneRouting) (\s@UpdateReplicationConfiguration' {} a -> s {dataPlaneRouting = a} :: UpdateReplicationConfiguration)++-- | Update replication configuration use default large Staging Disk type+-- request.+updateReplicationConfiguration_defaultLargeStagingDiskType :: Lens.Lens' UpdateReplicationConfiguration (Prelude.Maybe ReplicationConfigurationDefaultLargeStagingDiskType)+updateReplicationConfiguration_defaultLargeStagingDiskType = Lens.lens (\UpdateReplicationConfiguration' {defaultLargeStagingDiskType} -> defaultLargeStagingDiskType) (\s@UpdateReplicationConfiguration' {} a -> s {defaultLargeStagingDiskType = a} :: UpdateReplicationConfiguration)++-- | Update replication configuration EBS encryption request.+updateReplicationConfiguration_ebsEncryption :: Lens.Lens' UpdateReplicationConfiguration (Prelude.Maybe ReplicationConfigurationEbsEncryption)+updateReplicationConfiguration_ebsEncryption = Lens.lens (\UpdateReplicationConfiguration' {ebsEncryption} -> ebsEncryption) (\s@UpdateReplicationConfiguration' {} a -> s {ebsEncryption = a} :: UpdateReplicationConfiguration)++-- | Update replication configuration EBS encryption key ARN request.+updateReplicationConfiguration_ebsEncryptionKeyArn :: Lens.Lens' UpdateReplicationConfiguration (Prelude.Maybe Prelude.Text)+updateReplicationConfiguration_ebsEncryptionKeyArn = Lens.lens (\UpdateReplicationConfiguration' {ebsEncryptionKeyArn} -> ebsEncryptionKeyArn) (\s@UpdateReplicationConfiguration' {} a -> s {ebsEncryptionKeyArn = a} :: UpdateReplicationConfiguration)++-- | Update replication configuration name request.+updateReplicationConfiguration_name :: Lens.Lens' UpdateReplicationConfiguration (Prelude.Maybe Prelude.Text)+updateReplicationConfiguration_name = Lens.lens (\UpdateReplicationConfiguration' {name} -> name) (\s@UpdateReplicationConfiguration' {} a -> s {name = a} :: UpdateReplicationConfiguration)++-- | Update replication configuration replicated disks request.+updateReplicationConfiguration_replicatedDisks :: Lens.Lens' UpdateReplicationConfiguration (Prelude.Maybe [ReplicationConfigurationReplicatedDisk])+updateReplicationConfiguration_replicatedDisks = Lens.lens (\UpdateReplicationConfiguration' {replicatedDisks} -> replicatedDisks) (\s@UpdateReplicationConfiguration' {} a -> s {replicatedDisks = a} :: UpdateReplicationConfiguration) Prelude.. Lens.mapping Lens.coerced++-- | Update replication configuration Replication Server instance type+-- request.+updateReplicationConfiguration_replicationServerInstanceType :: Lens.Lens' UpdateReplicationConfiguration (Prelude.Maybe Prelude.Text)+updateReplicationConfiguration_replicationServerInstanceType = Lens.lens (\UpdateReplicationConfiguration' {replicationServerInstanceType} -> replicationServerInstanceType) (\s@UpdateReplicationConfiguration' {} a -> s {replicationServerInstanceType = a} :: UpdateReplicationConfiguration)++-- | Update replication configuration Replication Server Security Groups IDs+-- request.+updateReplicationConfiguration_replicationServersSecurityGroupsIDs :: Lens.Lens' UpdateReplicationConfiguration (Prelude.Maybe [Prelude.Text])+updateReplicationConfiguration_replicationServersSecurityGroupsIDs = Lens.lens (\UpdateReplicationConfiguration' {replicationServersSecurityGroupsIDs} -> replicationServersSecurityGroupsIDs) (\s@UpdateReplicationConfiguration' {} a -> s {replicationServersSecurityGroupsIDs = a} :: UpdateReplicationConfiguration) Prelude.. Lens.mapping Lens.coerced++-- | Update replication configuration Staging Area subnet request.+updateReplicationConfiguration_stagingAreaSubnetId :: Lens.Lens' UpdateReplicationConfiguration (Prelude.Maybe Prelude.Text)+updateReplicationConfiguration_stagingAreaSubnetId = Lens.lens (\UpdateReplicationConfiguration' {stagingAreaSubnetId} -> stagingAreaSubnetId) (\s@UpdateReplicationConfiguration' {} a -> s {stagingAreaSubnetId = a} :: UpdateReplicationConfiguration)++-- | Update replication configuration Staging Area Tags request.+updateReplicationConfiguration_stagingAreaTags :: Lens.Lens' UpdateReplicationConfiguration (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+updateReplicationConfiguration_stagingAreaTags = Lens.lens (\UpdateReplicationConfiguration' {stagingAreaTags} -> stagingAreaTags) (\s@UpdateReplicationConfiguration' {} a -> s {stagingAreaTags = a} :: UpdateReplicationConfiguration) Prelude.. Lens.mapping (Data._Sensitive Prelude.. Lens.coerced)++-- | Update replication configuration use dedicated Replication Server+-- request.+updateReplicationConfiguration_useDedicatedReplicationServer :: Lens.Lens' UpdateReplicationConfiguration (Prelude.Maybe Prelude.Bool)+updateReplicationConfiguration_useDedicatedReplicationServer = Lens.lens (\UpdateReplicationConfiguration' {useDedicatedReplicationServer} -> useDedicatedReplicationServer) (\s@UpdateReplicationConfiguration' {} a -> s {useDedicatedReplicationServer = a} :: UpdateReplicationConfiguration)++-- | Update replication configuration Source Server ID request.+updateReplicationConfiguration_sourceServerID :: Lens.Lens' UpdateReplicationConfiguration Prelude.Text+updateReplicationConfiguration_sourceServerID = Lens.lens (\UpdateReplicationConfiguration' {sourceServerID} -> sourceServerID) (\s@UpdateReplicationConfiguration' {} a -> s {sourceServerID = a} :: UpdateReplicationConfiguration)++instance+ Core.AWSRequest+ UpdateReplicationConfiguration+ where+ type+ AWSResponse UpdateReplicationConfiguration =+ ReplicationConfiguration+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ (\s h x -> Data.eitherParseJSON x)++instance+ Prelude.Hashable+ UpdateReplicationConfiguration+ where+ hashWithSalt+ _salt+ UpdateReplicationConfiguration' {..} =+ _salt+ `Prelude.hashWithSalt` associateDefaultSecurityGroup+ `Prelude.hashWithSalt` bandwidthThrottling+ `Prelude.hashWithSalt` createPublicIP+ `Prelude.hashWithSalt` dataPlaneRouting+ `Prelude.hashWithSalt` defaultLargeStagingDiskType+ `Prelude.hashWithSalt` ebsEncryption+ `Prelude.hashWithSalt` ebsEncryptionKeyArn+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` replicatedDisks+ `Prelude.hashWithSalt` replicationServerInstanceType+ `Prelude.hashWithSalt` replicationServersSecurityGroupsIDs+ `Prelude.hashWithSalt` stagingAreaSubnetId+ `Prelude.hashWithSalt` stagingAreaTags+ `Prelude.hashWithSalt` useDedicatedReplicationServer+ `Prelude.hashWithSalt` sourceServerID++instance+ Prelude.NFData+ UpdateReplicationConfiguration+ where+ rnf UpdateReplicationConfiguration' {..} =+ Prelude.rnf associateDefaultSecurityGroup+ `Prelude.seq` Prelude.rnf bandwidthThrottling+ `Prelude.seq` Prelude.rnf createPublicIP+ `Prelude.seq` Prelude.rnf dataPlaneRouting+ `Prelude.seq` Prelude.rnf defaultLargeStagingDiskType+ `Prelude.seq` Prelude.rnf ebsEncryption+ `Prelude.seq` Prelude.rnf ebsEncryptionKeyArn+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf replicatedDisks+ `Prelude.seq` Prelude.rnf replicationServerInstanceType+ `Prelude.seq` Prelude.rnf replicationServersSecurityGroupsIDs+ `Prelude.seq` Prelude.rnf stagingAreaSubnetId+ `Prelude.seq` Prelude.rnf stagingAreaTags+ `Prelude.seq` Prelude.rnf useDedicatedReplicationServer+ `Prelude.seq` Prelude.rnf sourceServerID++instance+ Data.ToHeaders+ UpdateReplicationConfiguration+ where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON UpdateReplicationConfiguration where+ toJSON UpdateReplicationConfiguration' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("associateDefaultSecurityGroup" Data..=)+ Prelude.<$> associateDefaultSecurityGroup,+ ("bandwidthThrottling" Data..=)+ Prelude.<$> bandwidthThrottling,+ ("createPublicIP" Data..=)+ Prelude.<$> createPublicIP,+ ("dataPlaneRouting" Data..=)+ Prelude.<$> dataPlaneRouting,+ ("defaultLargeStagingDiskType" Data..=)+ Prelude.<$> defaultLargeStagingDiskType,+ ("ebsEncryption" Data..=) Prelude.<$> ebsEncryption,+ ("ebsEncryptionKeyArn" Data..=)+ Prelude.<$> ebsEncryptionKeyArn,+ ("name" Data..=) Prelude.<$> name,+ ("replicatedDisks" Data..=)+ Prelude.<$> replicatedDisks,+ ("replicationServerInstanceType" Data..=)+ Prelude.<$> replicationServerInstanceType,+ ("replicationServersSecurityGroupsIDs" Data..=)+ Prelude.<$> replicationServersSecurityGroupsIDs,+ ("stagingAreaSubnetId" Data..=)+ Prelude.<$> stagingAreaSubnetId,+ ("stagingAreaTags" Data..=)+ Prelude.<$> stagingAreaTags,+ ("useDedicatedReplicationServer" Data..=)+ Prelude.<$> useDedicatedReplicationServer,+ Prelude.Just+ ("sourceServerID" Data..= sourceServerID)+ ]+ )++instance Data.ToPath UpdateReplicationConfiguration where+ toPath =+ Prelude.const "/UpdateReplicationConfiguration"++instance Data.ToQuery UpdateReplicationConfiguration where+ toQuery = Prelude.const Prelude.mempty
+ gen/Amazonka/MGN/UpdateReplicationConfigurationTemplate.hs view
@@ -0,0 +1,376 @@+{-# 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.MGN.UpdateReplicationConfigurationTemplate+-- 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 multiple ReplicationConfigurationTemplates by ID.+module Amazonka.MGN.UpdateReplicationConfigurationTemplate+ ( -- * Creating a Request+ UpdateReplicationConfigurationTemplate (..),+ newUpdateReplicationConfigurationTemplate,++ -- * Request Lenses+ updateReplicationConfigurationTemplate_arn,+ updateReplicationConfigurationTemplate_associateDefaultSecurityGroup,+ updateReplicationConfigurationTemplate_bandwidthThrottling,+ updateReplicationConfigurationTemplate_createPublicIP,+ updateReplicationConfigurationTemplate_dataPlaneRouting,+ updateReplicationConfigurationTemplate_defaultLargeStagingDiskType,+ updateReplicationConfigurationTemplate_ebsEncryption,+ updateReplicationConfigurationTemplate_ebsEncryptionKeyArn,+ updateReplicationConfigurationTemplate_replicationServerInstanceType,+ updateReplicationConfigurationTemplate_replicationServersSecurityGroupsIDs,+ updateReplicationConfigurationTemplate_stagingAreaSubnetId,+ updateReplicationConfigurationTemplate_stagingAreaTags,+ updateReplicationConfigurationTemplate_useDedicatedReplicationServer,+ updateReplicationConfigurationTemplate_replicationConfigurationTemplateID,++ -- * Destructuring the Response+ ReplicationConfigurationTemplate (..),+ newReplicationConfigurationTemplate,++ -- * Response Lenses+ replicationConfigurationTemplate_arn,+ replicationConfigurationTemplate_associateDefaultSecurityGroup,+ replicationConfigurationTemplate_bandwidthThrottling,+ replicationConfigurationTemplate_createPublicIP,+ replicationConfigurationTemplate_dataPlaneRouting,+ replicationConfigurationTemplate_defaultLargeStagingDiskType,+ replicationConfigurationTemplate_ebsEncryption,+ replicationConfigurationTemplate_ebsEncryptionKeyArn,+ replicationConfigurationTemplate_replicationServerInstanceType,+ replicationConfigurationTemplate_replicationServersSecurityGroupsIDs,+ replicationConfigurationTemplate_stagingAreaSubnetId,+ replicationConfigurationTemplate_stagingAreaTags,+ replicationConfigurationTemplate_tags,+ replicationConfigurationTemplate_useDedicatedReplicationServer,+ replicationConfigurationTemplate_replicationConfigurationTemplateID,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateReplicationConfigurationTemplate' smart constructor.+data UpdateReplicationConfigurationTemplate = UpdateReplicationConfigurationTemplate'+ { -- | Update replication configuration template ARN request.+ arn :: Prelude.Maybe Prelude.Text,+ -- | Update replication configuration template associate default Application+ -- Migration Service Security group request.+ associateDefaultSecurityGroup :: Prelude.Maybe Prelude.Bool,+ -- | Update replication configuration template bandwidth throttling request.+ bandwidthThrottling :: Prelude.Maybe Prelude.Natural,+ -- | Update replication configuration template create Public IP request.+ createPublicIP :: Prelude.Maybe Prelude.Bool,+ -- | Update replication configuration template data plane routing request.+ dataPlaneRouting :: Prelude.Maybe ReplicationConfigurationDataPlaneRouting,+ -- | Update replication configuration template use default large Staging Disk+ -- type request.+ defaultLargeStagingDiskType :: Prelude.Maybe ReplicationConfigurationDefaultLargeStagingDiskType,+ -- | Update replication configuration template EBS encryption request.+ ebsEncryption :: Prelude.Maybe ReplicationConfigurationEbsEncryption,+ -- | Update replication configuration template EBS encryption key ARN+ -- request.+ ebsEncryptionKeyArn :: Prelude.Maybe Prelude.Text,+ -- | Update replication configuration template Replication Server instance+ -- type request.+ replicationServerInstanceType :: Prelude.Maybe Prelude.Text,+ -- | Update replication configuration template Replication Server Security+ -- groups IDs request.+ replicationServersSecurityGroupsIDs :: Prelude.Maybe [Prelude.Text],+ -- | Update replication configuration template Staging Area subnet ID+ -- request.+ stagingAreaSubnetId :: Prelude.Maybe Prelude.Text,+ -- | Update replication configuration template Staging Area Tags request.+ stagingAreaTags :: Prelude.Maybe (Data.Sensitive (Prelude.HashMap Prelude.Text Prelude.Text)),+ -- | Update replication configuration template use dedicated Replication+ -- Server request.+ useDedicatedReplicationServer :: Prelude.Maybe Prelude.Bool,+ -- | Update replication configuration template template ID request.+ replicationConfigurationTemplateID :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateReplicationConfigurationTemplate' 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', 'updateReplicationConfigurationTemplate_arn' - Update replication configuration template ARN request.+--+-- 'associateDefaultSecurityGroup', 'updateReplicationConfigurationTemplate_associateDefaultSecurityGroup' - Update replication configuration template associate default Application+-- Migration Service Security group request.+--+-- 'bandwidthThrottling', 'updateReplicationConfigurationTemplate_bandwidthThrottling' - Update replication configuration template bandwidth throttling request.+--+-- 'createPublicIP', 'updateReplicationConfigurationTemplate_createPublicIP' - Update replication configuration template create Public IP request.+--+-- 'dataPlaneRouting', 'updateReplicationConfigurationTemplate_dataPlaneRouting' - Update replication configuration template data plane routing request.+--+-- 'defaultLargeStagingDiskType', 'updateReplicationConfigurationTemplate_defaultLargeStagingDiskType' - Update replication configuration template use default large Staging Disk+-- type request.+--+-- 'ebsEncryption', 'updateReplicationConfigurationTemplate_ebsEncryption' - Update replication configuration template EBS encryption request.+--+-- 'ebsEncryptionKeyArn', 'updateReplicationConfigurationTemplate_ebsEncryptionKeyArn' - Update replication configuration template EBS encryption key ARN+-- request.+--+-- 'replicationServerInstanceType', 'updateReplicationConfigurationTemplate_replicationServerInstanceType' - Update replication configuration template Replication Server instance+-- type request.+--+-- 'replicationServersSecurityGroupsIDs', 'updateReplicationConfigurationTemplate_replicationServersSecurityGroupsIDs' - Update replication configuration template Replication Server Security+-- groups IDs request.+--+-- 'stagingAreaSubnetId', 'updateReplicationConfigurationTemplate_stagingAreaSubnetId' - Update replication configuration template Staging Area subnet ID+-- request.+--+-- 'stagingAreaTags', 'updateReplicationConfigurationTemplate_stagingAreaTags' - Update replication configuration template Staging Area Tags request.+--+-- 'useDedicatedReplicationServer', 'updateReplicationConfigurationTemplate_useDedicatedReplicationServer' - Update replication configuration template use dedicated Replication+-- Server request.+--+-- 'replicationConfigurationTemplateID', 'updateReplicationConfigurationTemplate_replicationConfigurationTemplateID' - Update replication configuration template template ID request.+newUpdateReplicationConfigurationTemplate ::+ -- | 'replicationConfigurationTemplateID'+ Prelude.Text ->+ UpdateReplicationConfigurationTemplate+newUpdateReplicationConfigurationTemplate+ pReplicationConfigurationTemplateID_ =+ UpdateReplicationConfigurationTemplate'+ { arn =+ Prelude.Nothing,+ associateDefaultSecurityGroup =+ Prelude.Nothing,+ bandwidthThrottling =+ Prelude.Nothing,+ createPublicIP = Prelude.Nothing,+ dataPlaneRouting = Prelude.Nothing,+ defaultLargeStagingDiskType =+ Prelude.Nothing,+ ebsEncryption = Prelude.Nothing,+ ebsEncryptionKeyArn =+ Prelude.Nothing,+ replicationServerInstanceType =+ Prelude.Nothing,+ replicationServersSecurityGroupsIDs =+ Prelude.Nothing,+ stagingAreaSubnetId =+ Prelude.Nothing,+ stagingAreaTags = Prelude.Nothing,+ useDedicatedReplicationServer =+ Prelude.Nothing,+ replicationConfigurationTemplateID =+ pReplicationConfigurationTemplateID_+ }++-- | Update replication configuration template ARN request.+updateReplicationConfigurationTemplate_arn :: Lens.Lens' UpdateReplicationConfigurationTemplate (Prelude.Maybe Prelude.Text)+updateReplicationConfigurationTemplate_arn = Lens.lens (\UpdateReplicationConfigurationTemplate' {arn} -> arn) (\s@UpdateReplicationConfigurationTemplate' {} a -> s {arn = a} :: UpdateReplicationConfigurationTemplate)++-- | Update replication configuration template associate default Application+-- Migration Service Security group request.+updateReplicationConfigurationTemplate_associateDefaultSecurityGroup :: Lens.Lens' UpdateReplicationConfigurationTemplate (Prelude.Maybe Prelude.Bool)+updateReplicationConfigurationTemplate_associateDefaultSecurityGroup = Lens.lens (\UpdateReplicationConfigurationTemplate' {associateDefaultSecurityGroup} -> associateDefaultSecurityGroup) (\s@UpdateReplicationConfigurationTemplate' {} a -> s {associateDefaultSecurityGroup = a} :: UpdateReplicationConfigurationTemplate)++-- | Update replication configuration template bandwidth throttling request.+updateReplicationConfigurationTemplate_bandwidthThrottling :: Lens.Lens' UpdateReplicationConfigurationTemplate (Prelude.Maybe Prelude.Natural)+updateReplicationConfigurationTemplate_bandwidthThrottling = Lens.lens (\UpdateReplicationConfigurationTemplate' {bandwidthThrottling} -> bandwidthThrottling) (\s@UpdateReplicationConfigurationTemplate' {} a -> s {bandwidthThrottling = a} :: UpdateReplicationConfigurationTemplate)++-- | Update replication configuration template create Public IP request.+updateReplicationConfigurationTemplate_createPublicIP :: Lens.Lens' UpdateReplicationConfigurationTemplate (Prelude.Maybe Prelude.Bool)+updateReplicationConfigurationTemplate_createPublicIP = Lens.lens (\UpdateReplicationConfigurationTemplate' {createPublicIP} -> createPublicIP) (\s@UpdateReplicationConfigurationTemplate' {} a -> s {createPublicIP = a} :: UpdateReplicationConfigurationTemplate)++-- | Update replication configuration template data plane routing request.+updateReplicationConfigurationTemplate_dataPlaneRouting :: Lens.Lens' UpdateReplicationConfigurationTemplate (Prelude.Maybe ReplicationConfigurationDataPlaneRouting)+updateReplicationConfigurationTemplate_dataPlaneRouting = Lens.lens (\UpdateReplicationConfigurationTemplate' {dataPlaneRouting} -> dataPlaneRouting) (\s@UpdateReplicationConfigurationTemplate' {} a -> s {dataPlaneRouting = a} :: UpdateReplicationConfigurationTemplate)++-- | Update replication configuration template use default large Staging Disk+-- type request.+updateReplicationConfigurationTemplate_defaultLargeStagingDiskType :: Lens.Lens' UpdateReplicationConfigurationTemplate (Prelude.Maybe ReplicationConfigurationDefaultLargeStagingDiskType)+updateReplicationConfigurationTemplate_defaultLargeStagingDiskType = Lens.lens (\UpdateReplicationConfigurationTemplate' {defaultLargeStagingDiskType} -> defaultLargeStagingDiskType) (\s@UpdateReplicationConfigurationTemplate' {} a -> s {defaultLargeStagingDiskType = a} :: UpdateReplicationConfigurationTemplate)++-- | Update replication configuration template EBS encryption request.+updateReplicationConfigurationTemplate_ebsEncryption :: Lens.Lens' UpdateReplicationConfigurationTemplate (Prelude.Maybe ReplicationConfigurationEbsEncryption)+updateReplicationConfigurationTemplate_ebsEncryption = Lens.lens (\UpdateReplicationConfigurationTemplate' {ebsEncryption} -> ebsEncryption) (\s@UpdateReplicationConfigurationTemplate' {} a -> s {ebsEncryption = a} :: UpdateReplicationConfigurationTemplate)++-- | Update replication configuration template EBS encryption key ARN+-- request.+updateReplicationConfigurationTemplate_ebsEncryptionKeyArn :: Lens.Lens' UpdateReplicationConfigurationTemplate (Prelude.Maybe Prelude.Text)+updateReplicationConfigurationTemplate_ebsEncryptionKeyArn = Lens.lens (\UpdateReplicationConfigurationTemplate' {ebsEncryptionKeyArn} -> ebsEncryptionKeyArn) (\s@UpdateReplicationConfigurationTemplate' {} a -> s {ebsEncryptionKeyArn = a} :: UpdateReplicationConfigurationTemplate)++-- | Update replication configuration template Replication Server instance+-- type request.+updateReplicationConfigurationTemplate_replicationServerInstanceType :: Lens.Lens' UpdateReplicationConfigurationTemplate (Prelude.Maybe Prelude.Text)+updateReplicationConfigurationTemplate_replicationServerInstanceType = Lens.lens (\UpdateReplicationConfigurationTemplate' {replicationServerInstanceType} -> replicationServerInstanceType) (\s@UpdateReplicationConfigurationTemplate' {} a -> s {replicationServerInstanceType = a} :: UpdateReplicationConfigurationTemplate)++-- | Update replication configuration template Replication Server Security+-- groups IDs request.+updateReplicationConfigurationTemplate_replicationServersSecurityGroupsIDs :: Lens.Lens' UpdateReplicationConfigurationTemplate (Prelude.Maybe [Prelude.Text])+updateReplicationConfigurationTemplate_replicationServersSecurityGroupsIDs = Lens.lens (\UpdateReplicationConfigurationTemplate' {replicationServersSecurityGroupsIDs} -> replicationServersSecurityGroupsIDs) (\s@UpdateReplicationConfigurationTemplate' {} a -> s {replicationServersSecurityGroupsIDs = a} :: UpdateReplicationConfigurationTemplate) Prelude.. Lens.mapping Lens.coerced++-- | Update replication configuration template Staging Area subnet ID+-- request.+updateReplicationConfigurationTemplate_stagingAreaSubnetId :: Lens.Lens' UpdateReplicationConfigurationTemplate (Prelude.Maybe Prelude.Text)+updateReplicationConfigurationTemplate_stagingAreaSubnetId = Lens.lens (\UpdateReplicationConfigurationTemplate' {stagingAreaSubnetId} -> stagingAreaSubnetId) (\s@UpdateReplicationConfigurationTemplate' {} a -> s {stagingAreaSubnetId = a} :: UpdateReplicationConfigurationTemplate)++-- | Update replication configuration template Staging Area Tags request.+updateReplicationConfigurationTemplate_stagingAreaTags :: Lens.Lens' UpdateReplicationConfigurationTemplate (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+updateReplicationConfigurationTemplate_stagingAreaTags = Lens.lens (\UpdateReplicationConfigurationTemplate' {stagingAreaTags} -> stagingAreaTags) (\s@UpdateReplicationConfigurationTemplate' {} a -> s {stagingAreaTags = a} :: UpdateReplicationConfigurationTemplate) Prelude.. Lens.mapping (Data._Sensitive Prelude.. Lens.coerced)++-- | Update replication configuration template use dedicated Replication+-- Server request.+updateReplicationConfigurationTemplate_useDedicatedReplicationServer :: Lens.Lens' UpdateReplicationConfigurationTemplate (Prelude.Maybe Prelude.Bool)+updateReplicationConfigurationTemplate_useDedicatedReplicationServer = Lens.lens (\UpdateReplicationConfigurationTemplate' {useDedicatedReplicationServer} -> useDedicatedReplicationServer) (\s@UpdateReplicationConfigurationTemplate' {} a -> s {useDedicatedReplicationServer = a} :: UpdateReplicationConfigurationTemplate)++-- | Update replication configuration template template ID request.+updateReplicationConfigurationTemplate_replicationConfigurationTemplateID :: Lens.Lens' UpdateReplicationConfigurationTemplate Prelude.Text+updateReplicationConfigurationTemplate_replicationConfigurationTemplateID = Lens.lens (\UpdateReplicationConfigurationTemplate' {replicationConfigurationTemplateID} -> replicationConfigurationTemplateID) (\s@UpdateReplicationConfigurationTemplate' {} a -> s {replicationConfigurationTemplateID = a} :: UpdateReplicationConfigurationTemplate)++instance+ Core.AWSRequest+ UpdateReplicationConfigurationTemplate+ where+ type+ AWSResponse+ UpdateReplicationConfigurationTemplate =+ ReplicationConfigurationTemplate+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ (\s h x -> Data.eitherParseJSON x)++instance+ Prelude.Hashable+ UpdateReplicationConfigurationTemplate+ where+ hashWithSalt+ _salt+ UpdateReplicationConfigurationTemplate' {..} =+ _salt+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` associateDefaultSecurityGroup+ `Prelude.hashWithSalt` bandwidthThrottling+ `Prelude.hashWithSalt` createPublicIP+ `Prelude.hashWithSalt` dataPlaneRouting+ `Prelude.hashWithSalt` defaultLargeStagingDiskType+ `Prelude.hashWithSalt` ebsEncryption+ `Prelude.hashWithSalt` ebsEncryptionKeyArn+ `Prelude.hashWithSalt` replicationServerInstanceType+ `Prelude.hashWithSalt` replicationServersSecurityGroupsIDs+ `Prelude.hashWithSalt` stagingAreaSubnetId+ `Prelude.hashWithSalt` stagingAreaTags+ `Prelude.hashWithSalt` useDedicatedReplicationServer+ `Prelude.hashWithSalt` replicationConfigurationTemplateID++instance+ Prelude.NFData+ UpdateReplicationConfigurationTemplate+ where+ rnf UpdateReplicationConfigurationTemplate' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf associateDefaultSecurityGroup+ `Prelude.seq` Prelude.rnf bandwidthThrottling+ `Prelude.seq` Prelude.rnf createPublicIP+ `Prelude.seq` Prelude.rnf dataPlaneRouting+ `Prelude.seq` Prelude.rnf defaultLargeStagingDiskType+ `Prelude.seq` Prelude.rnf ebsEncryption+ `Prelude.seq` Prelude.rnf ebsEncryptionKeyArn+ `Prelude.seq` Prelude.rnf replicationServerInstanceType+ `Prelude.seq` Prelude.rnf replicationServersSecurityGroupsIDs+ `Prelude.seq` Prelude.rnf stagingAreaSubnetId+ `Prelude.seq` Prelude.rnf stagingAreaTags+ `Prelude.seq` Prelude.rnf useDedicatedReplicationServer+ `Prelude.seq` Prelude.rnf+ replicationConfigurationTemplateID++instance+ Data.ToHeaders+ UpdateReplicationConfigurationTemplate+ where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance+ Data.ToJSON+ UpdateReplicationConfigurationTemplate+ where+ toJSON UpdateReplicationConfigurationTemplate' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("arn" Data..=) Prelude.<$> arn,+ ("associateDefaultSecurityGroup" Data..=)+ Prelude.<$> associateDefaultSecurityGroup,+ ("bandwidthThrottling" Data..=)+ Prelude.<$> bandwidthThrottling,+ ("createPublicIP" Data..=)+ Prelude.<$> createPublicIP,+ ("dataPlaneRouting" Data..=)+ Prelude.<$> dataPlaneRouting,+ ("defaultLargeStagingDiskType" Data..=)+ Prelude.<$> defaultLargeStagingDiskType,+ ("ebsEncryption" Data..=) Prelude.<$> ebsEncryption,+ ("ebsEncryptionKeyArn" Data..=)+ Prelude.<$> ebsEncryptionKeyArn,+ ("replicationServerInstanceType" Data..=)+ Prelude.<$> replicationServerInstanceType,+ ("replicationServersSecurityGroupsIDs" Data..=)+ Prelude.<$> replicationServersSecurityGroupsIDs,+ ("stagingAreaSubnetId" Data..=)+ Prelude.<$> stagingAreaSubnetId,+ ("stagingAreaTags" Data..=)+ Prelude.<$> stagingAreaTags,+ ("useDedicatedReplicationServer" Data..=)+ Prelude.<$> useDedicatedReplicationServer,+ Prelude.Just+ ( "replicationConfigurationTemplateID"+ Data..= replicationConfigurationTemplateID+ )+ ]+ )++instance+ Data.ToPath+ UpdateReplicationConfigurationTemplate+ where+ toPath =+ Prelude.const+ "/UpdateReplicationConfigurationTemplate"++instance+ Data.ToQuery+ UpdateReplicationConfigurationTemplate+ where+ toQuery = Prelude.const Prelude.mempty
+ gen/Amazonka/MGN/UpdateSourceServerReplicationType.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.MGN.UpdateSourceServerReplicationType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Allows you to change between the AGENT_BASED replication type and the+-- SNAPSHOT_SHIPPING replication type.+module Amazonka.MGN.UpdateSourceServerReplicationType+ ( -- * Creating a Request+ UpdateSourceServerReplicationType (..),+ newUpdateSourceServerReplicationType,++ -- * Request Lenses+ updateSourceServerReplicationType_replicationType,+ updateSourceServerReplicationType_sourceServerID,++ -- * Destructuring the Response+ SourceServer (..),+ newSourceServer,++ -- * Response Lenses+ sourceServer_applicationID,+ sourceServer_arn,+ sourceServer_dataReplicationInfo,+ sourceServer_isArchived,+ sourceServer_launchedInstance,+ sourceServer_lifeCycle,+ sourceServer_replicationType,+ sourceServer_sourceProperties,+ sourceServer_sourceServerID,+ sourceServer_tags,+ sourceServer_vcenterClientID,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateSourceServerReplicationType' smart constructor.+data UpdateSourceServerReplicationType = UpdateSourceServerReplicationType'+ { -- | Replication type to which to update source server.+ replicationType :: ReplicationType,+ -- | ID of source server on which to update replication type.+ sourceServerID :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateSourceServerReplicationType' 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:+--+-- 'replicationType', 'updateSourceServerReplicationType_replicationType' - Replication type to which to update source server.+--+-- 'sourceServerID', 'updateSourceServerReplicationType_sourceServerID' - ID of source server on which to update replication type.+newUpdateSourceServerReplicationType ::+ -- | 'replicationType'+ ReplicationType ->+ -- | 'sourceServerID'+ Prelude.Text ->+ UpdateSourceServerReplicationType+newUpdateSourceServerReplicationType+ pReplicationType_+ pSourceServerID_ =+ UpdateSourceServerReplicationType'+ { replicationType =+ pReplicationType_,+ sourceServerID = pSourceServerID_+ }++-- | Replication type to which to update source server.+updateSourceServerReplicationType_replicationType :: Lens.Lens' UpdateSourceServerReplicationType ReplicationType+updateSourceServerReplicationType_replicationType = Lens.lens (\UpdateSourceServerReplicationType' {replicationType} -> replicationType) (\s@UpdateSourceServerReplicationType' {} a -> s {replicationType = a} :: UpdateSourceServerReplicationType)++-- | ID of source server on which to update replication type.+updateSourceServerReplicationType_sourceServerID :: Lens.Lens' UpdateSourceServerReplicationType Prelude.Text+updateSourceServerReplicationType_sourceServerID = Lens.lens (\UpdateSourceServerReplicationType' {sourceServerID} -> sourceServerID) (\s@UpdateSourceServerReplicationType' {} a -> s {sourceServerID = a} :: UpdateSourceServerReplicationType)++instance+ Core.AWSRequest+ UpdateSourceServerReplicationType+ where+ type+ AWSResponse UpdateSourceServerReplicationType =+ SourceServer+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ (\s h x -> Data.eitherParseJSON x)++instance+ Prelude.Hashable+ UpdateSourceServerReplicationType+ where+ hashWithSalt+ _salt+ UpdateSourceServerReplicationType' {..} =+ _salt+ `Prelude.hashWithSalt` replicationType+ `Prelude.hashWithSalt` sourceServerID++instance+ Prelude.NFData+ UpdateSourceServerReplicationType+ where+ rnf UpdateSourceServerReplicationType' {..} =+ Prelude.rnf replicationType+ `Prelude.seq` Prelude.rnf sourceServerID++instance+ Data.ToHeaders+ UpdateSourceServerReplicationType+ where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance+ Data.ToJSON+ UpdateSourceServerReplicationType+ where+ toJSON UpdateSourceServerReplicationType' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("replicationType" Data..= replicationType),+ Prelude.Just+ ("sourceServerID" Data..= sourceServerID)+ ]+ )++instance+ Data.ToPath+ UpdateSourceServerReplicationType+ where+ toPath =+ Prelude.const "/UpdateSourceServerReplicationType"++instance+ Data.ToQuery+ UpdateSourceServerReplicationType+ where+ toQuery = Prelude.const Prelude.mempty
+ gen/Amazonka/MGN/UpdateWave.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.MGN.UpdateWave+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Update wave.+module Amazonka.MGN.UpdateWave+ ( -- * Creating a Request+ UpdateWave (..),+ newUpdateWave,++ -- * Request Lenses+ updateWave_description,+ updateWave_name,+ updateWave_waveID,++ -- * Destructuring the Response+ Wave (..),+ newWave,++ -- * Response Lenses+ wave_arn,+ wave_creationDateTime,+ wave_description,+ wave_isArchived,+ wave_lastModifiedDateTime,+ wave_name,+ wave_tags,+ wave_waveAggregatedStatus,+ wave_waveID,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateWave' smart constructor.+data UpdateWave = UpdateWave'+ { -- | Wave description.+ description :: Prelude.Maybe Prelude.Text,+ -- | Wave name.+ name :: Prelude.Maybe Prelude.Text,+ -- | Wave ID.+ waveID :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateWave' 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:+--+-- 'description', 'updateWave_description' - Wave description.+--+-- 'name', 'updateWave_name' - Wave name.+--+-- 'waveID', 'updateWave_waveID' - Wave ID.+newUpdateWave ::+ -- | 'waveID'+ Prelude.Text ->+ UpdateWave+newUpdateWave pWaveID_ =+ UpdateWave'+ { description = Prelude.Nothing,+ name = Prelude.Nothing,+ waveID = pWaveID_+ }++-- | Wave description.+updateWave_description :: Lens.Lens' UpdateWave (Prelude.Maybe Prelude.Text)+updateWave_description = Lens.lens (\UpdateWave' {description} -> description) (\s@UpdateWave' {} a -> s {description = a} :: UpdateWave)++-- | Wave name.+updateWave_name :: Lens.Lens' UpdateWave (Prelude.Maybe Prelude.Text)+updateWave_name = Lens.lens (\UpdateWave' {name} -> name) (\s@UpdateWave' {} a -> s {name = a} :: UpdateWave)++-- | Wave ID.+updateWave_waveID :: Lens.Lens' UpdateWave Prelude.Text+updateWave_waveID = Lens.lens (\UpdateWave' {waveID} -> waveID) (\s@UpdateWave' {} a -> s {waveID = a} :: UpdateWave)++instance Core.AWSRequest UpdateWave where+ type AWSResponse UpdateWave = Wave+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ (\s h x -> Data.eitherParseJSON x)++instance Prelude.Hashable UpdateWave where+ hashWithSalt _salt UpdateWave' {..} =+ _salt+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` waveID++instance Prelude.NFData UpdateWave where+ rnf UpdateWave' {..} =+ Prelude.rnf description+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf waveID++instance Data.ToHeaders UpdateWave where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON UpdateWave where+ toJSON UpdateWave' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("description" Data..=) Prelude.<$> description,+ ("name" Data..=) Prelude.<$> name,+ Prelude.Just ("waveID" Data..= waveID)+ ]+ )++instance Data.ToPath UpdateWave where+ toPath = Prelude.const "/UpdateWave"++instance Data.ToQuery UpdateWave where+ toQuery = Prelude.const Prelude.mempty
+ gen/Amazonka/MGN/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.MGN.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.MGN.Waiters where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.MGN.Lens+import Amazonka.MGN.Types+import qualified Amazonka.Prelude as Prelude
+ src/.gitkeep view
+ test/Main.hs view
@@ -0,0 +1,23 @@+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Main+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Main (main) where++import Test.Amazonka.MGN+import Test.Amazonka.MGN.Internal+import Test.Tasty++main :: IO ()+main =+ defaultMain $+ testGroup+ "MGN"+ [ testGroup "tests" tests,+ testGroup "fixtures" fixtures+ ]
+ test/Test/Amazonka/Gen/MGN.hs view
@@ -0,0 +1,1138 @@+{-# 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.MGN+-- 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.MGN where++import Amazonka.MGN+import qualified Data.Proxy as Proxy+import Test.Amazonka.Fixture+import Test.Amazonka.MGN.Internal+import Test.Amazonka.Prelude+import Test.Tasty++-- Auto-generated: the actual test selection needs to be manually placed into+-- the top-level so that real test data can be incrementally added.+--+-- This commented snippet is what the entire set should look like:++-- fixtures :: TestTree+-- fixtures =+-- [ testGroup "request"+-- [ requestArchiveApplication $+-- newArchiveApplication+--+-- , requestArchiveWave $+-- newArchiveWave+--+-- , requestAssociateApplications $+-- newAssociateApplications+--+-- , requestAssociateSourceServers $+-- newAssociateSourceServers+--+-- , requestChangeServerLifeCycleState $+-- newChangeServerLifeCycleState+--+-- , requestCreateApplication $+-- newCreateApplication+--+-- , requestCreateLaunchConfigurationTemplate $+-- newCreateLaunchConfigurationTemplate+--+-- , requestCreateReplicationConfigurationTemplate $+-- newCreateReplicationConfigurationTemplate+--+-- , requestCreateWave $+-- newCreateWave+--+-- , requestDeleteApplication $+-- newDeleteApplication+--+-- , requestDeleteJob $+-- newDeleteJob+--+-- , requestDeleteLaunchConfigurationTemplate $+-- newDeleteLaunchConfigurationTemplate+--+-- , requestDeleteReplicationConfigurationTemplate $+-- newDeleteReplicationConfigurationTemplate+--+-- , requestDeleteSourceServer $+-- newDeleteSourceServer+--+-- , requestDeleteVcenterClient $+-- newDeleteVcenterClient+--+-- , requestDeleteWave $+-- newDeleteWave+--+-- , requestDescribeJobLogItems $+-- newDescribeJobLogItems+--+-- , requestDescribeJobs $+-- newDescribeJobs+--+-- , requestDescribeLaunchConfigurationTemplates $+-- newDescribeLaunchConfigurationTemplates+--+-- , requestDescribeReplicationConfigurationTemplates $+-- newDescribeReplicationConfigurationTemplates+--+-- , requestDescribeSourceServers $+-- newDescribeSourceServers+--+-- , requestDescribeVcenterClients $+-- newDescribeVcenterClients+--+-- , requestDisassociateApplications $+-- newDisassociateApplications+--+-- , requestDisassociateSourceServers $+-- newDisassociateSourceServers+--+-- , requestDisconnectFromService $+-- newDisconnectFromService+--+-- , requestFinalizeCutover $+-- newFinalizeCutover+--+-- , requestGetLaunchConfiguration $+-- newGetLaunchConfiguration+--+-- , requestGetReplicationConfiguration $+-- newGetReplicationConfiguration+--+-- , requestInitializeService $+-- newInitializeService+--+-- , requestListApplications $+-- newListApplications+--+-- , requestListSourceServerActions $+-- newListSourceServerActions+--+-- , requestListTagsForResource $+-- newListTagsForResource+--+-- , requestListTemplateActions $+-- newListTemplateActions+--+-- , requestListWaves $+-- newListWaves+--+-- , requestMarkAsArchived $+-- newMarkAsArchived+--+-- , requestPutSourceServerAction $+-- newPutSourceServerAction+--+-- , requestPutTemplateAction $+-- newPutTemplateAction+--+-- , requestRemoveSourceServerAction $+-- newRemoveSourceServerAction+--+-- , requestRemoveTemplateAction $+-- newRemoveTemplateAction+--+-- , requestRetryDataReplication $+-- newRetryDataReplication+--+-- , requestStartCutover $+-- newStartCutover+--+-- , requestStartReplication $+-- newStartReplication+--+-- , requestStartTest $+-- newStartTest+--+-- , requestTagResource $+-- newTagResource+--+-- , requestTerminateTargetInstances $+-- newTerminateTargetInstances+--+-- , requestUnarchiveApplication $+-- newUnarchiveApplication+--+-- , requestUnarchiveWave $+-- newUnarchiveWave+--+-- , requestUntagResource $+-- newUntagResource+--+-- , requestUpdateApplication $+-- newUpdateApplication+--+-- , requestUpdateLaunchConfiguration $+-- newUpdateLaunchConfiguration+--+-- , requestUpdateLaunchConfigurationTemplate $+-- newUpdateLaunchConfigurationTemplate+--+-- , requestUpdateReplicationConfiguration $+-- newUpdateReplicationConfiguration+--+-- , requestUpdateReplicationConfigurationTemplate $+-- newUpdateReplicationConfigurationTemplate+--+-- , requestUpdateSourceServerReplicationType $+-- newUpdateSourceServerReplicationType+--+-- , requestUpdateWave $+-- newUpdateWave+--+-- ]++-- , testGroup "response"+-- [ responseArchiveApplication $+-- newApplication+--+-- , responseArchiveWave $+-- newWave+--+-- , responseAssociateApplications $+-- newAssociateApplicationsResponse+--+-- , responseAssociateSourceServers $+-- newAssociateSourceServersResponse+--+-- , responseChangeServerLifeCycleState $+-- newSourceServer+--+-- , responseCreateApplication $+-- newApplication+--+-- , responseCreateLaunchConfigurationTemplate $+-- newLaunchConfigurationTemplate+--+-- , responseCreateReplicationConfigurationTemplate $+-- newReplicationConfigurationTemplate+--+-- , responseCreateWave $+-- newWave+--+-- , responseDeleteApplication $+-- newDeleteApplicationResponse+--+-- , responseDeleteJob $+-- newDeleteJobResponse+--+-- , responseDeleteLaunchConfigurationTemplate $+-- newDeleteLaunchConfigurationTemplateResponse+--+-- , responseDeleteReplicationConfigurationTemplate $+-- newDeleteReplicationConfigurationTemplateResponse+--+-- , responseDeleteSourceServer $+-- newDeleteSourceServerResponse+--+-- , responseDeleteVcenterClient $+-- newDeleteVcenterClientResponse+--+-- , responseDeleteWave $+-- newDeleteWaveResponse+--+-- , responseDescribeJobLogItems $+-- newDescribeJobLogItemsResponse+--+-- , responseDescribeJobs $+-- newDescribeJobsResponse+--+-- , responseDescribeLaunchConfigurationTemplates $+-- newDescribeLaunchConfigurationTemplatesResponse+--+-- , responseDescribeReplicationConfigurationTemplates $+-- newDescribeReplicationConfigurationTemplatesResponse+--+-- , responseDescribeSourceServers $+-- newDescribeSourceServersResponse+--+-- , responseDescribeVcenterClients $+-- newDescribeVcenterClientsResponse+--+-- , responseDisassociateApplications $+-- newDisassociateApplicationsResponse+--+-- , responseDisassociateSourceServers $+-- newDisassociateSourceServersResponse+--+-- , responseDisconnectFromService $+-- newSourceServer+--+-- , responseFinalizeCutover $+-- newSourceServer+--+-- , responseGetLaunchConfiguration $+-- newLaunchConfiguration+--+-- , responseGetReplicationConfiguration $+-- newReplicationConfiguration+--+-- , responseInitializeService $+-- newInitializeServiceResponse+--+-- , responseListApplications $+-- newListApplicationsResponse+--+-- , responseListSourceServerActions $+-- newListSourceServerActionsResponse+--+-- , responseListTagsForResource $+-- newListTagsForResourceResponse+--+-- , responseListTemplateActions $+-- newListTemplateActionsResponse+--+-- , responseListWaves $+-- newListWavesResponse+--+-- , responseMarkAsArchived $+-- newSourceServer+--+-- , responsePutSourceServerAction $+-- newSourceServerActionDocument+--+-- , responsePutTemplateAction $+-- newTemplateActionDocument+--+-- , responseRemoveSourceServerAction $+-- newRemoveSourceServerActionResponse+--+-- , responseRemoveTemplateAction $+-- newRemoveTemplateActionResponse+--+-- , responseRetryDataReplication $+-- newSourceServer+--+-- , responseStartCutover $+-- newStartCutoverResponse+--+-- , responseStartReplication $+-- newSourceServer+--+-- , responseStartTest $+-- newStartTestResponse+--+-- , responseTagResource $+-- newTagResourceResponse+--+-- , responseTerminateTargetInstances $+-- newTerminateTargetInstancesResponse+--+-- , responseUnarchiveApplication $+-- newApplication+--+-- , responseUnarchiveWave $+-- newWave+--+-- , responseUntagResource $+-- newUntagResourceResponse+--+-- , responseUpdateApplication $+-- newApplication+--+-- , responseUpdateLaunchConfiguration $+-- newLaunchConfiguration+--+-- , responseUpdateLaunchConfigurationTemplate $+-- newLaunchConfigurationTemplate+--+-- , responseUpdateReplicationConfiguration $+-- newReplicationConfiguration+--+-- , responseUpdateReplicationConfigurationTemplate $+-- newReplicationConfigurationTemplate+--+-- , responseUpdateSourceServerReplicationType $+-- newSourceServer+--+-- , responseUpdateWave $+-- newWave+--+-- ]+-- ]++-- Requests++requestArchiveApplication :: ArchiveApplication -> TestTree+requestArchiveApplication =+ req+ "ArchiveApplication"+ "fixture/ArchiveApplication.yaml"++requestArchiveWave :: ArchiveWave -> TestTree+requestArchiveWave =+ req+ "ArchiveWave"+ "fixture/ArchiveWave.yaml"++requestAssociateApplications :: AssociateApplications -> TestTree+requestAssociateApplications =+ req+ "AssociateApplications"+ "fixture/AssociateApplications.yaml"++requestAssociateSourceServers :: AssociateSourceServers -> TestTree+requestAssociateSourceServers =+ req+ "AssociateSourceServers"+ "fixture/AssociateSourceServers.yaml"++requestChangeServerLifeCycleState :: ChangeServerLifeCycleState -> TestTree+requestChangeServerLifeCycleState =+ req+ "ChangeServerLifeCycleState"+ "fixture/ChangeServerLifeCycleState.yaml"++requestCreateApplication :: CreateApplication -> TestTree+requestCreateApplication =+ req+ "CreateApplication"+ "fixture/CreateApplication.yaml"++requestCreateLaunchConfigurationTemplate :: CreateLaunchConfigurationTemplate -> TestTree+requestCreateLaunchConfigurationTemplate =+ req+ "CreateLaunchConfigurationTemplate"+ "fixture/CreateLaunchConfigurationTemplate.yaml"++requestCreateReplicationConfigurationTemplate :: CreateReplicationConfigurationTemplate -> TestTree+requestCreateReplicationConfigurationTemplate =+ req+ "CreateReplicationConfigurationTemplate"+ "fixture/CreateReplicationConfigurationTemplate.yaml"++requestCreateWave :: CreateWave -> TestTree+requestCreateWave =+ req+ "CreateWave"+ "fixture/CreateWave.yaml"++requestDeleteApplication :: DeleteApplication -> TestTree+requestDeleteApplication =+ req+ "DeleteApplication"+ "fixture/DeleteApplication.yaml"++requestDeleteJob :: DeleteJob -> TestTree+requestDeleteJob =+ req+ "DeleteJob"+ "fixture/DeleteJob.yaml"++requestDeleteLaunchConfigurationTemplate :: DeleteLaunchConfigurationTemplate -> TestTree+requestDeleteLaunchConfigurationTemplate =+ req+ "DeleteLaunchConfigurationTemplate"+ "fixture/DeleteLaunchConfigurationTemplate.yaml"++requestDeleteReplicationConfigurationTemplate :: DeleteReplicationConfigurationTemplate -> TestTree+requestDeleteReplicationConfigurationTemplate =+ req+ "DeleteReplicationConfigurationTemplate"+ "fixture/DeleteReplicationConfigurationTemplate.yaml"++requestDeleteSourceServer :: DeleteSourceServer -> TestTree+requestDeleteSourceServer =+ req+ "DeleteSourceServer"+ "fixture/DeleteSourceServer.yaml"++requestDeleteVcenterClient :: DeleteVcenterClient -> TestTree+requestDeleteVcenterClient =+ req+ "DeleteVcenterClient"+ "fixture/DeleteVcenterClient.yaml"++requestDeleteWave :: DeleteWave -> TestTree+requestDeleteWave =+ req+ "DeleteWave"+ "fixture/DeleteWave.yaml"++requestDescribeJobLogItems :: DescribeJobLogItems -> TestTree+requestDescribeJobLogItems =+ req+ "DescribeJobLogItems"+ "fixture/DescribeJobLogItems.yaml"++requestDescribeJobs :: DescribeJobs -> TestTree+requestDescribeJobs =+ req+ "DescribeJobs"+ "fixture/DescribeJobs.yaml"++requestDescribeLaunchConfigurationTemplates :: DescribeLaunchConfigurationTemplates -> TestTree+requestDescribeLaunchConfigurationTemplates =+ req+ "DescribeLaunchConfigurationTemplates"+ "fixture/DescribeLaunchConfigurationTemplates.yaml"++requestDescribeReplicationConfigurationTemplates :: DescribeReplicationConfigurationTemplates -> TestTree+requestDescribeReplicationConfigurationTemplates =+ req+ "DescribeReplicationConfigurationTemplates"+ "fixture/DescribeReplicationConfigurationTemplates.yaml"++requestDescribeSourceServers :: DescribeSourceServers -> TestTree+requestDescribeSourceServers =+ req+ "DescribeSourceServers"+ "fixture/DescribeSourceServers.yaml"++requestDescribeVcenterClients :: DescribeVcenterClients -> TestTree+requestDescribeVcenterClients =+ req+ "DescribeVcenterClients"+ "fixture/DescribeVcenterClients.yaml"++requestDisassociateApplications :: DisassociateApplications -> TestTree+requestDisassociateApplications =+ req+ "DisassociateApplications"+ "fixture/DisassociateApplications.yaml"++requestDisassociateSourceServers :: DisassociateSourceServers -> TestTree+requestDisassociateSourceServers =+ req+ "DisassociateSourceServers"+ "fixture/DisassociateSourceServers.yaml"++requestDisconnectFromService :: DisconnectFromService -> TestTree+requestDisconnectFromService =+ req+ "DisconnectFromService"+ "fixture/DisconnectFromService.yaml"++requestFinalizeCutover :: FinalizeCutover -> TestTree+requestFinalizeCutover =+ req+ "FinalizeCutover"+ "fixture/FinalizeCutover.yaml"++requestGetLaunchConfiguration :: GetLaunchConfiguration -> TestTree+requestGetLaunchConfiguration =+ req+ "GetLaunchConfiguration"+ "fixture/GetLaunchConfiguration.yaml"++requestGetReplicationConfiguration :: GetReplicationConfiguration -> TestTree+requestGetReplicationConfiguration =+ req+ "GetReplicationConfiguration"+ "fixture/GetReplicationConfiguration.yaml"++requestInitializeService :: InitializeService -> TestTree+requestInitializeService =+ req+ "InitializeService"+ "fixture/InitializeService.yaml"++requestListApplications :: ListApplications -> TestTree+requestListApplications =+ req+ "ListApplications"+ "fixture/ListApplications.yaml"++requestListSourceServerActions :: ListSourceServerActions -> TestTree+requestListSourceServerActions =+ req+ "ListSourceServerActions"+ "fixture/ListSourceServerActions.yaml"++requestListTagsForResource :: ListTagsForResource -> TestTree+requestListTagsForResource =+ req+ "ListTagsForResource"+ "fixture/ListTagsForResource.yaml"++requestListTemplateActions :: ListTemplateActions -> TestTree+requestListTemplateActions =+ req+ "ListTemplateActions"+ "fixture/ListTemplateActions.yaml"++requestListWaves :: ListWaves -> TestTree+requestListWaves =+ req+ "ListWaves"+ "fixture/ListWaves.yaml"++requestMarkAsArchived :: MarkAsArchived -> TestTree+requestMarkAsArchived =+ req+ "MarkAsArchived"+ "fixture/MarkAsArchived.yaml"++requestPutSourceServerAction :: PutSourceServerAction -> TestTree+requestPutSourceServerAction =+ req+ "PutSourceServerAction"+ "fixture/PutSourceServerAction.yaml"++requestPutTemplateAction :: PutTemplateAction -> TestTree+requestPutTemplateAction =+ req+ "PutTemplateAction"+ "fixture/PutTemplateAction.yaml"++requestRemoveSourceServerAction :: RemoveSourceServerAction -> TestTree+requestRemoveSourceServerAction =+ req+ "RemoveSourceServerAction"+ "fixture/RemoveSourceServerAction.yaml"++requestRemoveTemplateAction :: RemoveTemplateAction -> TestTree+requestRemoveTemplateAction =+ req+ "RemoveTemplateAction"+ "fixture/RemoveTemplateAction.yaml"++requestRetryDataReplication :: RetryDataReplication -> TestTree+requestRetryDataReplication =+ req+ "RetryDataReplication"+ "fixture/RetryDataReplication.yaml"++requestStartCutover :: StartCutover -> TestTree+requestStartCutover =+ req+ "StartCutover"+ "fixture/StartCutover.yaml"++requestStartReplication :: StartReplication -> TestTree+requestStartReplication =+ req+ "StartReplication"+ "fixture/StartReplication.yaml"++requestStartTest :: StartTest -> TestTree+requestStartTest =+ req+ "StartTest"+ "fixture/StartTest.yaml"++requestTagResource :: TagResource -> TestTree+requestTagResource =+ req+ "TagResource"+ "fixture/TagResource.yaml"++requestTerminateTargetInstances :: TerminateTargetInstances -> TestTree+requestTerminateTargetInstances =+ req+ "TerminateTargetInstances"+ "fixture/TerminateTargetInstances.yaml"++requestUnarchiveApplication :: UnarchiveApplication -> TestTree+requestUnarchiveApplication =+ req+ "UnarchiveApplication"+ "fixture/UnarchiveApplication.yaml"++requestUnarchiveWave :: UnarchiveWave -> TestTree+requestUnarchiveWave =+ req+ "UnarchiveWave"+ "fixture/UnarchiveWave.yaml"++requestUntagResource :: UntagResource -> TestTree+requestUntagResource =+ req+ "UntagResource"+ "fixture/UntagResource.yaml"++requestUpdateApplication :: UpdateApplication -> TestTree+requestUpdateApplication =+ req+ "UpdateApplication"+ "fixture/UpdateApplication.yaml"++requestUpdateLaunchConfiguration :: UpdateLaunchConfiguration -> TestTree+requestUpdateLaunchConfiguration =+ req+ "UpdateLaunchConfiguration"+ "fixture/UpdateLaunchConfiguration.yaml"++requestUpdateLaunchConfigurationTemplate :: UpdateLaunchConfigurationTemplate -> TestTree+requestUpdateLaunchConfigurationTemplate =+ req+ "UpdateLaunchConfigurationTemplate"+ "fixture/UpdateLaunchConfigurationTemplate.yaml"++requestUpdateReplicationConfiguration :: UpdateReplicationConfiguration -> TestTree+requestUpdateReplicationConfiguration =+ req+ "UpdateReplicationConfiguration"+ "fixture/UpdateReplicationConfiguration.yaml"++requestUpdateReplicationConfigurationTemplate :: UpdateReplicationConfigurationTemplate -> TestTree+requestUpdateReplicationConfigurationTemplate =+ req+ "UpdateReplicationConfigurationTemplate"+ "fixture/UpdateReplicationConfigurationTemplate.yaml"++requestUpdateSourceServerReplicationType :: UpdateSourceServerReplicationType -> TestTree+requestUpdateSourceServerReplicationType =+ req+ "UpdateSourceServerReplicationType"+ "fixture/UpdateSourceServerReplicationType.yaml"++requestUpdateWave :: UpdateWave -> TestTree+requestUpdateWave =+ req+ "UpdateWave"+ "fixture/UpdateWave.yaml"++-- Responses++responseArchiveApplication :: Application -> TestTree+responseArchiveApplication =+ res+ "ArchiveApplicationResponse"+ "fixture/ArchiveApplicationResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ArchiveApplication)++responseArchiveWave :: Wave -> TestTree+responseArchiveWave =+ res+ "ArchiveWaveResponse"+ "fixture/ArchiveWaveResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ArchiveWave)++responseAssociateApplications :: AssociateApplicationsResponse -> TestTree+responseAssociateApplications =+ res+ "AssociateApplicationsResponse"+ "fixture/AssociateApplicationsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy AssociateApplications)++responseAssociateSourceServers :: AssociateSourceServersResponse -> TestTree+responseAssociateSourceServers =+ res+ "AssociateSourceServersResponse"+ "fixture/AssociateSourceServersResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy AssociateSourceServers)++responseChangeServerLifeCycleState :: SourceServer -> TestTree+responseChangeServerLifeCycleState =+ res+ "ChangeServerLifeCycleStateResponse"+ "fixture/ChangeServerLifeCycleStateResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ChangeServerLifeCycleState)++responseCreateApplication :: Application -> TestTree+responseCreateApplication =+ res+ "CreateApplicationResponse"+ "fixture/CreateApplicationResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateApplication)++responseCreateLaunchConfigurationTemplate :: LaunchConfigurationTemplate -> TestTree+responseCreateLaunchConfigurationTemplate =+ res+ "CreateLaunchConfigurationTemplateResponse"+ "fixture/CreateLaunchConfigurationTemplateResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateLaunchConfigurationTemplate)++responseCreateReplicationConfigurationTemplate :: ReplicationConfigurationTemplate -> TestTree+responseCreateReplicationConfigurationTemplate =+ res+ "CreateReplicationConfigurationTemplateResponse"+ "fixture/CreateReplicationConfigurationTemplateResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateReplicationConfigurationTemplate)++responseCreateWave :: Wave -> TestTree+responseCreateWave =+ res+ "CreateWaveResponse"+ "fixture/CreateWaveResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateWave)++responseDeleteApplication :: DeleteApplicationResponse -> TestTree+responseDeleteApplication =+ res+ "DeleteApplicationResponse"+ "fixture/DeleteApplicationResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteApplication)++responseDeleteJob :: DeleteJobResponse -> TestTree+responseDeleteJob =+ res+ "DeleteJobResponse"+ "fixture/DeleteJobResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteJob)++responseDeleteLaunchConfigurationTemplate :: DeleteLaunchConfigurationTemplateResponse -> TestTree+responseDeleteLaunchConfigurationTemplate =+ res+ "DeleteLaunchConfigurationTemplateResponse"+ "fixture/DeleteLaunchConfigurationTemplateResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteLaunchConfigurationTemplate)++responseDeleteReplicationConfigurationTemplate :: DeleteReplicationConfigurationTemplateResponse -> TestTree+responseDeleteReplicationConfigurationTemplate =+ res+ "DeleteReplicationConfigurationTemplateResponse"+ "fixture/DeleteReplicationConfigurationTemplateResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteReplicationConfigurationTemplate)++responseDeleteSourceServer :: DeleteSourceServerResponse -> TestTree+responseDeleteSourceServer =+ res+ "DeleteSourceServerResponse"+ "fixture/DeleteSourceServerResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteSourceServer)++responseDeleteVcenterClient :: DeleteVcenterClientResponse -> TestTree+responseDeleteVcenterClient =+ res+ "DeleteVcenterClientResponse"+ "fixture/DeleteVcenterClientResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteVcenterClient)++responseDeleteWave :: DeleteWaveResponse -> TestTree+responseDeleteWave =+ res+ "DeleteWaveResponse"+ "fixture/DeleteWaveResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteWave)++responseDescribeJobLogItems :: DescribeJobLogItemsResponse -> TestTree+responseDescribeJobLogItems =+ res+ "DescribeJobLogItemsResponse"+ "fixture/DescribeJobLogItemsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeJobLogItems)++responseDescribeJobs :: DescribeJobsResponse -> TestTree+responseDescribeJobs =+ res+ "DescribeJobsResponse"+ "fixture/DescribeJobsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeJobs)++responseDescribeLaunchConfigurationTemplates :: DescribeLaunchConfigurationTemplatesResponse -> TestTree+responseDescribeLaunchConfigurationTemplates =+ res+ "DescribeLaunchConfigurationTemplatesResponse"+ "fixture/DescribeLaunchConfigurationTemplatesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeLaunchConfigurationTemplates)++responseDescribeReplicationConfigurationTemplates :: DescribeReplicationConfigurationTemplatesResponse -> TestTree+responseDescribeReplicationConfigurationTemplates =+ res+ "DescribeReplicationConfigurationTemplatesResponse"+ "fixture/DescribeReplicationConfigurationTemplatesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeReplicationConfigurationTemplates)++responseDescribeSourceServers :: DescribeSourceServersResponse -> TestTree+responseDescribeSourceServers =+ res+ "DescribeSourceServersResponse"+ "fixture/DescribeSourceServersResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeSourceServers)++responseDescribeVcenterClients :: DescribeVcenterClientsResponse -> TestTree+responseDescribeVcenterClients =+ res+ "DescribeVcenterClientsResponse"+ "fixture/DescribeVcenterClientsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeVcenterClients)++responseDisassociateApplications :: DisassociateApplicationsResponse -> TestTree+responseDisassociateApplications =+ res+ "DisassociateApplicationsResponse"+ "fixture/DisassociateApplicationsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DisassociateApplications)++responseDisassociateSourceServers :: DisassociateSourceServersResponse -> TestTree+responseDisassociateSourceServers =+ res+ "DisassociateSourceServersResponse"+ "fixture/DisassociateSourceServersResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DisassociateSourceServers)++responseDisconnectFromService :: SourceServer -> TestTree+responseDisconnectFromService =+ res+ "DisconnectFromServiceResponse"+ "fixture/DisconnectFromServiceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DisconnectFromService)++responseFinalizeCutover :: SourceServer -> TestTree+responseFinalizeCutover =+ res+ "FinalizeCutoverResponse"+ "fixture/FinalizeCutoverResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy FinalizeCutover)++responseGetLaunchConfiguration :: LaunchConfiguration -> TestTree+responseGetLaunchConfiguration =+ res+ "GetLaunchConfigurationResponse"+ "fixture/GetLaunchConfigurationResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetLaunchConfiguration)++responseGetReplicationConfiguration :: ReplicationConfiguration -> TestTree+responseGetReplicationConfiguration =+ res+ "GetReplicationConfigurationResponse"+ "fixture/GetReplicationConfigurationResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetReplicationConfiguration)++responseInitializeService :: InitializeServiceResponse -> TestTree+responseInitializeService =+ res+ "InitializeServiceResponse"+ "fixture/InitializeServiceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy InitializeService)++responseListApplications :: ListApplicationsResponse -> TestTree+responseListApplications =+ res+ "ListApplicationsResponse"+ "fixture/ListApplicationsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListApplications)++responseListSourceServerActions :: ListSourceServerActionsResponse -> TestTree+responseListSourceServerActions =+ res+ "ListSourceServerActionsResponse"+ "fixture/ListSourceServerActionsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListSourceServerActions)++responseListTagsForResource :: ListTagsForResourceResponse -> TestTree+responseListTagsForResource =+ res+ "ListTagsForResourceResponse"+ "fixture/ListTagsForResourceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListTagsForResource)++responseListTemplateActions :: ListTemplateActionsResponse -> TestTree+responseListTemplateActions =+ res+ "ListTemplateActionsResponse"+ "fixture/ListTemplateActionsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListTemplateActions)++responseListWaves :: ListWavesResponse -> TestTree+responseListWaves =+ res+ "ListWavesResponse"+ "fixture/ListWavesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListWaves)++responseMarkAsArchived :: SourceServer -> TestTree+responseMarkAsArchived =+ res+ "MarkAsArchivedResponse"+ "fixture/MarkAsArchivedResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy MarkAsArchived)++responsePutSourceServerAction :: SourceServerActionDocument -> TestTree+responsePutSourceServerAction =+ res+ "PutSourceServerActionResponse"+ "fixture/PutSourceServerActionResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy PutSourceServerAction)++responsePutTemplateAction :: TemplateActionDocument -> TestTree+responsePutTemplateAction =+ res+ "PutTemplateActionResponse"+ "fixture/PutTemplateActionResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy PutTemplateAction)++responseRemoveSourceServerAction :: RemoveSourceServerActionResponse -> TestTree+responseRemoveSourceServerAction =+ res+ "RemoveSourceServerActionResponse"+ "fixture/RemoveSourceServerActionResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy RemoveSourceServerAction)++responseRemoveTemplateAction :: RemoveTemplateActionResponse -> TestTree+responseRemoveTemplateAction =+ res+ "RemoveTemplateActionResponse"+ "fixture/RemoveTemplateActionResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy RemoveTemplateAction)++responseRetryDataReplication :: SourceServer -> TestTree+responseRetryDataReplication =+ res+ "RetryDataReplicationResponse"+ "fixture/RetryDataReplicationResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy RetryDataReplication)++responseStartCutover :: StartCutoverResponse -> TestTree+responseStartCutover =+ res+ "StartCutoverResponse"+ "fixture/StartCutoverResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy StartCutover)++responseStartReplication :: SourceServer -> TestTree+responseStartReplication =+ res+ "StartReplicationResponse"+ "fixture/StartReplicationResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy StartReplication)++responseStartTest :: StartTestResponse -> TestTree+responseStartTest =+ res+ "StartTestResponse"+ "fixture/StartTestResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy StartTest)++responseTagResource :: TagResourceResponse -> TestTree+responseTagResource =+ res+ "TagResourceResponse"+ "fixture/TagResourceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy TagResource)++responseTerminateTargetInstances :: TerminateTargetInstancesResponse -> TestTree+responseTerminateTargetInstances =+ res+ "TerminateTargetInstancesResponse"+ "fixture/TerminateTargetInstancesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy TerminateTargetInstances)++responseUnarchiveApplication :: Application -> TestTree+responseUnarchiveApplication =+ res+ "UnarchiveApplicationResponse"+ "fixture/UnarchiveApplicationResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UnarchiveApplication)++responseUnarchiveWave :: Wave -> TestTree+responseUnarchiveWave =+ res+ "UnarchiveWaveResponse"+ "fixture/UnarchiveWaveResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UnarchiveWave)++responseUntagResource :: UntagResourceResponse -> TestTree+responseUntagResource =+ res+ "UntagResourceResponse"+ "fixture/UntagResourceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UntagResource)++responseUpdateApplication :: Application -> TestTree+responseUpdateApplication =+ res+ "UpdateApplicationResponse"+ "fixture/UpdateApplicationResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateApplication)++responseUpdateLaunchConfiguration :: LaunchConfiguration -> TestTree+responseUpdateLaunchConfiguration =+ res+ "UpdateLaunchConfigurationResponse"+ "fixture/UpdateLaunchConfigurationResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateLaunchConfiguration)++responseUpdateLaunchConfigurationTemplate :: LaunchConfigurationTemplate -> TestTree+responseUpdateLaunchConfigurationTemplate =+ res+ "UpdateLaunchConfigurationTemplateResponse"+ "fixture/UpdateLaunchConfigurationTemplateResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateLaunchConfigurationTemplate)++responseUpdateReplicationConfiguration :: ReplicationConfiguration -> TestTree+responseUpdateReplicationConfiguration =+ res+ "UpdateReplicationConfigurationResponse"+ "fixture/UpdateReplicationConfigurationResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateReplicationConfiguration)++responseUpdateReplicationConfigurationTemplate :: ReplicationConfigurationTemplate -> TestTree+responseUpdateReplicationConfigurationTemplate =+ res+ "UpdateReplicationConfigurationTemplateResponse"+ "fixture/UpdateReplicationConfigurationTemplateResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateReplicationConfigurationTemplate)++responseUpdateSourceServerReplicationType :: SourceServer -> TestTree+responseUpdateSourceServerReplicationType =+ res+ "UpdateSourceServerReplicationTypeResponse"+ "fixture/UpdateSourceServerReplicationTypeResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateSourceServerReplicationType)++responseUpdateWave :: Wave -> TestTree+responseUpdateWave =+ res+ "UpdateWaveResponse"+ "fixture/UpdateWaveResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateWave)
+ test/Test/Amazonka/MGN.hs view
@@ -0,0 +1,20 @@+-- |+-- Module : Test.Amazonka.MGN+-- 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.MGN+ ( tests,+ fixtures,+ )+where++import Test.Tasty (TestTree)++tests :: [TestTree]+tests = []++fixtures :: [TestTree]+fixtures = []
+ test/Test/Amazonka/MGN/Internal.hs view
@@ -0,0 +1,8 @@+-- |+-- Module : Test.Amazonka.MGN.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.MGN.Internal where