amazonka-opensearch (empty) → 2.0
raw patch · 268 files changed
+27874/−0 lines, 268 filesdep +amazonka-coredep +amazonka-opensearchdep +amazonka-test
Dependencies added: amazonka-core, amazonka-opensearch, amazonka-test, base, bytestring, case-insensitive, tasty, tasty-hunit, text, time, unordered-containers
Files
- LICENSE +367/−0
- README.md +44/−0
- amazonka-opensearch.cabal +241/−0
- fixture/AcceptInboundConnection.yaml +10/−0
- fixture/AcceptInboundConnectionResponse.proto +0/−0
- fixture/AddTags.yaml +10/−0
- fixture/AddTagsResponse.proto +0/−0
- fixture/AssociatePackage.yaml +10/−0
- fixture/AssociatePackageResponse.proto +0/−0
- fixture/AuthorizeVpcEndpointAccess.yaml +10/−0
- fixture/AuthorizeVpcEndpointAccessResponse.proto +0/−0
- fixture/CancelServiceSoftwareUpdate.yaml +10/−0
- fixture/CancelServiceSoftwareUpdateResponse.proto +0/−0
- fixture/CreateDomain.yaml +10/−0
- fixture/CreateDomainResponse.proto +0/−0
- fixture/CreateOutboundConnection.yaml +10/−0
- fixture/CreateOutboundConnectionResponse.proto +0/−0
- fixture/CreatePackage.yaml +10/−0
- fixture/CreatePackageResponse.proto +0/−0
- fixture/CreateVpcEndpoint.yaml +10/−0
- fixture/CreateVpcEndpointResponse.proto +0/−0
- fixture/DeleteDomain.yaml +10/−0
- fixture/DeleteDomainResponse.proto +0/−0
- fixture/DeleteInboundConnection.yaml +10/−0
- fixture/DeleteInboundConnectionResponse.proto +0/−0
- fixture/DeleteOutboundConnection.yaml +10/−0
- fixture/DeleteOutboundConnectionResponse.proto +0/−0
- fixture/DeletePackage.yaml +10/−0
- fixture/DeletePackageResponse.proto +0/−0
- fixture/DeleteVpcEndpoint.yaml +10/−0
- fixture/DeleteVpcEndpointResponse.proto +0/−0
- fixture/DescribeDomain.yaml +10/−0
- fixture/DescribeDomainAutoTunes.yaml +10/−0
- fixture/DescribeDomainAutoTunesResponse.proto +0/−0
- fixture/DescribeDomainChangeProgress.yaml +10/−0
- fixture/DescribeDomainChangeProgressResponse.proto +0/−0
- fixture/DescribeDomainConfig.yaml +10/−0
- fixture/DescribeDomainConfigResponse.proto +0/−0
- fixture/DescribeDomainResponse.proto +0/−0
- fixture/DescribeDomains.yaml +10/−0
- fixture/DescribeDomainsResponse.proto +0/−0
- fixture/DescribeInboundConnections.yaml +10/−0
- fixture/DescribeInboundConnectionsResponse.proto +0/−0
- fixture/DescribeInstanceTypeLimits.yaml +10/−0
- fixture/DescribeInstanceTypeLimitsResponse.proto +0/−0
- fixture/DescribeOutboundConnections.yaml +10/−0
- fixture/DescribeOutboundConnectionsResponse.proto +0/−0
- fixture/DescribePackages.yaml +10/−0
- fixture/DescribePackagesResponse.proto +0/−0
- fixture/DescribeReservedInstanceOfferings.yaml +10/−0
- fixture/DescribeReservedInstanceOfferingsResponse.proto +0/−0
- fixture/DescribeReservedInstances.yaml +10/−0
- fixture/DescribeReservedInstancesResponse.proto +0/−0
- fixture/DescribeVpcEndpoints.yaml +10/−0
- fixture/DescribeVpcEndpointsResponse.proto +0/−0
- fixture/DissociatePackage.yaml +10/−0
- fixture/DissociatePackageResponse.proto +0/−0
- fixture/GetCompatibleVersions.yaml +10/−0
- fixture/GetCompatibleVersionsResponse.proto +0/−0
- fixture/GetPackageVersionHistory.yaml +10/−0
- fixture/GetPackageVersionHistoryResponse.proto +0/−0
- fixture/GetUpgradeHistory.yaml +10/−0
- fixture/GetUpgradeHistoryResponse.proto +0/−0
- fixture/GetUpgradeStatus.yaml +10/−0
- fixture/GetUpgradeStatusResponse.proto +0/−0
- fixture/ListDomainNames.yaml +10/−0
- fixture/ListDomainNamesResponse.proto +0/−0
- fixture/ListDomainsForPackage.yaml +10/−0
- fixture/ListDomainsForPackageResponse.proto +0/−0
- fixture/ListInstanceTypeDetails.yaml +10/−0
- fixture/ListInstanceTypeDetailsResponse.proto +0/−0
- fixture/ListPackagesForDomain.yaml +10/−0
- fixture/ListPackagesForDomainResponse.proto +0/−0
- fixture/ListTags.yaml +10/−0
- fixture/ListTagsResponse.proto +0/−0
- fixture/ListVersions.yaml +10/−0
- fixture/ListVersionsResponse.proto +0/−0
- fixture/ListVpcEndpointAccess.yaml +10/−0
- fixture/ListVpcEndpointAccessResponse.proto +0/−0
- fixture/ListVpcEndpoints.yaml +10/−0
- fixture/ListVpcEndpointsForDomain.yaml +10/−0
- fixture/ListVpcEndpointsForDomainResponse.proto +0/−0
- fixture/ListVpcEndpointsResponse.proto +0/−0
- fixture/PurchaseReservedInstanceOffering.yaml +10/−0
- fixture/PurchaseReservedInstanceOfferingResponse.proto +0/−0
- fixture/RejectInboundConnection.yaml +10/−0
- fixture/RejectInboundConnectionResponse.proto +0/−0
- fixture/RemoveTags.yaml +10/−0
- fixture/RemoveTagsResponse.proto +0/−0
- fixture/RevokeVpcEndpointAccess.yaml +10/−0
- fixture/RevokeVpcEndpointAccessResponse.proto +0/−0
- fixture/StartServiceSoftwareUpdate.yaml +10/−0
- fixture/StartServiceSoftwareUpdateResponse.proto +0/−0
- fixture/UpdateDomainConfig.yaml +10/−0
- fixture/UpdateDomainConfigResponse.proto +0/−0
- fixture/UpdatePackage.yaml +10/−0
- fixture/UpdatePackageResponse.proto +0/−0
- fixture/UpdateVpcEndpoint.yaml +10/−0
- fixture/UpdateVpcEndpointResponse.proto +0/−0
- fixture/UpgradeDomain.yaml +10/−0
- fixture/UpgradeDomainResponse.proto +0/−0
- gen/Amazonka/OpenSearch.hs +856/−0
- gen/Amazonka/OpenSearch/AcceptInboundConnection.hs +171/−0
- gen/Amazonka/OpenSearch/AddTags.hs +140/−0
- gen/Amazonka/OpenSearch/AssociatePackage.hs +186/−0
- gen/Amazonka/OpenSearch/AuthorizeVpcEndpointAccess.hs +192/−0
- gen/Amazonka/OpenSearch/CancelServiceSoftwareUpdate.hs +181/−0
- gen/Amazonka/OpenSearch/CreateDomain.hs +492/−0
- gen/Amazonka/OpenSearch/CreateOutboundConnection.hs +263/−0
- gen/Amazonka/OpenSearch/CreatePackage.hs +216/−0
- gen/Amazonka/OpenSearch/CreateVpcEndpoint.hs +194/−0
- gen/Amazonka/OpenSearch/DeleteDomain.hs +158/−0
- gen/Amazonka/OpenSearch/DeleteInboundConnection.hs +168/−0
- gen/Amazonka/OpenSearch/DeleteOutboundConnection.hs +168/−0
- gen/Amazonka/OpenSearch/DeletePackage.hs +160/−0
- gen/Amazonka/OpenSearch/DeleteVpcEndpoint.hs +161/−0
- gen/Amazonka/OpenSearch/DescribeDomain.hs +163/−0
- gen/Amazonka/OpenSearch/DescribeDomainAutoTunes.hs +222/−0
- gen/Amazonka/OpenSearch/DescribeDomainChangeProgress.hs +195/−0
- gen/Amazonka/OpenSearch/DescribeDomainConfig.hs +166/−0
- gen/Amazonka/OpenSearch/DescribeDomains.hs +169/−0
- gen/Amazonka/OpenSearch/DescribeInboundConnections.hs +231/−0
- gen/Amazonka/OpenSearch/DescribeInstanceTypeLimits.hs +211/−0
- gen/Amazonka/OpenSearch/DescribeOutboundConnections.hs +228/−0
- gen/Amazonka/OpenSearch/DescribePackages.hs +228/−0
- gen/Amazonka/OpenSearch/DescribeReservedInstanceOfferings.hs +255/−0
- gen/Amazonka/OpenSearch/DescribeReservedInstances.hs +232/−0
- gen/Amazonka/OpenSearch/DescribeVpcEndpoints.hs +177/−0
- gen/Amazonka/OpenSearch/DissociatePackage.hs +188/−0
- gen/Amazonka/OpenSearch/GetCompatibleVersions.hs +170/−0
- gen/Amazonka/OpenSearch/GetPackageVersionHistory.hs +246/−0
- gen/Amazonka/OpenSearch/GetUpgradeHistory.hs +226/−0
- gen/Amazonka/OpenSearch/GetUpgradeStatus.hs +187/−0
- gen/Amazonka/OpenSearch/Lens.hs +968/−0
- gen/Amazonka/OpenSearch/ListDomainNames.hs +157/−0
- gen/Amazonka/OpenSearch/ListDomainsForPackage.hs +231/−0
- gen/Amazonka/OpenSearch/ListInstanceTypeDetails.hs +242/−0
- gen/Amazonka/OpenSearch/ListPackagesForDomain.hs +228/−0
- gen/Amazonka/OpenSearch/ListTags.hs +152/−0
- gen/Amazonka/OpenSearch/ListVersions.hs +201/−0
- gen/Amazonka/OpenSearch/ListVpcEndpointAccess.hs +216/−0
- gen/Amazonka/OpenSearch/ListVpcEndpoints.hs +179/−0
- gen/Amazonka/OpenSearch/ListVpcEndpointsForDomain.hs +210/−0
- gen/Amazonka/OpenSearch/PurchaseReservedInstanceOffering.hs +238/−0
- gen/Amazonka/OpenSearch/RejectInboundConnection.hs +170/−0
- gen/Amazonka/OpenSearch/RemoveTags.hs +138/−0
- gen/Amazonka/OpenSearch/RevokeVpcEndpointAccess.hs +171/−0
- gen/Amazonka/OpenSearch/StartServiceSoftwareUpdate.hs +176/−0
- gen/Amazonka/OpenSearch/Types.hs +1029/−0
- gen/Amazonka/OpenSearch/Types/AWSDomainInformation.hs +108/−0
- gen/Amazonka/OpenSearch/Types/AccessPoliciesStatus.hs +96/−0
- gen/Amazonka/OpenSearch/Types/AdditionalLimit.hs +105/−0
- gen/Amazonka/OpenSearch/Types/AdvancedOptionsStatus.hs +114/−0
- gen/Amazonka/OpenSearch/Types/AdvancedSecurityOptions.hs +137/−0
- gen/Amazonka/OpenSearch/Types/AdvancedSecurityOptionsInput.hs +139/−0
- gen/Amazonka/OpenSearch/Types/AdvancedSecurityOptionsStatus.hs +93/−0
- gen/Amazonka/OpenSearch/Types/AuthorizedPrincipal.hs +93/−0
- gen/Amazonka/OpenSearch/Types/AutoTune.hs +87/−0
- gen/Amazonka/OpenSearch/Types/AutoTuneDesiredState.hs +72/−0
- gen/Amazonka/OpenSearch/Types/AutoTuneDetails.hs +76/−0
- gen/Amazonka/OpenSearch/Types/AutoTuneMaintenanceSchedule.hs +116/−0
- gen/Amazonka/OpenSearch/Types/AutoTuneOptions.hs +130/−0
- gen/Amazonka/OpenSearch/Types/AutoTuneOptionsInput.hs +103/−0
- gen/Amazonka/OpenSearch/Types/AutoTuneOptionsOutput.hs +87/−0
- gen/Amazonka/OpenSearch/Types/AutoTuneOptionsStatus.hs +86/−0
- gen/Amazonka/OpenSearch/Types/AutoTuneState.hs +108/−0
- gen/Amazonka/OpenSearch/Types/AutoTuneStatus.hs +144/−0
- gen/Amazonka/OpenSearch/Types/AutoTuneType.hs +67/−0
- gen/Amazonka/OpenSearch/Types/ChangeProgressDetails.hs +85/−0
- gen/Amazonka/OpenSearch/Types/ChangeProgressStage.hs +108/−0
- gen/Amazonka/OpenSearch/Types/ChangeProgressStatusDetails.hs +168/−0
- gen/Amazonka/OpenSearch/Types/ClusterConfig.hs +247/−0
- gen/Amazonka/OpenSearch/Types/ClusterConfigStatus.hs +90/−0
- gen/Amazonka/OpenSearch/Types/CognitoOptions.hs +134/−0
- gen/Amazonka/OpenSearch/Types/CognitoOptionsStatus.hs +90/−0
- gen/Amazonka/OpenSearch/Types/ColdStorageOptions.hs +79/−0
- gen/Amazonka/OpenSearch/Types/CompatibleVersionsMap.hs +89/−0
- gen/Amazonka/OpenSearch/Types/DeploymentStatus.hs +86/−0
- gen/Amazonka/OpenSearch/Types/DescribePackagesFilter.hs +83/−0
- gen/Amazonka/OpenSearch/Types/DescribePackagesFilterName.hs +76/−0
- gen/Amazonka/OpenSearch/Types/DomainConfig.hs +273/−0
- gen/Amazonka/OpenSearch/Types/DomainEndpointOptions.hs +168/−0
- gen/Amazonka/OpenSearch/Types/DomainEndpointOptionsStatus.hs +90/−0
- gen/Amazonka/OpenSearch/Types/DomainInfo.hs +91/−0
- gen/Amazonka/OpenSearch/Types/DomainInformationContainer.hs +82/−0
- gen/Amazonka/OpenSearch/Types/DomainPackageDetails.hs +179/−0
- gen/Amazonka/OpenSearch/Types/DomainPackageStatus.hs +86/−0
- gen/Amazonka/OpenSearch/Types/DomainStatus.hs +445/−0
- gen/Amazonka/OpenSearch/Types/DryRunResults.hs +117/−0
- gen/Amazonka/OpenSearch/Types/Duration.hs +94/−0
- gen/Amazonka/OpenSearch/Types/EBSOptions.hs +146/−0
- gen/Amazonka/OpenSearch/Types/EBSOptionsStatus.hs +91/−0
- gen/Amazonka/OpenSearch/Types/EncryptionAtRestOptions.hs +95/−0
- gen/Amazonka/OpenSearch/Types/EncryptionAtRestOptionsStatus.hs +94/−0
- gen/Amazonka/OpenSearch/Types/EngineType.hs +71/−0
- gen/Amazonka/OpenSearch/Types/ErrorDetails.hs +85/−0
- gen/Amazonka/OpenSearch/Types/Filter.hs +85/−0
- gen/Amazonka/OpenSearch/Types/InboundConnection.hs +112/−0
- gen/Amazonka/OpenSearch/Types/InboundConnectionStatus.hs +143/−0
- gen/Amazonka/OpenSearch/Types/InboundConnectionStatusCode.hs +101/−0
- gen/Amazonka/OpenSearch/Types/InstanceCountLimits.hs +86/−0
- gen/Amazonka/OpenSearch/Types/InstanceLimits.hs +77/−0
- gen/Amazonka/OpenSearch/Types/InstanceTypeDetails.hs +153/−0
- gen/Amazonka/OpenSearch/Types/Limits.hs +105/−0
- gen/Amazonka/OpenSearch/Types/LogPublishingOption.hs +104/−0
- gen/Amazonka/OpenSearch/Types/LogPublishingOptionsStatus.hs +89/−0
- gen/Amazonka/OpenSearch/Types/LogType.hs +94/−0
- gen/Amazonka/OpenSearch/Types/MasterUserOptions.hs +106/−0
- gen/Amazonka/OpenSearch/Types/NodeToNodeEncryptionOptions.hs +80/−0
- gen/Amazonka/OpenSearch/Types/NodeToNodeEncryptionOptionsStatus.hs +107/−0
- gen/Amazonka/OpenSearch/Types/OpenSearchPartitionInstanceType.hs +536/−0
- gen/Amazonka/OpenSearch/Types/OpenSearchWarmPartitionInstanceType.hs +76/−0
- gen/Amazonka/OpenSearch/Types/OptionState.hs +83/−0
- gen/Amazonka/OpenSearch/Types/OptionStatus.hs +127/−0
- gen/Amazonka/OpenSearch/Types/OutboundConnection.hs +123/−0
- gen/Amazonka/OpenSearch/Types/OutboundConnectionStatus.hs +167/−0
- gen/Amazonka/OpenSearch/Types/OutboundConnectionStatusCode.hs +111/−0
- gen/Amazonka/OpenSearch/Types/OverallChangeStatus.hs +82/−0
- gen/Amazonka/OpenSearch/Types/PackageDetails.hs +175/−0
- gen/Amazonka/OpenSearch/Types/PackageSource.hs +83/−0
- gen/Amazonka/OpenSearch/Types/PackageStatus.hs +101/−0
- gen/Amazonka/OpenSearch/Types/PackageType.hs +66/−0
- gen/Amazonka/OpenSearch/Types/PackageVersionHistory.hs +97/−0
- gen/Amazonka/OpenSearch/Types/PrincipalType.hs +71/−0
- gen/Amazonka/OpenSearch/Types/RecurringCharge.hs +86/−0
- gen/Amazonka/OpenSearch/Types/ReservedInstance.hs +244/−0
- gen/Amazonka/OpenSearch/Types/ReservedInstanceOffering.hs +175/−0
- gen/Amazonka/OpenSearch/Types/ReservedInstancePaymentOption.hs +76/−0
- gen/Amazonka/OpenSearch/Types/RollbackOnDisable.hs +72/−0
- gen/Amazonka/OpenSearch/Types/SAMLIdp.hs +98/−0
- gen/Amazonka/OpenSearch/Types/SAMLOptionsInput.hs +160/−0
- gen/Amazonka/OpenSearch/Types/SAMLOptionsOutput.hs +121/−0
- gen/Amazonka/OpenSearch/Types/ScheduledAutoTuneActionType.hs +72/−0
- gen/Amazonka/OpenSearch/Types/ScheduledAutoTuneDetails.hs +115/−0
- gen/Amazonka/OpenSearch/Types/ScheduledAutoTuneSeverityType.hs +77/−0
- gen/Amazonka/OpenSearch/Types/ServiceSoftwareOptions.hs +178/−0
- gen/Amazonka/OpenSearch/Types/SnapshotOptions.hs +86/−0
- gen/Amazonka/OpenSearch/Types/SnapshotOptionsStatus.hs +91/−0
- gen/Amazonka/OpenSearch/Types/StorageType.hs +101/−0
- gen/Amazonka/OpenSearch/Types/StorageTypeLimit.hs +148/−0
- gen/Amazonka/OpenSearch/Types/TLSSecurityPolicy.hs +71/−0
- gen/Amazonka/OpenSearch/Types/Tag.hs +105/−0
- gen/Amazonka/OpenSearch/Types/TimeUnit.hs +67/−0
- gen/Amazonka/OpenSearch/Types/UpgradeHistory.hs +144/−0
- gen/Amazonka/OpenSearch/Types/UpgradeStatus.hs +81/−0
- gen/Amazonka/OpenSearch/Types/UpgradeStep.hs +76/−0
- gen/Amazonka/OpenSearch/Types/UpgradeStepItem.hs +165/−0
- gen/Amazonka/OpenSearch/Types/VPCDerivedInfo.hs +126/−0
- gen/Amazonka/OpenSearch/Types/VPCDerivedInfoStatus.hs +90/−0
- gen/Amazonka/OpenSearch/Types/VPCOptions.hs +98/−0
- gen/Amazonka/OpenSearch/Types/VersionStatus.hs +90/−0
- gen/Amazonka/OpenSearch/Types/VolumeType.hs +83/−0
- gen/Amazonka/OpenSearch/Types/VpcEndpoint.hs +141/−0
- gen/Amazonka/OpenSearch/Types/VpcEndpointError.hs +98/−0
- gen/Amazonka/OpenSearch/Types/VpcEndpointErrorCode.hs +71/−0
- gen/Amazonka/OpenSearch/Types/VpcEndpointStatus.hs +96/−0
- gen/Amazonka/OpenSearch/Types/VpcEndpointSummary.hs +113/−0
- gen/Amazonka/OpenSearch/Types/ZoneAwarenessConfig.hs +91/−0
- gen/Amazonka/OpenSearch/UpdateDomainConfig.hs +491/−0
- gen/Amazonka/OpenSearch/UpdatePackage.hs +213/−0
- gen/Amazonka/OpenSearch/UpdateVpcEndpoint.hs +183/−0
- gen/Amazonka/OpenSearch/UpgradeDomain.hs +297/−0
- gen/Amazonka/OpenSearch/Waiters.hs +24/−0
- src/.gitkeep +0/−0
- test/Main.hs +23/−0
- test/Test/Amazonka/Gen/OpenSearch.hs +1018/−0
- test/Test/Amazonka/OpenSearch.hs +20/−0
- test/Test/Amazonka/OpenSearch/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 OpenSearch Service SDK++* [Version](#version)+* [Description](#description)+* [Contribute](#contribute)+* [Licence](#licence)+++## Version+ +`2.0` - Derived from API version @2021-01-01@ of the AWS service descriptions, licensed under Apache 2.0.++## Description++Documentation is available via [Hackage](http://hackage.haskell.org/package/amazonka-opensearch)+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.OpenSearch](http://hackage.haskell.org/package/amazonka-opensearch/docs/Amazonka-OpenSearch.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-opensearch` 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-opensearch.cabal view
@@ -0,0 +1,241 @@+cabal-version: 2.2+name: amazonka-opensearch+version: 2.0+synopsis: Amazon OpenSearch 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 @2021-01-01@ 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.OpenSearch.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.OpenSearch" 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-opensearch++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.OpenSearch+ Amazonka.OpenSearch.AcceptInboundConnection+ Amazonka.OpenSearch.AddTags+ Amazonka.OpenSearch.AssociatePackage+ Amazonka.OpenSearch.AuthorizeVpcEndpointAccess+ Amazonka.OpenSearch.CancelServiceSoftwareUpdate+ Amazonka.OpenSearch.CreateDomain+ Amazonka.OpenSearch.CreateOutboundConnection+ Amazonka.OpenSearch.CreatePackage+ Amazonka.OpenSearch.CreateVpcEndpoint+ Amazonka.OpenSearch.DeleteDomain+ Amazonka.OpenSearch.DeleteInboundConnection+ Amazonka.OpenSearch.DeleteOutboundConnection+ Amazonka.OpenSearch.DeletePackage+ Amazonka.OpenSearch.DeleteVpcEndpoint+ Amazonka.OpenSearch.DescribeDomain+ Amazonka.OpenSearch.DescribeDomainAutoTunes+ Amazonka.OpenSearch.DescribeDomainChangeProgress+ Amazonka.OpenSearch.DescribeDomainConfig+ Amazonka.OpenSearch.DescribeDomains+ Amazonka.OpenSearch.DescribeInboundConnections+ Amazonka.OpenSearch.DescribeInstanceTypeLimits+ Amazonka.OpenSearch.DescribeOutboundConnections+ Amazonka.OpenSearch.DescribePackages+ Amazonka.OpenSearch.DescribeReservedInstanceOfferings+ Amazonka.OpenSearch.DescribeReservedInstances+ Amazonka.OpenSearch.DescribeVpcEndpoints+ Amazonka.OpenSearch.DissociatePackage+ Amazonka.OpenSearch.GetCompatibleVersions+ Amazonka.OpenSearch.GetPackageVersionHistory+ Amazonka.OpenSearch.GetUpgradeHistory+ Amazonka.OpenSearch.GetUpgradeStatus+ Amazonka.OpenSearch.Lens+ Amazonka.OpenSearch.ListDomainNames+ Amazonka.OpenSearch.ListDomainsForPackage+ Amazonka.OpenSearch.ListInstanceTypeDetails+ Amazonka.OpenSearch.ListPackagesForDomain+ Amazonka.OpenSearch.ListTags+ Amazonka.OpenSearch.ListVersions+ Amazonka.OpenSearch.ListVpcEndpointAccess+ Amazonka.OpenSearch.ListVpcEndpoints+ Amazonka.OpenSearch.ListVpcEndpointsForDomain+ Amazonka.OpenSearch.PurchaseReservedInstanceOffering+ Amazonka.OpenSearch.RejectInboundConnection+ Amazonka.OpenSearch.RemoveTags+ Amazonka.OpenSearch.RevokeVpcEndpointAccess+ Amazonka.OpenSearch.StartServiceSoftwareUpdate+ Amazonka.OpenSearch.Types+ Amazonka.OpenSearch.Types.AccessPoliciesStatus+ Amazonka.OpenSearch.Types.AdditionalLimit+ Amazonka.OpenSearch.Types.AdvancedOptionsStatus+ Amazonka.OpenSearch.Types.AdvancedSecurityOptions+ Amazonka.OpenSearch.Types.AdvancedSecurityOptionsInput+ Amazonka.OpenSearch.Types.AdvancedSecurityOptionsStatus+ Amazonka.OpenSearch.Types.AuthorizedPrincipal+ Amazonka.OpenSearch.Types.AutoTune+ Amazonka.OpenSearch.Types.AutoTuneDesiredState+ Amazonka.OpenSearch.Types.AutoTuneDetails+ Amazonka.OpenSearch.Types.AutoTuneMaintenanceSchedule+ Amazonka.OpenSearch.Types.AutoTuneOptions+ Amazonka.OpenSearch.Types.AutoTuneOptionsInput+ Amazonka.OpenSearch.Types.AutoTuneOptionsOutput+ Amazonka.OpenSearch.Types.AutoTuneOptionsStatus+ Amazonka.OpenSearch.Types.AutoTuneState+ Amazonka.OpenSearch.Types.AutoTuneStatus+ Amazonka.OpenSearch.Types.AutoTuneType+ Amazonka.OpenSearch.Types.AWSDomainInformation+ Amazonka.OpenSearch.Types.ChangeProgressDetails+ Amazonka.OpenSearch.Types.ChangeProgressStage+ Amazonka.OpenSearch.Types.ChangeProgressStatusDetails+ Amazonka.OpenSearch.Types.ClusterConfig+ Amazonka.OpenSearch.Types.ClusterConfigStatus+ Amazonka.OpenSearch.Types.CognitoOptions+ Amazonka.OpenSearch.Types.CognitoOptionsStatus+ Amazonka.OpenSearch.Types.ColdStorageOptions+ Amazonka.OpenSearch.Types.CompatibleVersionsMap+ Amazonka.OpenSearch.Types.DeploymentStatus+ Amazonka.OpenSearch.Types.DescribePackagesFilter+ Amazonka.OpenSearch.Types.DescribePackagesFilterName+ Amazonka.OpenSearch.Types.DomainConfig+ Amazonka.OpenSearch.Types.DomainEndpointOptions+ Amazonka.OpenSearch.Types.DomainEndpointOptionsStatus+ Amazonka.OpenSearch.Types.DomainInfo+ Amazonka.OpenSearch.Types.DomainInformationContainer+ Amazonka.OpenSearch.Types.DomainPackageDetails+ Amazonka.OpenSearch.Types.DomainPackageStatus+ Amazonka.OpenSearch.Types.DomainStatus+ Amazonka.OpenSearch.Types.DryRunResults+ Amazonka.OpenSearch.Types.Duration+ Amazonka.OpenSearch.Types.EBSOptions+ Amazonka.OpenSearch.Types.EBSOptionsStatus+ Amazonka.OpenSearch.Types.EncryptionAtRestOptions+ Amazonka.OpenSearch.Types.EncryptionAtRestOptionsStatus+ Amazonka.OpenSearch.Types.EngineType+ Amazonka.OpenSearch.Types.ErrorDetails+ Amazonka.OpenSearch.Types.Filter+ Amazonka.OpenSearch.Types.InboundConnection+ Amazonka.OpenSearch.Types.InboundConnectionStatus+ Amazonka.OpenSearch.Types.InboundConnectionStatusCode+ Amazonka.OpenSearch.Types.InstanceCountLimits+ Amazonka.OpenSearch.Types.InstanceLimits+ Amazonka.OpenSearch.Types.InstanceTypeDetails+ Amazonka.OpenSearch.Types.Limits+ Amazonka.OpenSearch.Types.LogPublishingOption+ Amazonka.OpenSearch.Types.LogPublishingOptionsStatus+ Amazonka.OpenSearch.Types.LogType+ Amazonka.OpenSearch.Types.MasterUserOptions+ Amazonka.OpenSearch.Types.NodeToNodeEncryptionOptions+ Amazonka.OpenSearch.Types.NodeToNodeEncryptionOptionsStatus+ Amazonka.OpenSearch.Types.OpenSearchPartitionInstanceType+ Amazonka.OpenSearch.Types.OpenSearchWarmPartitionInstanceType+ Amazonka.OpenSearch.Types.OptionState+ Amazonka.OpenSearch.Types.OptionStatus+ Amazonka.OpenSearch.Types.OutboundConnection+ Amazonka.OpenSearch.Types.OutboundConnectionStatus+ Amazonka.OpenSearch.Types.OutboundConnectionStatusCode+ Amazonka.OpenSearch.Types.OverallChangeStatus+ Amazonka.OpenSearch.Types.PackageDetails+ Amazonka.OpenSearch.Types.PackageSource+ Amazonka.OpenSearch.Types.PackageStatus+ Amazonka.OpenSearch.Types.PackageType+ Amazonka.OpenSearch.Types.PackageVersionHistory+ Amazonka.OpenSearch.Types.PrincipalType+ Amazonka.OpenSearch.Types.RecurringCharge+ Amazonka.OpenSearch.Types.ReservedInstance+ Amazonka.OpenSearch.Types.ReservedInstanceOffering+ Amazonka.OpenSearch.Types.ReservedInstancePaymentOption+ Amazonka.OpenSearch.Types.RollbackOnDisable+ Amazonka.OpenSearch.Types.SAMLIdp+ Amazonka.OpenSearch.Types.SAMLOptionsInput+ Amazonka.OpenSearch.Types.SAMLOptionsOutput+ Amazonka.OpenSearch.Types.ScheduledAutoTuneActionType+ Amazonka.OpenSearch.Types.ScheduledAutoTuneDetails+ Amazonka.OpenSearch.Types.ScheduledAutoTuneSeverityType+ Amazonka.OpenSearch.Types.ServiceSoftwareOptions+ Amazonka.OpenSearch.Types.SnapshotOptions+ Amazonka.OpenSearch.Types.SnapshotOptionsStatus+ Amazonka.OpenSearch.Types.StorageType+ Amazonka.OpenSearch.Types.StorageTypeLimit+ Amazonka.OpenSearch.Types.Tag+ Amazonka.OpenSearch.Types.TimeUnit+ Amazonka.OpenSearch.Types.TLSSecurityPolicy+ Amazonka.OpenSearch.Types.UpgradeHistory+ Amazonka.OpenSearch.Types.UpgradeStatus+ Amazonka.OpenSearch.Types.UpgradeStep+ Amazonka.OpenSearch.Types.UpgradeStepItem+ Amazonka.OpenSearch.Types.VersionStatus+ Amazonka.OpenSearch.Types.VolumeType+ Amazonka.OpenSearch.Types.VPCDerivedInfo+ Amazonka.OpenSearch.Types.VPCDerivedInfoStatus+ Amazonka.OpenSearch.Types.VpcEndpoint+ Amazonka.OpenSearch.Types.VpcEndpointError+ Amazonka.OpenSearch.Types.VpcEndpointErrorCode+ Amazonka.OpenSearch.Types.VpcEndpointStatus+ Amazonka.OpenSearch.Types.VpcEndpointSummary+ Amazonka.OpenSearch.Types.VPCOptions+ Amazonka.OpenSearch.Types.ZoneAwarenessConfig+ Amazonka.OpenSearch.UpdateDomainConfig+ Amazonka.OpenSearch.UpdatePackage+ Amazonka.OpenSearch.UpdateVpcEndpoint+ Amazonka.OpenSearch.UpgradeDomain+ Amazonka.OpenSearch.Waiters++ build-depends:+ , amazonka-core >=2.0 && <2.1+ , base >=4.12 && <5++test-suite amazonka-opensearch-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.OpenSearch+ Test.Amazonka.OpenSearch+ Test.Amazonka.OpenSearch.Internal++ build-depends:+ , amazonka-core >=2.0 && <2.1+ , amazonka-opensearch+ , amazonka-test >=2.0 && <2.1+ , base+ , bytestring+ , case-insensitive+ , tasty+ , tasty-hunit+ , text+ , time+ , unordered-containers
+ fixture/AcceptInboundConnection.yaml view
@@ -0,0 +1,10 @@+---+method: PUT+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/es/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: es.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/AcceptInboundConnectionResponse.proto view
+ fixture/AddTags.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/es/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: es.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/AddTagsResponse.proto view
+ fixture/AssociatePackage.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/es/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: es.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/AssociatePackageResponse.proto view
+ fixture/AuthorizeVpcEndpointAccess.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/es/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: es.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/AuthorizeVpcEndpointAccessResponse.proto view
+ fixture/CancelServiceSoftwareUpdate.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/es/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: es.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/CancelServiceSoftwareUpdateResponse.proto view
+ fixture/CreateDomain.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/es/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: es.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/CreateDomainResponse.proto view
+ fixture/CreateOutboundConnection.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/es/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: es.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/CreateOutboundConnectionResponse.proto view
+ fixture/CreatePackage.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/es/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: es.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/CreatePackageResponse.proto view
+ fixture/CreateVpcEndpoint.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/es/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: es.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/CreateVpcEndpointResponse.proto view
+ fixture/DeleteDomain.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/es/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: es.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/DeleteDomainResponse.proto view
+ fixture/DeleteInboundConnection.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/es/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: es.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/DeleteInboundConnectionResponse.proto view
+ fixture/DeleteOutboundConnection.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/es/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: es.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/DeleteOutboundConnectionResponse.proto view
+ fixture/DeletePackage.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/es/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: es.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/DeletePackageResponse.proto view
+ fixture/DeleteVpcEndpoint.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/es/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: es.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/DeleteVpcEndpointResponse.proto view
+ fixture/DescribeDomain.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/es/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: es.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/DescribeDomainAutoTunes.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/es/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: es.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/DescribeDomainAutoTunesResponse.proto view
+ fixture/DescribeDomainChangeProgress.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/es/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: es.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/DescribeDomainChangeProgressResponse.proto view
+ fixture/DescribeDomainConfig.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/es/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: es.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/DescribeDomainConfigResponse.proto view
+ fixture/DescribeDomainResponse.proto view
+ fixture/DescribeDomains.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/es/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: es.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/DescribeDomainsResponse.proto view
+ fixture/DescribeInboundConnections.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/es/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: es.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/DescribeInboundConnectionsResponse.proto view
+ fixture/DescribeInstanceTypeLimits.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/es/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: es.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/DescribeInstanceTypeLimitsResponse.proto view
+ fixture/DescribeOutboundConnections.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/es/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: es.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/DescribeOutboundConnectionsResponse.proto view
+ fixture/DescribePackages.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/es/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: es.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/DescribePackagesResponse.proto view
+ fixture/DescribeReservedInstanceOfferings.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/es/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: es.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/DescribeReservedInstanceOfferingsResponse.proto view
+ fixture/DescribeReservedInstances.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/es/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: es.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/DescribeReservedInstancesResponse.proto view
+ fixture/DescribeVpcEndpoints.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/es/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: es.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/DescribeVpcEndpointsResponse.proto view
+ fixture/DissociatePackage.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/es/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: es.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/DissociatePackageResponse.proto view
+ fixture/GetCompatibleVersions.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/es/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: es.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/GetCompatibleVersionsResponse.proto view
+ fixture/GetPackageVersionHistory.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/es/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: es.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/GetPackageVersionHistoryResponse.proto view
+ fixture/GetUpgradeHistory.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/es/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: es.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/GetUpgradeHistoryResponse.proto view
+ fixture/GetUpgradeStatus.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/es/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: es.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/GetUpgradeStatusResponse.proto view
+ fixture/ListDomainNames.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/es/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: es.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/ListDomainNamesResponse.proto view
+ fixture/ListDomainsForPackage.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/es/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: es.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/ListDomainsForPackageResponse.proto view
+ fixture/ListInstanceTypeDetails.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/es/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: es.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/ListInstanceTypeDetailsResponse.proto view
+ fixture/ListPackagesForDomain.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/es/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: es.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/ListPackagesForDomainResponse.proto view
+ fixture/ListTags.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/es/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: es.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/ListTagsResponse.proto view
+ fixture/ListVersions.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/es/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: es.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/ListVersionsResponse.proto view
+ fixture/ListVpcEndpointAccess.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/es/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: es.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/ListVpcEndpointAccessResponse.proto view
+ fixture/ListVpcEndpoints.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/es/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: es.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/ListVpcEndpointsForDomain.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/es/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: es.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/ListVpcEndpointsForDomainResponse.proto view
+ fixture/ListVpcEndpointsResponse.proto view
+ fixture/PurchaseReservedInstanceOffering.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/es/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: es.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/PurchaseReservedInstanceOfferingResponse.proto view
+ fixture/RejectInboundConnection.yaml view
@@ -0,0 +1,10 @@+---+method: PUT+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/es/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: es.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/RejectInboundConnectionResponse.proto view
+ fixture/RemoveTags.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/es/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: es.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/RemoveTagsResponse.proto view
+ fixture/RevokeVpcEndpointAccess.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/es/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: es.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/RevokeVpcEndpointAccessResponse.proto view
+ fixture/StartServiceSoftwareUpdate.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/es/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: es.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/StartServiceSoftwareUpdateResponse.proto view
+ fixture/UpdateDomainConfig.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/es/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: es.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/UpdateDomainConfigResponse.proto view
+ fixture/UpdatePackage.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/es/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: es.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/UpdatePackageResponse.proto view
+ fixture/UpdateVpcEndpoint.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/es/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: es.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/UpdateVpcEndpointResponse.proto view
+ fixture/UpgradeDomain.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/es/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: es.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/UpgradeDomainResponse.proto view
+ gen/Amazonka/OpenSearch.hs view
@@ -0,0 +1,856 @@+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Amazonka.OpenSearch+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Derived from API version @2021-01-01@ of the AWS service descriptions, licensed under Apache 2.0.+--+-- Use the Amazon OpenSearch Service configuration API to create,+-- configure, and manage OpenSearch Service domains.+--+-- For sample code that uses the configuration API, see the+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/opensearch-configuration-samples.html Amazon OpenSearch Service Developer Guide>+-- . The guide also contains+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/request-signing.html sample code>+-- for sending signed HTTP requests to the OpenSearch APIs. The endpoint+-- for configuration service requests is Region specific:+-- es./region/.amazonaws.com. For example, es.us-east-1.amazonaws.com. For+-- a current list of supported Regions and endpoints, see+-- <https://docs.aws.amazon.com/general/latest/gr/rande.html#service-regions Amazon Web Services service endpoints>.+module Amazonka.OpenSearch+ ( -- * Service Configuration+ defaultService,++ -- * Errors+ -- $errors++ -- ** AccessDeniedException+ _AccessDeniedException,++ -- ** BaseException+ _BaseException,++ -- ** ConflictException+ _ConflictException,++ -- ** DisabledOperationException+ _DisabledOperationException,++ -- ** InternalException+ _InternalException,++ -- ** InvalidPaginationTokenException+ _InvalidPaginationTokenException,++ -- ** InvalidTypeException+ _InvalidTypeException,++ -- ** LimitExceededException+ _LimitExceededException,++ -- ** ResourceAlreadyExistsException+ _ResourceAlreadyExistsException,++ -- ** ResourceNotFoundException+ _ResourceNotFoundException,++ -- ** ValidationException+ _ValidationException,++ -- * Waiters+ -- $waiters++ -- * Operations+ -- $operations++ -- ** AcceptInboundConnection+ AcceptInboundConnection (AcceptInboundConnection'),+ newAcceptInboundConnection,+ AcceptInboundConnectionResponse (AcceptInboundConnectionResponse'),+ newAcceptInboundConnectionResponse,++ -- ** AddTags+ AddTags (AddTags'),+ newAddTags,+ AddTagsResponse (AddTagsResponse'),+ newAddTagsResponse,++ -- ** AssociatePackage+ AssociatePackage (AssociatePackage'),+ newAssociatePackage,+ AssociatePackageResponse (AssociatePackageResponse'),+ newAssociatePackageResponse,++ -- ** AuthorizeVpcEndpointAccess+ AuthorizeVpcEndpointAccess (AuthorizeVpcEndpointAccess'),+ newAuthorizeVpcEndpointAccess,+ AuthorizeVpcEndpointAccessResponse (AuthorizeVpcEndpointAccessResponse'),+ newAuthorizeVpcEndpointAccessResponse,++ -- ** CancelServiceSoftwareUpdate+ CancelServiceSoftwareUpdate (CancelServiceSoftwareUpdate'),+ newCancelServiceSoftwareUpdate,+ CancelServiceSoftwareUpdateResponse (CancelServiceSoftwareUpdateResponse'),+ newCancelServiceSoftwareUpdateResponse,++ -- ** CreateDomain+ CreateDomain (CreateDomain'),+ newCreateDomain,+ CreateDomainResponse (CreateDomainResponse'),+ newCreateDomainResponse,++ -- ** CreateOutboundConnection+ CreateOutboundConnection (CreateOutboundConnection'),+ newCreateOutboundConnection,+ CreateOutboundConnectionResponse (CreateOutboundConnectionResponse'),+ newCreateOutboundConnectionResponse,++ -- ** CreatePackage+ CreatePackage (CreatePackage'),+ newCreatePackage,+ CreatePackageResponse (CreatePackageResponse'),+ newCreatePackageResponse,++ -- ** CreateVpcEndpoint+ CreateVpcEndpoint (CreateVpcEndpoint'),+ newCreateVpcEndpoint,+ CreateVpcEndpointResponse (CreateVpcEndpointResponse'),+ newCreateVpcEndpointResponse,++ -- ** DeleteDomain+ DeleteDomain (DeleteDomain'),+ newDeleteDomain,+ DeleteDomainResponse (DeleteDomainResponse'),+ newDeleteDomainResponse,++ -- ** DeleteInboundConnection+ DeleteInboundConnection (DeleteInboundConnection'),+ newDeleteInboundConnection,+ DeleteInboundConnectionResponse (DeleteInboundConnectionResponse'),+ newDeleteInboundConnectionResponse,++ -- ** DeleteOutboundConnection+ DeleteOutboundConnection (DeleteOutboundConnection'),+ newDeleteOutboundConnection,+ DeleteOutboundConnectionResponse (DeleteOutboundConnectionResponse'),+ newDeleteOutboundConnectionResponse,++ -- ** DeletePackage+ DeletePackage (DeletePackage'),+ newDeletePackage,+ DeletePackageResponse (DeletePackageResponse'),+ newDeletePackageResponse,++ -- ** DeleteVpcEndpoint+ DeleteVpcEndpoint (DeleteVpcEndpoint'),+ newDeleteVpcEndpoint,+ DeleteVpcEndpointResponse (DeleteVpcEndpointResponse'),+ newDeleteVpcEndpointResponse,++ -- ** DescribeDomain+ DescribeDomain (DescribeDomain'),+ newDescribeDomain,+ DescribeDomainResponse (DescribeDomainResponse'),+ newDescribeDomainResponse,++ -- ** DescribeDomainAutoTunes+ DescribeDomainAutoTunes (DescribeDomainAutoTunes'),+ newDescribeDomainAutoTunes,+ DescribeDomainAutoTunesResponse (DescribeDomainAutoTunesResponse'),+ newDescribeDomainAutoTunesResponse,++ -- ** DescribeDomainChangeProgress+ DescribeDomainChangeProgress (DescribeDomainChangeProgress'),+ newDescribeDomainChangeProgress,+ DescribeDomainChangeProgressResponse (DescribeDomainChangeProgressResponse'),+ newDescribeDomainChangeProgressResponse,++ -- ** DescribeDomainConfig+ DescribeDomainConfig (DescribeDomainConfig'),+ newDescribeDomainConfig,+ DescribeDomainConfigResponse (DescribeDomainConfigResponse'),+ newDescribeDomainConfigResponse,++ -- ** DescribeDomains+ DescribeDomains (DescribeDomains'),+ newDescribeDomains,+ DescribeDomainsResponse (DescribeDomainsResponse'),+ newDescribeDomainsResponse,++ -- ** DescribeInboundConnections+ DescribeInboundConnections (DescribeInboundConnections'),+ newDescribeInboundConnections,+ DescribeInboundConnectionsResponse (DescribeInboundConnectionsResponse'),+ newDescribeInboundConnectionsResponse,++ -- ** DescribeInstanceTypeLimits+ DescribeInstanceTypeLimits (DescribeInstanceTypeLimits'),+ newDescribeInstanceTypeLimits,+ DescribeInstanceTypeLimitsResponse (DescribeInstanceTypeLimitsResponse'),+ newDescribeInstanceTypeLimitsResponse,++ -- ** DescribeOutboundConnections+ DescribeOutboundConnections (DescribeOutboundConnections'),+ newDescribeOutboundConnections,+ DescribeOutboundConnectionsResponse (DescribeOutboundConnectionsResponse'),+ newDescribeOutboundConnectionsResponse,++ -- ** DescribePackages+ DescribePackages (DescribePackages'),+ newDescribePackages,+ DescribePackagesResponse (DescribePackagesResponse'),+ newDescribePackagesResponse,++ -- ** DescribeReservedInstanceOfferings+ DescribeReservedInstanceOfferings (DescribeReservedInstanceOfferings'),+ newDescribeReservedInstanceOfferings,+ DescribeReservedInstanceOfferingsResponse (DescribeReservedInstanceOfferingsResponse'),+ newDescribeReservedInstanceOfferingsResponse,++ -- ** DescribeReservedInstances+ DescribeReservedInstances (DescribeReservedInstances'),+ newDescribeReservedInstances,+ DescribeReservedInstancesResponse (DescribeReservedInstancesResponse'),+ newDescribeReservedInstancesResponse,++ -- ** DescribeVpcEndpoints+ DescribeVpcEndpoints (DescribeVpcEndpoints'),+ newDescribeVpcEndpoints,+ DescribeVpcEndpointsResponse (DescribeVpcEndpointsResponse'),+ newDescribeVpcEndpointsResponse,++ -- ** DissociatePackage+ DissociatePackage (DissociatePackage'),+ newDissociatePackage,+ DissociatePackageResponse (DissociatePackageResponse'),+ newDissociatePackageResponse,++ -- ** GetCompatibleVersions+ GetCompatibleVersions (GetCompatibleVersions'),+ newGetCompatibleVersions,+ GetCompatibleVersionsResponse (GetCompatibleVersionsResponse'),+ newGetCompatibleVersionsResponse,++ -- ** GetPackageVersionHistory+ GetPackageVersionHistory (GetPackageVersionHistory'),+ newGetPackageVersionHistory,+ GetPackageVersionHistoryResponse (GetPackageVersionHistoryResponse'),+ newGetPackageVersionHistoryResponse,++ -- ** GetUpgradeHistory+ GetUpgradeHistory (GetUpgradeHistory'),+ newGetUpgradeHistory,+ GetUpgradeHistoryResponse (GetUpgradeHistoryResponse'),+ newGetUpgradeHistoryResponse,++ -- ** GetUpgradeStatus+ GetUpgradeStatus (GetUpgradeStatus'),+ newGetUpgradeStatus,+ GetUpgradeStatusResponse (GetUpgradeStatusResponse'),+ newGetUpgradeStatusResponse,++ -- ** ListDomainNames+ ListDomainNames (ListDomainNames'),+ newListDomainNames,+ ListDomainNamesResponse (ListDomainNamesResponse'),+ newListDomainNamesResponse,++ -- ** ListDomainsForPackage+ ListDomainsForPackage (ListDomainsForPackage'),+ newListDomainsForPackage,+ ListDomainsForPackageResponse (ListDomainsForPackageResponse'),+ newListDomainsForPackageResponse,++ -- ** ListInstanceTypeDetails+ ListInstanceTypeDetails (ListInstanceTypeDetails'),+ newListInstanceTypeDetails,+ ListInstanceTypeDetailsResponse (ListInstanceTypeDetailsResponse'),+ newListInstanceTypeDetailsResponse,++ -- ** ListPackagesForDomain+ ListPackagesForDomain (ListPackagesForDomain'),+ newListPackagesForDomain,+ ListPackagesForDomainResponse (ListPackagesForDomainResponse'),+ newListPackagesForDomainResponse,++ -- ** ListTags+ ListTags (ListTags'),+ newListTags,+ ListTagsResponse (ListTagsResponse'),+ newListTagsResponse,++ -- ** ListVersions+ ListVersions (ListVersions'),+ newListVersions,+ ListVersionsResponse (ListVersionsResponse'),+ newListVersionsResponse,++ -- ** ListVpcEndpointAccess+ ListVpcEndpointAccess (ListVpcEndpointAccess'),+ newListVpcEndpointAccess,+ ListVpcEndpointAccessResponse (ListVpcEndpointAccessResponse'),+ newListVpcEndpointAccessResponse,++ -- ** ListVpcEndpoints+ ListVpcEndpoints (ListVpcEndpoints'),+ newListVpcEndpoints,+ ListVpcEndpointsResponse (ListVpcEndpointsResponse'),+ newListVpcEndpointsResponse,++ -- ** ListVpcEndpointsForDomain+ ListVpcEndpointsForDomain (ListVpcEndpointsForDomain'),+ newListVpcEndpointsForDomain,+ ListVpcEndpointsForDomainResponse (ListVpcEndpointsForDomainResponse'),+ newListVpcEndpointsForDomainResponse,++ -- ** PurchaseReservedInstanceOffering+ PurchaseReservedInstanceOffering (PurchaseReservedInstanceOffering'),+ newPurchaseReservedInstanceOffering,+ PurchaseReservedInstanceOfferingResponse (PurchaseReservedInstanceOfferingResponse'),+ newPurchaseReservedInstanceOfferingResponse,++ -- ** RejectInboundConnection+ RejectInboundConnection (RejectInboundConnection'),+ newRejectInboundConnection,+ RejectInboundConnectionResponse (RejectInboundConnectionResponse'),+ newRejectInboundConnectionResponse,++ -- ** RemoveTags+ RemoveTags (RemoveTags'),+ newRemoveTags,+ RemoveTagsResponse (RemoveTagsResponse'),+ newRemoveTagsResponse,++ -- ** RevokeVpcEndpointAccess+ RevokeVpcEndpointAccess (RevokeVpcEndpointAccess'),+ newRevokeVpcEndpointAccess,+ RevokeVpcEndpointAccessResponse (RevokeVpcEndpointAccessResponse'),+ newRevokeVpcEndpointAccessResponse,++ -- ** StartServiceSoftwareUpdate+ StartServiceSoftwareUpdate (StartServiceSoftwareUpdate'),+ newStartServiceSoftwareUpdate,+ StartServiceSoftwareUpdateResponse (StartServiceSoftwareUpdateResponse'),+ newStartServiceSoftwareUpdateResponse,++ -- ** UpdateDomainConfig+ UpdateDomainConfig (UpdateDomainConfig'),+ newUpdateDomainConfig,+ UpdateDomainConfigResponse (UpdateDomainConfigResponse'),+ newUpdateDomainConfigResponse,++ -- ** UpdatePackage+ UpdatePackage (UpdatePackage'),+ newUpdatePackage,+ UpdatePackageResponse (UpdatePackageResponse'),+ newUpdatePackageResponse,++ -- ** UpdateVpcEndpoint+ UpdateVpcEndpoint (UpdateVpcEndpoint'),+ newUpdateVpcEndpoint,+ UpdateVpcEndpointResponse (UpdateVpcEndpointResponse'),+ newUpdateVpcEndpointResponse,++ -- ** UpgradeDomain+ UpgradeDomain (UpgradeDomain'),+ newUpgradeDomain,+ UpgradeDomainResponse (UpgradeDomainResponse'),+ newUpgradeDomainResponse,++ -- * Types++ -- ** AutoTuneDesiredState+ AutoTuneDesiredState (..),++ -- ** AutoTuneState+ AutoTuneState (..),++ -- ** AutoTuneType+ AutoTuneType (..),++ -- ** DeploymentStatus+ DeploymentStatus (..),++ -- ** DescribePackagesFilterName+ DescribePackagesFilterName (..),++ -- ** DomainPackageStatus+ DomainPackageStatus (..),++ -- ** EngineType+ EngineType (..),++ -- ** InboundConnectionStatusCode+ InboundConnectionStatusCode (..),++ -- ** LogType+ LogType (..),++ -- ** OpenSearchPartitionInstanceType+ OpenSearchPartitionInstanceType (..),++ -- ** OpenSearchWarmPartitionInstanceType+ OpenSearchWarmPartitionInstanceType (..),++ -- ** OptionState+ OptionState (..),++ -- ** OutboundConnectionStatusCode+ OutboundConnectionStatusCode (..),++ -- ** OverallChangeStatus+ OverallChangeStatus (..),++ -- ** PackageStatus+ PackageStatus (..),++ -- ** PackageType+ PackageType (..),++ -- ** PrincipalType+ PrincipalType (..),++ -- ** ReservedInstancePaymentOption+ ReservedInstancePaymentOption (..),++ -- ** RollbackOnDisable+ RollbackOnDisable (..),++ -- ** ScheduledAutoTuneActionType+ ScheduledAutoTuneActionType (..),++ -- ** ScheduledAutoTuneSeverityType+ ScheduledAutoTuneSeverityType (..),++ -- ** TLSSecurityPolicy+ TLSSecurityPolicy (..),++ -- ** TimeUnit+ TimeUnit (..),++ -- ** UpgradeStatus+ UpgradeStatus (..),++ -- ** UpgradeStep+ UpgradeStep (..),++ -- ** VolumeType+ VolumeType (..),++ -- ** VpcEndpointErrorCode+ VpcEndpointErrorCode (..),++ -- ** VpcEndpointStatus+ VpcEndpointStatus (..),++ -- ** AWSDomainInformation+ AWSDomainInformation (AWSDomainInformation'),+ newAWSDomainInformation,++ -- ** AccessPoliciesStatus+ AccessPoliciesStatus (AccessPoliciesStatus'),+ newAccessPoliciesStatus,++ -- ** AdditionalLimit+ AdditionalLimit (AdditionalLimit'),+ newAdditionalLimit,++ -- ** AdvancedOptionsStatus+ AdvancedOptionsStatus (AdvancedOptionsStatus'),+ newAdvancedOptionsStatus,++ -- ** AdvancedSecurityOptions+ AdvancedSecurityOptions (AdvancedSecurityOptions'),+ newAdvancedSecurityOptions,++ -- ** AdvancedSecurityOptionsInput+ AdvancedSecurityOptionsInput (AdvancedSecurityOptionsInput'),+ newAdvancedSecurityOptionsInput,++ -- ** AdvancedSecurityOptionsStatus+ AdvancedSecurityOptionsStatus (AdvancedSecurityOptionsStatus'),+ newAdvancedSecurityOptionsStatus,++ -- ** AuthorizedPrincipal+ AuthorizedPrincipal (AuthorizedPrincipal'),+ newAuthorizedPrincipal,++ -- ** AutoTune+ AutoTune (AutoTune'),+ newAutoTune,++ -- ** AutoTuneDetails+ AutoTuneDetails (AutoTuneDetails'),+ newAutoTuneDetails,++ -- ** AutoTuneMaintenanceSchedule+ AutoTuneMaintenanceSchedule (AutoTuneMaintenanceSchedule'),+ newAutoTuneMaintenanceSchedule,++ -- ** AutoTuneOptions+ AutoTuneOptions (AutoTuneOptions'),+ newAutoTuneOptions,++ -- ** AutoTuneOptionsInput+ AutoTuneOptionsInput (AutoTuneOptionsInput'),+ newAutoTuneOptionsInput,++ -- ** AutoTuneOptionsOutput+ AutoTuneOptionsOutput (AutoTuneOptionsOutput'),+ newAutoTuneOptionsOutput,++ -- ** AutoTuneOptionsStatus+ AutoTuneOptionsStatus (AutoTuneOptionsStatus'),+ newAutoTuneOptionsStatus,++ -- ** AutoTuneStatus+ AutoTuneStatus (AutoTuneStatus'),+ newAutoTuneStatus,++ -- ** ChangeProgressDetails+ ChangeProgressDetails (ChangeProgressDetails'),+ newChangeProgressDetails,++ -- ** ChangeProgressStage+ ChangeProgressStage (ChangeProgressStage'),+ newChangeProgressStage,++ -- ** ChangeProgressStatusDetails+ ChangeProgressStatusDetails (ChangeProgressStatusDetails'),+ newChangeProgressStatusDetails,++ -- ** ClusterConfig+ ClusterConfig (ClusterConfig'),+ newClusterConfig,++ -- ** ClusterConfigStatus+ ClusterConfigStatus (ClusterConfigStatus'),+ newClusterConfigStatus,++ -- ** CognitoOptions+ CognitoOptions (CognitoOptions'),+ newCognitoOptions,++ -- ** CognitoOptionsStatus+ CognitoOptionsStatus (CognitoOptionsStatus'),+ newCognitoOptionsStatus,++ -- ** ColdStorageOptions+ ColdStorageOptions (ColdStorageOptions'),+ newColdStorageOptions,++ -- ** CompatibleVersionsMap+ CompatibleVersionsMap (CompatibleVersionsMap'),+ newCompatibleVersionsMap,++ -- ** DescribePackagesFilter+ DescribePackagesFilter (DescribePackagesFilter'),+ newDescribePackagesFilter,++ -- ** DomainConfig+ DomainConfig (DomainConfig'),+ newDomainConfig,++ -- ** DomainEndpointOptions+ DomainEndpointOptions (DomainEndpointOptions'),+ newDomainEndpointOptions,++ -- ** DomainEndpointOptionsStatus+ DomainEndpointOptionsStatus (DomainEndpointOptionsStatus'),+ newDomainEndpointOptionsStatus,++ -- ** DomainInfo+ DomainInfo (DomainInfo'),+ newDomainInfo,++ -- ** DomainInformationContainer+ DomainInformationContainer (DomainInformationContainer'),+ newDomainInformationContainer,++ -- ** DomainPackageDetails+ DomainPackageDetails (DomainPackageDetails'),+ newDomainPackageDetails,++ -- ** DomainStatus+ DomainStatus (DomainStatus'),+ newDomainStatus,++ -- ** DryRunResults+ DryRunResults (DryRunResults'),+ newDryRunResults,++ -- ** Duration+ Duration (Duration'),+ newDuration,++ -- ** EBSOptions+ EBSOptions (EBSOptions'),+ newEBSOptions,++ -- ** EBSOptionsStatus+ EBSOptionsStatus (EBSOptionsStatus'),+ newEBSOptionsStatus,++ -- ** EncryptionAtRestOptions+ EncryptionAtRestOptions (EncryptionAtRestOptions'),+ newEncryptionAtRestOptions,++ -- ** EncryptionAtRestOptionsStatus+ EncryptionAtRestOptionsStatus (EncryptionAtRestOptionsStatus'),+ newEncryptionAtRestOptionsStatus,++ -- ** ErrorDetails+ ErrorDetails (ErrorDetails'),+ newErrorDetails,++ -- ** Filter+ Filter (Filter'),+ newFilter,++ -- ** InboundConnection+ InboundConnection (InboundConnection'),+ newInboundConnection,++ -- ** InboundConnectionStatus+ InboundConnectionStatus (InboundConnectionStatus'),+ newInboundConnectionStatus,++ -- ** InstanceCountLimits+ InstanceCountLimits (InstanceCountLimits'),+ newInstanceCountLimits,++ -- ** InstanceLimits+ InstanceLimits (InstanceLimits'),+ newInstanceLimits,++ -- ** InstanceTypeDetails+ InstanceTypeDetails (InstanceTypeDetails'),+ newInstanceTypeDetails,++ -- ** Limits+ Limits (Limits'),+ newLimits,++ -- ** LogPublishingOption+ LogPublishingOption (LogPublishingOption'),+ newLogPublishingOption,++ -- ** LogPublishingOptionsStatus+ LogPublishingOptionsStatus (LogPublishingOptionsStatus'),+ newLogPublishingOptionsStatus,++ -- ** MasterUserOptions+ MasterUserOptions (MasterUserOptions'),+ newMasterUserOptions,++ -- ** NodeToNodeEncryptionOptions+ NodeToNodeEncryptionOptions (NodeToNodeEncryptionOptions'),+ newNodeToNodeEncryptionOptions,++ -- ** NodeToNodeEncryptionOptionsStatus+ NodeToNodeEncryptionOptionsStatus (NodeToNodeEncryptionOptionsStatus'),+ newNodeToNodeEncryptionOptionsStatus,++ -- ** OptionStatus+ OptionStatus (OptionStatus'),+ newOptionStatus,++ -- ** OutboundConnection+ OutboundConnection (OutboundConnection'),+ newOutboundConnection,++ -- ** OutboundConnectionStatus+ OutboundConnectionStatus (OutboundConnectionStatus'),+ newOutboundConnectionStatus,++ -- ** PackageDetails+ PackageDetails (PackageDetails'),+ newPackageDetails,++ -- ** PackageSource+ PackageSource (PackageSource'),+ newPackageSource,++ -- ** PackageVersionHistory+ PackageVersionHistory (PackageVersionHistory'),+ newPackageVersionHistory,++ -- ** RecurringCharge+ RecurringCharge (RecurringCharge'),+ newRecurringCharge,++ -- ** ReservedInstance+ ReservedInstance (ReservedInstance'),+ newReservedInstance,++ -- ** ReservedInstanceOffering+ ReservedInstanceOffering (ReservedInstanceOffering'),+ newReservedInstanceOffering,++ -- ** SAMLIdp+ SAMLIdp (SAMLIdp'),+ newSAMLIdp,++ -- ** SAMLOptionsInput+ SAMLOptionsInput (SAMLOptionsInput'),+ newSAMLOptionsInput,++ -- ** SAMLOptionsOutput+ SAMLOptionsOutput (SAMLOptionsOutput'),+ newSAMLOptionsOutput,++ -- ** ScheduledAutoTuneDetails+ ScheduledAutoTuneDetails (ScheduledAutoTuneDetails'),+ newScheduledAutoTuneDetails,++ -- ** ServiceSoftwareOptions+ ServiceSoftwareOptions (ServiceSoftwareOptions'),+ newServiceSoftwareOptions,++ -- ** SnapshotOptions+ SnapshotOptions (SnapshotOptions'),+ newSnapshotOptions,++ -- ** SnapshotOptionsStatus+ SnapshotOptionsStatus (SnapshotOptionsStatus'),+ newSnapshotOptionsStatus,++ -- ** StorageType+ StorageType (StorageType'),+ newStorageType,++ -- ** StorageTypeLimit+ StorageTypeLimit (StorageTypeLimit'),+ newStorageTypeLimit,++ -- ** Tag+ Tag (Tag'),+ newTag,++ -- ** UpgradeHistory+ UpgradeHistory (UpgradeHistory'),+ newUpgradeHistory,++ -- ** UpgradeStepItem+ UpgradeStepItem (UpgradeStepItem'),+ newUpgradeStepItem,++ -- ** VPCDerivedInfo+ VPCDerivedInfo (VPCDerivedInfo'),+ newVPCDerivedInfo,++ -- ** VPCDerivedInfoStatus+ VPCDerivedInfoStatus (VPCDerivedInfoStatus'),+ newVPCDerivedInfoStatus,++ -- ** VPCOptions+ VPCOptions (VPCOptions'),+ newVPCOptions,++ -- ** VersionStatus+ VersionStatus (VersionStatus'),+ newVersionStatus,++ -- ** VpcEndpoint+ VpcEndpoint (VpcEndpoint'),+ newVpcEndpoint,++ -- ** VpcEndpointError+ VpcEndpointError (VpcEndpointError'),+ newVpcEndpointError,++ -- ** VpcEndpointSummary+ VpcEndpointSummary (VpcEndpointSummary'),+ newVpcEndpointSummary,++ -- ** ZoneAwarenessConfig+ ZoneAwarenessConfig (ZoneAwarenessConfig'),+ newZoneAwarenessConfig,+ )+where++import Amazonka.OpenSearch.AcceptInboundConnection+import Amazonka.OpenSearch.AddTags+import Amazonka.OpenSearch.AssociatePackage+import Amazonka.OpenSearch.AuthorizeVpcEndpointAccess+import Amazonka.OpenSearch.CancelServiceSoftwareUpdate+import Amazonka.OpenSearch.CreateDomain+import Amazonka.OpenSearch.CreateOutboundConnection+import Amazonka.OpenSearch.CreatePackage+import Amazonka.OpenSearch.CreateVpcEndpoint+import Amazonka.OpenSearch.DeleteDomain+import Amazonka.OpenSearch.DeleteInboundConnection+import Amazonka.OpenSearch.DeleteOutboundConnection+import Amazonka.OpenSearch.DeletePackage+import Amazonka.OpenSearch.DeleteVpcEndpoint+import Amazonka.OpenSearch.DescribeDomain+import Amazonka.OpenSearch.DescribeDomainAutoTunes+import Amazonka.OpenSearch.DescribeDomainChangeProgress+import Amazonka.OpenSearch.DescribeDomainConfig+import Amazonka.OpenSearch.DescribeDomains+import Amazonka.OpenSearch.DescribeInboundConnections+import Amazonka.OpenSearch.DescribeInstanceTypeLimits+import Amazonka.OpenSearch.DescribeOutboundConnections+import Amazonka.OpenSearch.DescribePackages+import Amazonka.OpenSearch.DescribeReservedInstanceOfferings+import Amazonka.OpenSearch.DescribeReservedInstances+import Amazonka.OpenSearch.DescribeVpcEndpoints+import Amazonka.OpenSearch.DissociatePackage+import Amazonka.OpenSearch.GetCompatibleVersions+import Amazonka.OpenSearch.GetPackageVersionHistory+import Amazonka.OpenSearch.GetUpgradeHistory+import Amazonka.OpenSearch.GetUpgradeStatus+import Amazonka.OpenSearch.Lens+import Amazonka.OpenSearch.ListDomainNames+import Amazonka.OpenSearch.ListDomainsForPackage+import Amazonka.OpenSearch.ListInstanceTypeDetails+import Amazonka.OpenSearch.ListPackagesForDomain+import Amazonka.OpenSearch.ListTags+import Amazonka.OpenSearch.ListVersions+import Amazonka.OpenSearch.ListVpcEndpointAccess+import Amazonka.OpenSearch.ListVpcEndpoints+import Amazonka.OpenSearch.ListVpcEndpointsForDomain+import Amazonka.OpenSearch.PurchaseReservedInstanceOffering+import Amazonka.OpenSearch.RejectInboundConnection+import Amazonka.OpenSearch.RemoveTags+import Amazonka.OpenSearch.RevokeVpcEndpointAccess+import Amazonka.OpenSearch.StartServiceSoftwareUpdate+import Amazonka.OpenSearch.Types+import Amazonka.OpenSearch.UpdateDomainConfig+import Amazonka.OpenSearch.UpdatePackage+import Amazonka.OpenSearch.UpdateVpcEndpoint+import Amazonka.OpenSearch.UpgradeDomain+import Amazonka.OpenSearch.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 'OpenSearch'.++-- $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/OpenSearch/AcceptInboundConnection.hs view
@@ -0,0 +1,171 @@+{-# 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.OpenSearch.AcceptInboundConnection+-- 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 destination Amazon OpenSearch Service domain owner to accept+-- an inbound cross-cluster search connection request. For more+-- information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/cross-cluster-search.html Cross-cluster search for Amazon OpenSearch Service>.+module Amazonka.OpenSearch.AcceptInboundConnection+ ( -- * Creating a Request+ AcceptInboundConnection (..),+ newAcceptInboundConnection,++ -- * Request Lenses+ acceptInboundConnection_connectionId,++ -- * Destructuring the Response+ AcceptInboundConnectionResponse (..),+ newAcceptInboundConnectionResponse,++ -- * Response Lenses+ acceptInboundConnectionResponse_connection,+ acceptInboundConnectionResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Container for the parameters to the @AcceptInboundConnection@ operation.+--+-- /See:/ 'newAcceptInboundConnection' smart constructor.+data AcceptInboundConnection = AcceptInboundConnection'+ { -- | The ID of the inbound connection to accept.+ connectionId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AcceptInboundConnection' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'connectionId', 'acceptInboundConnection_connectionId' - The ID of the inbound connection to accept.+newAcceptInboundConnection ::+ -- | 'connectionId'+ Prelude.Text ->+ AcceptInboundConnection+newAcceptInboundConnection pConnectionId_ =+ AcceptInboundConnection'+ { connectionId =+ pConnectionId_+ }++-- | The ID of the inbound connection to accept.+acceptInboundConnection_connectionId :: Lens.Lens' AcceptInboundConnection Prelude.Text+acceptInboundConnection_connectionId = Lens.lens (\AcceptInboundConnection' {connectionId} -> connectionId) (\s@AcceptInboundConnection' {} a -> s {connectionId = a} :: AcceptInboundConnection)++instance Core.AWSRequest AcceptInboundConnection where+ type+ AWSResponse AcceptInboundConnection =+ AcceptInboundConnectionResponse+ request overrides =+ Request.putJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ AcceptInboundConnectionResponse'+ Prelude.<$> (x Data..?> "Connection")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable AcceptInboundConnection where+ hashWithSalt _salt AcceptInboundConnection' {..} =+ _salt `Prelude.hashWithSalt` connectionId++instance Prelude.NFData AcceptInboundConnection where+ rnf AcceptInboundConnection' {..} =+ Prelude.rnf connectionId++instance Data.ToHeaders AcceptInboundConnection where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToJSON AcceptInboundConnection where+ toJSON = Prelude.const (Data.Object Prelude.mempty)++instance Data.ToPath AcceptInboundConnection where+ toPath AcceptInboundConnection' {..} =+ Prelude.mconcat+ [ "/2021-01-01/opensearch/cc/inboundConnection/",+ Data.toBS connectionId,+ "/accept"+ ]++instance Data.ToQuery AcceptInboundConnection where+ toQuery = Prelude.const Prelude.mempty++-- | Contains details about the accepted inbound connection.+--+-- /See:/ 'newAcceptInboundConnectionResponse' smart constructor.+data AcceptInboundConnectionResponse = AcceptInboundConnectionResponse'+ { -- | Information about the accepted inbound connection.+ connection :: Prelude.Maybe InboundConnection,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AcceptInboundConnectionResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'connection', 'acceptInboundConnectionResponse_connection' - Information about the accepted inbound connection.+--+-- 'httpStatus', 'acceptInboundConnectionResponse_httpStatus' - The response's http status code.+newAcceptInboundConnectionResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ AcceptInboundConnectionResponse+newAcceptInboundConnectionResponse pHttpStatus_ =+ AcceptInboundConnectionResponse'+ { connection =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Information about the accepted inbound connection.+acceptInboundConnectionResponse_connection :: Lens.Lens' AcceptInboundConnectionResponse (Prelude.Maybe InboundConnection)+acceptInboundConnectionResponse_connection = Lens.lens (\AcceptInboundConnectionResponse' {connection} -> connection) (\s@AcceptInboundConnectionResponse' {} a -> s {connection = a} :: AcceptInboundConnectionResponse)++-- | The response's http status code.+acceptInboundConnectionResponse_httpStatus :: Lens.Lens' AcceptInboundConnectionResponse Prelude.Int+acceptInboundConnectionResponse_httpStatus = Lens.lens (\AcceptInboundConnectionResponse' {httpStatus} -> httpStatus) (\s@AcceptInboundConnectionResponse' {} a -> s {httpStatus = a} :: AcceptInboundConnectionResponse)++instance+ Prelude.NFData+ AcceptInboundConnectionResponse+ where+ rnf AcceptInboundConnectionResponse' {..} =+ Prelude.rnf connection+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/OpenSearch/AddTags.hs view
@@ -0,0 +1,140 @@+{-# 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.OpenSearch.AddTags+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Attaches tags to an existing Amazon OpenSearch Service domain. Tags are+-- a set of case-sensitive key-value pairs. An domain can have up to 10+-- tags. For more information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/managedomains.html#managedomains-awsresorcetagging Tagging Amazon OpenSearch Service domains>.+module Amazonka.OpenSearch.AddTags+ ( -- * Creating a Request+ AddTags (..),+ newAddTags,++ -- * Request Lenses+ addTags_arn,+ addTags_tagList,++ -- * Destructuring the Response+ AddTagsResponse (..),+ newAddTagsResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Container for the parameters to the @AddTags@ operation. Specifies the+-- tags to attach to the domain.+--+-- /See:/ 'newAddTags' smart constructor.+data AddTags = AddTags'+ { -- | Amazon Resource Name (ARN) for the OpenSearch Service domain to which+ -- you want to attach resource tags.+ arn :: Prelude.Text,+ -- | List of resource tags.+ tagList :: [Tag]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AddTags' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'addTags_arn' - Amazon Resource Name (ARN) for the OpenSearch Service domain to which+-- you want to attach resource tags.+--+-- 'tagList', 'addTags_tagList' - List of resource tags.+newAddTags ::+ -- | 'arn'+ Prelude.Text ->+ AddTags+newAddTags pARN_ =+ AddTags' {arn = pARN_, tagList = Prelude.mempty}++-- | Amazon Resource Name (ARN) for the OpenSearch Service domain to which+-- you want to attach resource tags.+addTags_arn :: Lens.Lens' AddTags Prelude.Text+addTags_arn = Lens.lens (\AddTags' {arn} -> arn) (\s@AddTags' {} a -> s {arn = a} :: AddTags)++-- | List of resource tags.+addTags_tagList :: Lens.Lens' AddTags [Tag]+addTags_tagList = Lens.lens (\AddTags' {tagList} -> tagList) (\s@AddTags' {} a -> s {tagList = a} :: AddTags) Prelude.. Lens.coerced++instance Core.AWSRequest AddTags where+ type AWSResponse AddTags = AddTagsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response = Response.receiveNull AddTagsResponse'++instance Prelude.Hashable AddTags where+ hashWithSalt _salt AddTags' {..} =+ _salt+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` tagList++instance Prelude.NFData AddTags where+ rnf AddTags' {..} =+ Prelude.rnf arn `Prelude.seq` Prelude.rnf tagList++instance Data.ToHeaders AddTags where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToJSON AddTags where+ toJSON AddTags' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("ARN" Data..= arn),+ Prelude.Just ("TagList" Data..= tagList)+ ]+ )++instance Data.ToPath AddTags where+ toPath = Prelude.const "/2021-01-01/tags"++instance Data.ToQuery AddTags where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newAddTagsResponse' smart constructor.+data AddTagsResponse = AddTagsResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AddTagsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newAddTagsResponse ::+ AddTagsResponse+newAddTagsResponse = AddTagsResponse'++instance Prelude.NFData AddTagsResponse where+ rnf _ = ()
+ gen/Amazonka/OpenSearch/AssociatePackage.hs view
@@ -0,0 +1,186 @@+{-# 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.OpenSearch.AssociatePackage+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Associates a package with an Amazon OpenSearch Service domain. For more+-- information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/custom-packages.html Custom packages for Amazon OpenSearch Service>.+module Amazonka.OpenSearch.AssociatePackage+ ( -- * Creating a Request+ AssociatePackage (..),+ newAssociatePackage,++ -- * Request Lenses+ associatePackage_packageID,+ associatePackage_domainName,++ -- * Destructuring the Response+ AssociatePackageResponse (..),+ newAssociatePackageResponse,++ -- * Response Lenses+ associatePackageResponse_domainPackageDetails,+ associatePackageResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Container for the request parameters to the @AssociatePackage@+-- operation.+--+-- /See:/ 'newAssociatePackage' smart constructor.+data AssociatePackage = AssociatePackage'+ { -- | Internal ID of the package to associate with a domain. Use+ -- @DescribePackages@ to find this value.+ packageID :: Prelude.Text,+ -- | Name of the domain to associate the package with.+ domainName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AssociatePackage' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'packageID', 'associatePackage_packageID' - Internal ID of the package to associate with a domain. Use+-- @DescribePackages@ to find this value.+--+-- 'domainName', 'associatePackage_domainName' - Name of the domain to associate the package with.+newAssociatePackage ::+ -- | 'packageID'+ Prelude.Text ->+ -- | 'domainName'+ Prelude.Text ->+ AssociatePackage+newAssociatePackage pPackageID_ pDomainName_ =+ AssociatePackage'+ { packageID = pPackageID_,+ domainName = pDomainName_+ }++-- | Internal ID of the package to associate with a domain. Use+-- @DescribePackages@ to find this value.+associatePackage_packageID :: Lens.Lens' AssociatePackage Prelude.Text+associatePackage_packageID = Lens.lens (\AssociatePackage' {packageID} -> packageID) (\s@AssociatePackage' {} a -> s {packageID = a} :: AssociatePackage)++-- | Name of the domain to associate the package with.+associatePackage_domainName :: Lens.Lens' AssociatePackage Prelude.Text+associatePackage_domainName = Lens.lens (\AssociatePackage' {domainName} -> domainName) (\s@AssociatePackage' {} a -> s {domainName = a} :: AssociatePackage)++instance Core.AWSRequest AssociatePackage where+ type+ AWSResponse AssociatePackage =+ AssociatePackageResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ AssociatePackageResponse'+ Prelude.<$> (x Data..?> "DomainPackageDetails")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable AssociatePackage where+ hashWithSalt _salt AssociatePackage' {..} =+ _salt+ `Prelude.hashWithSalt` packageID+ `Prelude.hashWithSalt` domainName++instance Prelude.NFData AssociatePackage where+ rnf AssociatePackage' {..} =+ Prelude.rnf packageID+ `Prelude.seq` Prelude.rnf domainName++instance Data.ToHeaders AssociatePackage where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToJSON AssociatePackage where+ toJSON = Prelude.const (Data.Object Prelude.mempty)++instance Data.ToPath AssociatePackage where+ toPath AssociatePackage' {..} =+ Prelude.mconcat+ [ "/2021-01-01/packages/associate/",+ Data.toBS packageID,+ "/",+ Data.toBS domainName+ ]++instance Data.ToQuery AssociatePackage where+ toQuery = Prelude.const Prelude.mempty++-- | Container for the response returned by the @AssociatePackage@ operation.+--+-- /See:/ 'newAssociatePackageResponse' smart constructor.+data AssociatePackageResponse = AssociatePackageResponse'+ { -- | Information about a package that is associated with a domain.+ domainPackageDetails :: Prelude.Maybe DomainPackageDetails,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AssociatePackageResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domainPackageDetails', 'associatePackageResponse_domainPackageDetails' - Information about a package that is associated with a domain.+--+-- 'httpStatus', 'associatePackageResponse_httpStatus' - The response's http status code.+newAssociatePackageResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ AssociatePackageResponse+newAssociatePackageResponse pHttpStatus_ =+ AssociatePackageResponse'+ { domainPackageDetails =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Information about a package that is associated with a domain.+associatePackageResponse_domainPackageDetails :: Lens.Lens' AssociatePackageResponse (Prelude.Maybe DomainPackageDetails)+associatePackageResponse_domainPackageDetails = Lens.lens (\AssociatePackageResponse' {domainPackageDetails} -> domainPackageDetails) (\s@AssociatePackageResponse' {} a -> s {domainPackageDetails = a} :: AssociatePackageResponse)++-- | The response's http status code.+associatePackageResponse_httpStatus :: Lens.Lens' AssociatePackageResponse Prelude.Int+associatePackageResponse_httpStatus = Lens.lens (\AssociatePackageResponse' {httpStatus} -> httpStatus) (\s@AssociatePackageResponse' {} a -> s {httpStatus = a} :: AssociatePackageResponse)++instance Prelude.NFData AssociatePackageResponse where+ rnf AssociatePackageResponse' {..} =+ Prelude.rnf domainPackageDetails+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/OpenSearch/AuthorizeVpcEndpointAccess.hs view
@@ -0,0 +1,192 @@+{-# 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.OpenSearch.AuthorizeVpcEndpointAccess+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Provides access to an Amazon OpenSearch Service domain through the use+-- of an interface VPC endpoint.+module Amazonka.OpenSearch.AuthorizeVpcEndpointAccess+ ( -- * Creating a Request+ AuthorizeVpcEndpointAccess (..),+ newAuthorizeVpcEndpointAccess,++ -- * Request Lenses+ authorizeVpcEndpointAccess_domainName,+ authorizeVpcEndpointAccess_account,++ -- * Destructuring the Response+ AuthorizeVpcEndpointAccessResponse (..),+ newAuthorizeVpcEndpointAccessResponse,++ -- * Response Lenses+ authorizeVpcEndpointAccessResponse_httpStatus,+ authorizeVpcEndpointAccessResponse_authorizedPrincipal,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newAuthorizeVpcEndpointAccess' smart constructor.+data AuthorizeVpcEndpointAccess = AuthorizeVpcEndpointAccess'+ { -- | The name of the OpenSearch Service domain to provide access to.+ domainName :: Prelude.Text,+ -- | The Amazon Web Services account ID to grant access to.+ account :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AuthorizeVpcEndpointAccess' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domainName', 'authorizeVpcEndpointAccess_domainName' - The name of the OpenSearch Service domain to provide access to.+--+-- 'account', 'authorizeVpcEndpointAccess_account' - The Amazon Web Services account ID to grant access to.+newAuthorizeVpcEndpointAccess ::+ -- | 'domainName'+ Prelude.Text ->+ -- | 'account'+ Prelude.Text ->+ AuthorizeVpcEndpointAccess+newAuthorizeVpcEndpointAccess pDomainName_ pAccount_ =+ AuthorizeVpcEndpointAccess'+ { domainName =+ pDomainName_,+ account = pAccount_+ }++-- | The name of the OpenSearch Service domain to provide access to.+authorizeVpcEndpointAccess_domainName :: Lens.Lens' AuthorizeVpcEndpointAccess Prelude.Text+authorizeVpcEndpointAccess_domainName = Lens.lens (\AuthorizeVpcEndpointAccess' {domainName} -> domainName) (\s@AuthorizeVpcEndpointAccess' {} a -> s {domainName = a} :: AuthorizeVpcEndpointAccess)++-- | The Amazon Web Services account ID to grant access to.+authorizeVpcEndpointAccess_account :: Lens.Lens' AuthorizeVpcEndpointAccess Prelude.Text+authorizeVpcEndpointAccess_account = Lens.lens (\AuthorizeVpcEndpointAccess' {account} -> account) (\s@AuthorizeVpcEndpointAccess' {} a -> s {account = a} :: AuthorizeVpcEndpointAccess)++instance Core.AWSRequest AuthorizeVpcEndpointAccess where+ type+ AWSResponse AuthorizeVpcEndpointAccess =+ AuthorizeVpcEndpointAccessResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ AuthorizeVpcEndpointAccessResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..:> "AuthorizedPrincipal")+ )++instance Prelude.Hashable AuthorizeVpcEndpointAccess where+ hashWithSalt _salt AuthorizeVpcEndpointAccess' {..} =+ _salt+ `Prelude.hashWithSalt` domainName+ `Prelude.hashWithSalt` account++instance Prelude.NFData AuthorizeVpcEndpointAccess where+ rnf AuthorizeVpcEndpointAccess' {..} =+ Prelude.rnf domainName+ `Prelude.seq` Prelude.rnf account++instance Data.ToHeaders AuthorizeVpcEndpointAccess where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToJSON AuthorizeVpcEndpointAccess where+ toJSON AuthorizeVpcEndpointAccess' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("Account" Data..= account)]+ )++instance Data.ToPath AuthorizeVpcEndpointAccess where+ toPath AuthorizeVpcEndpointAccess' {..} =+ Prelude.mconcat+ [ "/2021-01-01/opensearch/domain/",+ Data.toBS domainName,+ "/authorizeVpcEndpointAccess"+ ]++instance Data.ToQuery AuthorizeVpcEndpointAccess where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newAuthorizeVpcEndpointAccessResponse' smart constructor.+data AuthorizeVpcEndpointAccessResponse = AuthorizeVpcEndpointAccessResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | Information about the Amazon Web Services account or service that was+ -- provided access to the domain.+ authorizedPrincipal :: AuthorizedPrincipal+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AuthorizeVpcEndpointAccessResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'authorizeVpcEndpointAccessResponse_httpStatus' - The response's http status code.+--+-- 'authorizedPrincipal', 'authorizeVpcEndpointAccessResponse_authorizedPrincipal' - Information about the Amazon Web Services account or service that was+-- provided access to the domain.+newAuthorizeVpcEndpointAccessResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'authorizedPrincipal'+ AuthorizedPrincipal ->+ AuthorizeVpcEndpointAccessResponse+newAuthorizeVpcEndpointAccessResponse+ pHttpStatus_+ pAuthorizedPrincipal_ =+ AuthorizeVpcEndpointAccessResponse'+ { httpStatus =+ pHttpStatus_,+ authorizedPrincipal =+ pAuthorizedPrincipal_+ }++-- | The response's http status code.+authorizeVpcEndpointAccessResponse_httpStatus :: Lens.Lens' AuthorizeVpcEndpointAccessResponse Prelude.Int+authorizeVpcEndpointAccessResponse_httpStatus = Lens.lens (\AuthorizeVpcEndpointAccessResponse' {httpStatus} -> httpStatus) (\s@AuthorizeVpcEndpointAccessResponse' {} a -> s {httpStatus = a} :: AuthorizeVpcEndpointAccessResponse)++-- | Information about the Amazon Web Services account or service that was+-- provided access to the domain.+authorizeVpcEndpointAccessResponse_authorizedPrincipal :: Lens.Lens' AuthorizeVpcEndpointAccessResponse AuthorizedPrincipal+authorizeVpcEndpointAccessResponse_authorizedPrincipal = Lens.lens (\AuthorizeVpcEndpointAccessResponse' {authorizedPrincipal} -> authorizedPrincipal) (\s@AuthorizeVpcEndpointAccessResponse' {} a -> s {authorizedPrincipal = a} :: AuthorizeVpcEndpointAccessResponse)++instance+ Prelude.NFData+ AuthorizeVpcEndpointAccessResponse+ where+ rnf AuthorizeVpcEndpointAccessResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf authorizedPrincipal
+ gen/Amazonka/OpenSearch/CancelServiceSoftwareUpdate.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.OpenSearch.CancelServiceSoftwareUpdate+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Cancels a scheduled service software update for an Amazon OpenSearch+-- Service domain. You can only perform this operation before the+-- @AutomatedUpdateDate@ and when the domain\'s @UpdateStatus@ is+-- @PENDING_UPDATE@. For more information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/service-software.html Service software updates in Amazon OpenSearch Service>.+module Amazonka.OpenSearch.CancelServiceSoftwareUpdate+ ( -- * Creating a Request+ CancelServiceSoftwareUpdate (..),+ newCancelServiceSoftwareUpdate,++ -- * Request Lenses+ cancelServiceSoftwareUpdate_domainName,++ -- * Destructuring the Response+ CancelServiceSoftwareUpdateResponse (..),+ newCancelServiceSoftwareUpdateResponse,++ -- * Response Lenses+ cancelServiceSoftwareUpdateResponse_serviceSoftwareOptions,+ cancelServiceSoftwareUpdateResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Container for the request parameters to cancel a service software+-- update.+--+-- /See:/ 'newCancelServiceSoftwareUpdate' smart constructor.+data CancelServiceSoftwareUpdate = CancelServiceSoftwareUpdate'+ { -- | Name of the OpenSearch Service domain that you want to cancel the+ -- service software update on.+ domainName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CancelServiceSoftwareUpdate' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domainName', 'cancelServiceSoftwareUpdate_domainName' - Name of the OpenSearch Service domain that you want to cancel the+-- service software update on.+newCancelServiceSoftwareUpdate ::+ -- | 'domainName'+ Prelude.Text ->+ CancelServiceSoftwareUpdate+newCancelServiceSoftwareUpdate pDomainName_ =+ CancelServiceSoftwareUpdate'+ { domainName =+ pDomainName_+ }++-- | Name of the OpenSearch Service domain that you want to cancel the+-- service software update on.+cancelServiceSoftwareUpdate_domainName :: Lens.Lens' CancelServiceSoftwareUpdate Prelude.Text+cancelServiceSoftwareUpdate_domainName = Lens.lens (\CancelServiceSoftwareUpdate' {domainName} -> domainName) (\s@CancelServiceSoftwareUpdate' {} a -> s {domainName = a} :: CancelServiceSoftwareUpdate)++instance Core.AWSRequest CancelServiceSoftwareUpdate where+ type+ AWSResponse CancelServiceSoftwareUpdate =+ CancelServiceSoftwareUpdateResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CancelServiceSoftwareUpdateResponse'+ Prelude.<$> (x Data..?> "ServiceSoftwareOptions")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CancelServiceSoftwareUpdate where+ hashWithSalt _salt CancelServiceSoftwareUpdate' {..} =+ _salt `Prelude.hashWithSalt` domainName++instance Prelude.NFData CancelServiceSoftwareUpdate where+ rnf CancelServiceSoftwareUpdate' {..} =+ Prelude.rnf domainName++instance Data.ToHeaders CancelServiceSoftwareUpdate where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToJSON CancelServiceSoftwareUpdate where+ toJSON CancelServiceSoftwareUpdate' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("DomainName" Data..= domainName)]+ )++instance Data.ToPath CancelServiceSoftwareUpdate where+ toPath =+ Prelude.const+ "/2021-01-01/opensearch/serviceSoftwareUpdate/cancel"++instance Data.ToQuery CancelServiceSoftwareUpdate where+ toQuery = Prelude.const Prelude.mempty++-- | Container for the response to a @CancelServiceSoftwareUpdate@ operation.+-- Contains the status of the update.+--+-- /See:/ 'newCancelServiceSoftwareUpdateResponse' smart constructor.+data CancelServiceSoftwareUpdateResponse = CancelServiceSoftwareUpdateResponse'+ { -- | Container for the state of your domain relative to the latest service+ -- software.+ serviceSoftwareOptions :: Prelude.Maybe ServiceSoftwareOptions,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CancelServiceSoftwareUpdateResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'serviceSoftwareOptions', 'cancelServiceSoftwareUpdateResponse_serviceSoftwareOptions' - Container for the state of your domain relative to the latest service+-- software.+--+-- 'httpStatus', 'cancelServiceSoftwareUpdateResponse_httpStatus' - The response's http status code.+newCancelServiceSoftwareUpdateResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CancelServiceSoftwareUpdateResponse+newCancelServiceSoftwareUpdateResponse pHttpStatus_ =+ CancelServiceSoftwareUpdateResponse'+ { serviceSoftwareOptions =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Container for the state of your domain relative to the latest service+-- software.+cancelServiceSoftwareUpdateResponse_serviceSoftwareOptions :: Lens.Lens' CancelServiceSoftwareUpdateResponse (Prelude.Maybe ServiceSoftwareOptions)+cancelServiceSoftwareUpdateResponse_serviceSoftwareOptions = Lens.lens (\CancelServiceSoftwareUpdateResponse' {serviceSoftwareOptions} -> serviceSoftwareOptions) (\s@CancelServiceSoftwareUpdateResponse' {} a -> s {serviceSoftwareOptions = a} :: CancelServiceSoftwareUpdateResponse)++-- | The response's http status code.+cancelServiceSoftwareUpdateResponse_httpStatus :: Lens.Lens' CancelServiceSoftwareUpdateResponse Prelude.Int+cancelServiceSoftwareUpdateResponse_httpStatus = Lens.lens (\CancelServiceSoftwareUpdateResponse' {httpStatus} -> httpStatus) (\s@CancelServiceSoftwareUpdateResponse' {} a -> s {httpStatus = a} :: CancelServiceSoftwareUpdateResponse)++instance+ Prelude.NFData+ CancelServiceSoftwareUpdateResponse+ where+ rnf CancelServiceSoftwareUpdateResponse' {..} =+ Prelude.rnf serviceSoftwareOptions+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/OpenSearch/CreateDomain.hs view
@@ -0,0 +1,492 @@+{-# 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.OpenSearch.CreateDomain+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates an Amazon OpenSearch Service domain. For more information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/createupdatedomains.html Creating and managing Amazon OpenSearch Service domains>.+module Amazonka.OpenSearch.CreateDomain+ ( -- * Creating a Request+ CreateDomain (..),+ newCreateDomain,++ -- * Request Lenses+ createDomain_accessPolicies,+ createDomain_advancedOptions,+ createDomain_advancedSecurityOptions,+ createDomain_autoTuneOptions,+ createDomain_clusterConfig,+ createDomain_cognitoOptions,+ createDomain_domainEndpointOptions,+ createDomain_eBSOptions,+ createDomain_encryptionAtRestOptions,+ createDomain_engineVersion,+ createDomain_logPublishingOptions,+ createDomain_nodeToNodeEncryptionOptions,+ createDomain_snapshotOptions,+ createDomain_tagList,+ createDomain_vPCOptions,+ createDomain_domainName,++ -- * Destructuring the Response+ CreateDomainResponse (..),+ newCreateDomainResponse,++ -- * Response Lenses+ createDomainResponse_domainStatus,+ createDomainResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateDomain' smart constructor.+data CreateDomain = CreateDomain'+ { -- | Identity and Access Management (IAM) policy document specifying the+ -- access policies for the new domain.+ accessPolicies :: Prelude.Maybe Prelude.Text,+ -- | Key-value pairs to specify advanced configuration options. The following+ -- key-value pairs are supported:+ --+ -- - @\"rest.action.multi.allow_explicit_index\": \"true\" | \"false\"@ -+ -- Note the use of a string rather than a boolean. Specifies whether+ -- explicit references to indexes are allowed inside the body of HTTP+ -- requests. If you want to configure access policies for domain+ -- sub-resources, such as specific indexes and domain APIs, you must+ -- disable this property. Default is true.+ --+ -- - @\"indices.fielddata.cache.size\": \"80\" @ - Note the use of a+ -- string rather than a boolean. Specifies the percentage of heap space+ -- allocated to field data. Default is unbounded.+ --+ -- - @\"indices.query.bool.max_clause_count\": \"1024\"@ - Note the use+ -- of a string rather than a boolean. Specifies the maximum number of+ -- clauses allowed in a Lucene boolean query. Default is 1,024. Queries+ -- with more than the permitted number of clauses result in a+ -- @TooManyClauses@ error.+ --+ -- - @\"override_main_response_version\": \"true\" | \"false\"@ - Note+ -- the use of a string rather than a boolean. Specifies whether the+ -- domain reports its version as 7.10 to allow Elasticsearch OSS+ -- clients and plugins to continue working with it. Default is false+ -- when creating a domain and true when upgrading a domain.+ --+ -- For more information, see+ -- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/createupdatedomains.html#createdomain-configure-advanced-options Advanced cluster parameters>.+ advancedOptions :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | Options for fine-grained access control.+ advancedSecurityOptions :: Prelude.Maybe AdvancedSecurityOptionsInput,+ -- | Options for Auto-Tune.+ autoTuneOptions :: Prelude.Maybe AutoTuneOptionsInput,+ -- | Container for the cluster configuration of a domain.+ clusterConfig :: Prelude.Maybe ClusterConfig,+ -- | Key-value pairs to configure Amazon Cognito authentication. For more+ -- information, see+ -- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/cognito-auth.html Configuring Amazon Cognito authentication for OpenSearch Dashboards>.+ cognitoOptions :: Prelude.Maybe CognitoOptions,+ -- | Additional options for the domain endpoint, such as whether to require+ -- HTTPS for all traffic.+ domainEndpointOptions :: Prelude.Maybe DomainEndpointOptions,+ -- | Container for the parameters required to enable EBS-based storage for an+ -- OpenSearch Service domain.+ eBSOptions :: Prelude.Maybe EBSOptions,+ -- | Key-value pairs to enable encryption at rest.+ encryptionAtRestOptions :: Prelude.Maybe EncryptionAtRestOptions,+ -- | String of format Elasticsearch_X.Y or OpenSearch_X.Y to specify the+ -- engine version for the OpenSearch Service domain. For example,+ -- @OpenSearch_1.0@ or @Elasticsearch_7.9@. For more information, see+ -- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/createupdatedomains.html#createdomains Creating and managing Amazon OpenSearch Service domains>.+ engineVersion :: Prelude.Maybe Prelude.Text,+ -- | Key-value pairs to configure slow log publishing.+ logPublishingOptions :: Prelude.Maybe (Prelude.HashMap LogType LogPublishingOption),+ -- | Enables node-to-node encryption.+ nodeToNodeEncryptionOptions :: Prelude.Maybe NodeToNodeEncryptionOptions,+ -- | DEPRECATED. Container for the parameters required to configure automated+ -- snapshots of domain indexes.+ snapshotOptions :: Prelude.Maybe SnapshotOptions,+ -- | List of tags to add to the domain upon creation.+ tagList :: Prelude.Maybe [Tag],+ -- | Container for the values required to configure VPC access domains. If+ -- you don\'t specify these values, OpenSearch Service creates the domain+ -- with a public endpoint. For more information, see+ -- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/vpc.html Launching your Amazon OpenSearch Service domains using a VPC>.+ vPCOptions :: Prelude.Maybe VPCOptions,+ -- | Name of the OpenSearch Service domain to create. Domain names are unique+ -- across the domains owned by an account within an Amazon Web Services+ -- Region.+ domainName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateDomain' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'accessPolicies', 'createDomain_accessPolicies' - Identity and Access Management (IAM) policy document specifying the+-- access policies for the new domain.+--+-- 'advancedOptions', 'createDomain_advancedOptions' - Key-value pairs to specify advanced configuration options. The following+-- key-value pairs are supported:+--+-- - @\"rest.action.multi.allow_explicit_index\": \"true\" | \"false\"@ -+-- Note the use of a string rather than a boolean. Specifies whether+-- explicit references to indexes are allowed inside the body of HTTP+-- requests. If you want to configure access policies for domain+-- sub-resources, such as specific indexes and domain APIs, you must+-- disable this property. Default is true.+--+-- - @\"indices.fielddata.cache.size\": \"80\" @ - Note the use of a+-- string rather than a boolean. Specifies the percentage of heap space+-- allocated to field data. Default is unbounded.+--+-- - @\"indices.query.bool.max_clause_count\": \"1024\"@ - Note the use+-- of a string rather than a boolean. Specifies the maximum number of+-- clauses allowed in a Lucene boolean query. Default is 1,024. Queries+-- with more than the permitted number of clauses result in a+-- @TooManyClauses@ error.+--+-- - @\"override_main_response_version\": \"true\" | \"false\"@ - Note+-- the use of a string rather than a boolean. Specifies whether the+-- domain reports its version as 7.10 to allow Elasticsearch OSS+-- clients and plugins to continue working with it. Default is false+-- when creating a domain and true when upgrading a domain.+--+-- For more information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/createupdatedomains.html#createdomain-configure-advanced-options Advanced cluster parameters>.+--+-- 'advancedSecurityOptions', 'createDomain_advancedSecurityOptions' - Options for fine-grained access control.+--+-- 'autoTuneOptions', 'createDomain_autoTuneOptions' - Options for Auto-Tune.+--+-- 'clusterConfig', 'createDomain_clusterConfig' - Container for the cluster configuration of a domain.+--+-- 'cognitoOptions', 'createDomain_cognitoOptions' - Key-value pairs to configure Amazon Cognito authentication. For more+-- information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/cognito-auth.html Configuring Amazon Cognito authentication for OpenSearch Dashboards>.+--+-- 'domainEndpointOptions', 'createDomain_domainEndpointOptions' - Additional options for the domain endpoint, such as whether to require+-- HTTPS for all traffic.+--+-- 'eBSOptions', 'createDomain_eBSOptions' - Container for the parameters required to enable EBS-based storage for an+-- OpenSearch Service domain.+--+-- 'encryptionAtRestOptions', 'createDomain_encryptionAtRestOptions' - Key-value pairs to enable encryption at rest.+--+-- 'engineVersion', 'createDomain_engineVersion' - String of format Elasticsearch_X.Y or OpenSearch_X.Y to specify the+-- engine version for the OpenSearch Service domain. For example,+-- @OpenSearch_1.0@ or @Elasticsearch_7.9@. For more information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/createupdatedomains.html#createdomains Creating and managing Amazon OpenSearch Service domains>.+--+-- 'logPublishingOptions', 'createDomain_logPublishingOptions' - Key-value pairs to configure slow log publishing.+--+-- 'nodeToNodeEncryptionOptions', 'createDomain_nodeToNodeEncryptionOptions' - Enables node-to-node encryption.+--+-- 'snapshotOptions', 'createDomain_snapshotOptions' - DEPRECATED. Container for the parameters required to configure automated+-- snapshots of domain indexes.+--+-- 'tagList', 'createDomain_tagList' - List of tags to add to the domain upon creation.+--+-- 'vPCOptions', 'createDomain_vPCOptions' - Container for the values required to configure VPC access domains. If+-- you don\'t specify these values, OpenSearch Service creates the domain+-- with a public endpoint. For more information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/vpc.html Launching your Amazon OpenSearch Service domains using a VPC>.+--+-- 'domainName', 'createDomain_domainName' - Name of the OpenSearch Service domain to create. Domain names are unique+-- across the domains owned by an account within an Amazon Web Services+-- Region.+newCreateDomain ::+ -- | 'domainName'+ Prelude.Text ->+ CreateDomain+newCreateDomain pDomainName_ =+ CreateDomain'+ { accessPolicies = Prelude.Nothing,+ advancedOptions = Prelude.Nothing,+ advancedSecurityOptions = Prelude.Nothing,+ autoTuneOptions = Prelude.Nothing,+ clusterConfig = Prelude.Nothing,+ cognitoOptions = Prelude.Nothing,+ domainEndpointOptions = Prelude.Nothing,+ eBSOptions = Prelude.Nothing,+ encryptionAtRestOptions = Prelude.Nothing,+ engineVersion = Prelude.Nothing,+ logPublishingOptions = Prelude.Nothing,+ nodeToNodeEncryptionOptions = Prelude.Nothing,+ snapshotOptions = Prelude.Nothing,+ tagList = Prelude.Nothing,+ vPCOptions = Prelude.Nothing,+ domainName = pDomainName_+ }++-- | Identity and Access Management (IAM) policy document specifying the+-- access policies for the new domain.+createDomain_accessPolicies :: Lens.Lens' CreateDomain (Prelude.Maybe Prelude.Text)+createDomain_accessPolicies = Lens.lens (\CreateDomain' {accessPolicies} -> accessPolicies) (\s@CreateDomain' {} a -> s {accessPolicies = a} :: CreateDomain)++-- | Key-value pairs to specify advanced configuration options. The following+-- key-value pairs are supported:+--+-- - @\"rest.action.multi.allow_explicit_index\": \"true\" | \"false\"@ -+-- Note the use of a string rather than a boolean. Specifies whether+-- explicit references to indexes are allowed inside the body of HTTP+-- requests. If you want to configure access policies for domain+-- sub-resources, such as specific indexes and domain APIs, you must+-- disable this property. Default is true.+--+-- - @\"indices.fielddata.cache.size\": \"80\" @ - Note the use of a+-- string rather than a boolean. Specifies the percentage of heap space+-- allocated to field data. Default is unbounded.+--+-- - @\"indices.query.bool.max_clause_count\": \"1024\"@ - Note the use+-- of a string rather than a boolean. Specifies the maximum number of+-- clauses allowed in a Lucene boolean query. Default is 1,024. Queries+-- with more than the permitted number of clauses result in a+-- @TooManyClauses@ error.+--+-- - @\"override_main_response_version\": \"true\" | \"false\"@ - Note+-- the use of a string rather than a boolean. Specifies whether the+-- domain reports its version as 7.10 to allow Elasticsearch OSS+-- clients and plugins to continue working with it. Default is false+-- when creating a domain and true when upgrading a domain.+--+-- For more information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/createupdatedomains.html#createdomain-configure-advanced-options Advanced cluster parameters>.+createDomain_advancedOptions :: Lens.Lens' CreateDomain (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createDomain_advancedOptions = Lens.lens (\CreateDomain' {advancedOptions} -> advancedOptions) (\s@CreateDomain' {} a -> s {advancedOptions = a} :: CreateDomain) Prelude.. Lens.mapping Lens.coerced++-- | Options for fine-grained access control.+createDomain_advancedSecurityOptions :: Lens.Lens' CreateDomain (Prelude.Maybe AdvancedSecurityOptionsInput)+createDomain_advancedSecurityOptions = Lens.lens (\CreateDomain' {advancedSecurityOptions} -> advancedSecurityOptions) (\s@CreateDomain' {} a -> s {advancedSecurityOptions = a} :: CreateDomain)++-- | Options for Auto-Tune.+createDomain_autoTuneOptions :: Lens.Lens' CreateDomain (Prelude.Maybe AutoTuneOptionsInput)+createDomain_autoTuneOptions = Lens.lens (\CreateDomain' {autoTuneOptions} -> autoTuneOptions) (\s@CreateDomain' {} a -> s {autoTuneOptions = a} :: CreateDomain)++-- | Container for the cluster configuration of a domain.+createDomain_clusterConfig :: Lens.Lens' CreateDomain (Prelude.Maybe ClusterConfig)+createDomain_clusterConfig = Lens.lens (\CreateDomain' {clusterConfig} -> clusterConfig) (\s@CreateDomain' {} a -> s {clusterConfig = a} :: CreateDomain)++-- | Key-value pairs to configure Amazon Cognito authentication. For more+-- information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/cognito-auth.html Configuring Amazon Cognito authentication for OpenSearch Dashboards>.+createDomain_cognitoOptions :: Lens.Lens' CreateDomain (Prelude.Maybe CognitoOptions)+createDomain_cognitoOptions = Lens.lens (\CreateDomain' {cognitoOptions} -> cognitoOptions) (\s@CreateDomain' {} a -> s {cognitoOptions = a} :: CreateDomain)++-- | Additional options for the domain endpoint, such as whether to require+-- HTTPS for all traffic.+createDomain_domainEndpointOptions :: Lens.Lens' CreateDomain (Prelude.Maybe DomainEndpointOptions)+createDomain_domainEndpointOptions = Lens.lens (\CreateDomain' {domainEndpointOptions} -> domainEndpointOptions) (\s@CreateDomain' {} a -> s {domainEndpointOptions = a} :: CreateDomain)++-- | Container for the parameters required to enable EBS-based storage for an+-- OpenSearch Service domain.+createDomain_eBSOptions :: Lens.Lens' CreateDomain (Prelude.Maybe EBSOptions)+createDomain_eBSOptions = Lens.lens (\CreateDomain' {eBSOptions} -> eBSOptions) (\s@CreateDomain' {} a -> s {eBSOptions = a} :: CreateDomain)++-- | Key-value pairs to enable encryption at rest.+createDomain_encryptionAtRestOptions :: Lens.Lens' CreateDomain (Prelude.Maybe EncryptionAtRestOptions)+createDomain_encryptionAtRestOptions = Lens.lens (\CreateDomain' {encryptionAtRestOptions} -> encryptionAtRestOptions) (\s@CreateDomain' {} a -> s {encryptionAtRestOptions = a} :: CreateDomain)++-- | String of format Elasticsearch_X.Y or OpenSearch_X.Y to specify the+-- engine version for the OpenSearch Service domain. For example,+-- @OpenSearch_1.0@ or @Elasticsearch_7.9@. For more information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/createupdatedomains.html#createdomains Creating and managing Amazon OpenSearch Service domains>.+createDomain_engineVersion :: Lens.Lens' CreateDomain (Prelude.Maybe Prelude.Text)+createDomain_engineVersion = Lens.lens (\CreateDomain' {engineVersion} -> engineVersion) (\s@CreateDomain' {} a -> s {engineVersion = a} :: CreateDomain)++-- | Key-value pairs to configure slow log publishing.+createDomain_logPublishingOptions :: Lens.Lens' CreateDomain (Prelude.Maybe (Prelude.HashMap LogType LogPublishingOption))+createDomain_logPublishingOptions = Lens.lens (\CreateDomain' {logPublishingOptions} -> logPublishingOptions) (\s@CreateDomain' {} a -> s {logPublishingOptions = a} :: CreateDomain) Prelude.. Lens.mapping Lens.coerced++-- | Enables node-to-node encryption.+createDomain_nodeToNodeEncryptionOptions :: Lens.Lens' CreateDomain (Prelude.Maybe NodeToNodeEncryptionOptions)+createDomain_nodeToNodeEncryptionOptions = Lens.lens (\CreateDomain' {nodeToNodeEncryptionOptions} -> nodeToNodeEncryptionOptions) (\s@CreateDomain' {} a -> s {nodeToNodeEncryptionOptions = a} :: CreateDomain)++-- | DEPRECATED. Container for the parameters required to configure automated+-- snapshots of domain indexes.+createDomain_snapshotOptions :: Lens.Lens' CreateDomain (Prelude.Maybe SnapshotOptions)+createDomain_snapshotOptions = Lens.lens (\CreateDomain' {snapshotOptions} -> snapshotOptions) (\s@CreateDomain' {} a -> s {snapshotOptions = a} :: CreateDomain)++-- | List of tags to add to the domain upon creation.+createDomain_tagList :: Lens.Lens' CreateDomain (Prelude.Maybe [Tag])+createDomain_tagList = Lens.lens (\CreateDomain' {tagList} -> tagList) (\s@CreateDomain' {} a -> s {tagList = a} :: CreateDomain) Prelude.. Lens.mapping Lens.coerced++-- | Container for the values required to configure VPC access domains. If+-- you don\'t specify these values, OpenSearch Service creates the domain+-- with a public endpoint. For more information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/vpc.html Launching your Amazon OpenSearch Service domains using a VPC>.+createDomain_vPCOptions :: Lens.Lens' CreateDomain (Prelude.Maybe VPCOptions)+createDomain_vPCOptions = Lens.lens (\CreateDomain' {vPCOptions} -> vPCOptions) (\s@CreateDomain' {} a -> s {vPCOptions = a} :: CreateDomain)++-- | Name of the OpenSearch Service domain to create. Domain names are unique+-- across the domains owned by an account within an Amazon Web Services+-- Region.+createDomain_domainName :: Lens.Lens' CreateDomain Prelude.Text+createDomain_domainName = Lens.lens (\CreateDomain' {domainName} -> domainName) (\s@CreateDomain' {} a -> s {domainName = a} :: CreateDomain)++instance Core.AWSRequest CreateDomain where+ type AWSResponse CreateDomain = CreateDomainResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateDomainResponse'+ Prelude.<$> (x Data..?> "DomainStatus")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateDomain where+ hashWithSalt _salt CreateDomain' {..} =+ _salt+ `Prelude.hashWithSalt` accessPolicies+ `Prelude.hashWithSalt` advancedOptions+ `Prelude.hashWithSalt` advancedSecurityOptions+ `Prelude.hashWithSalt` autoTuneOptions+ `Prelude.hashWithSalt` clusterConfig+ `Prelude.hashWithSalt` cognitoOptions+ `Prelude.hashWithSalt` domainEndpointOptions+ `Prelude.hashWithSalt` eBSOptions+ `Prelude.hashWithSalt` encryptionAtRestOptions+ `Prelude.hashWithSalt` engineVersion+ `Prelude.hashWithSalt` logPublishingOptions+ `Prelude.hashWithSalt` nodeToNodeEncryptionOptions+ `Prelude.hashWithSalt` snapshotOptions+ `Prelude.hashWithSalt` tagList+ `Prelude.hashWithSalt` vPCOptions+ `Prelude.hashWithSalt` domainName++instance Prelude.NFData CreateDomain where+ rnf CreateDomain' {..} =+ Prelude.rnf accessPolicies+ `Prelude.seq` Prelude.rnf advancedOptions+ `Prelude.seq` Prelude.rnf advancedSecurityOptions+ `Prelude.seq` Prelude.rnf autoTuneOptions+ `Prelude.seq` Prelude.rnf clusterConfig+ `Prelude.seq` Prelude.rnf cognitoOptions+ `Prelude.seq` Prelude.rnf domainEndpointOptions+ `Prelude.seq` Prelude.rnf eBSOptions+ `Prelude.seq` Prelude.rnf encryptionAtRestOptions+ `Prelude.seq` Prelude.rnf engineVersion+ `Prelude.seq` Prelude.rnf logPublishingOptions+ `Prelude.seq` Prelude.rnf nodeToNodeEncryptionOptions+ `Prelude.seq` Prelude.rnf snapshotOptions+ `Prelude.seq` Prelude.rnf tagList+ `Prelude.seq` Prelude.rnf vPCOptions+ `Prelude.seq` Prelude.rnf domainName++instance Data.ToHeaders CreateDomain where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToJSON CreateDomain where+ toJSON CreateDomain' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("AccessPolicies" Data..=)+ Prelude.<$> accessPolicies,+ ("AdvancedOptions" Data..=)+ Prelude.<$> advancedOptions,+ ("AdvancedSecurityOptions" Data..=)+ Prelude.<$> advancedSecurityOptions,+ ("AutoTuneOptions" Data..=)+ Prelude.<$> autoTuneOptions,+ ("ClusterConfig" Data..=) Prelude.<$> clusterConfig,+ ("CognitoOptions" Data..=)+ Prelude.<$> cognitoOptions,+ ("DomainEndpointOptions" Data..=)+ Prelude.<$> domainEndpointOptions,+ ("EBSOptions" Data..=) Prelude.<$> eBSOptions,+ ("EncryptionAtRestOptions" Data..=)+ Prelude.<$> encryptionAtRestOptions,+ ("EngineVersion" Data..=) Prelude.<$> engineVersion,+ ("LogPublishingOptions" Data..=)+ Prelude.<$> logPublishingOptions,+ ("NodeToNodeEncryptionOptions" Data..=)+ Prelude.<$> nodeToNodeEncryptionOptions,+ ("SnapshotOptions" Data..=)+ Prelude.<$> snapshotOptions,+ ("TagList" Data..=) Prelude.<$> tagList,+ ("VPCOptions" Data..=) Prelude.<$> vPCOptions,+ Prelude.Just ("DomainName" Data..= domainName)+ ]+ )++instance Data.ToPath CreateDomain where+ toPath =+ Prelude.const "/2021-01-01/opensearch/domain"++instance Data.ToQuery CreateDomain where+ toQuery = Prelude.const Prelude.mempty++-- | The result of a @CreateDomain@ operation. Contains the status of the+-- newly created domain.+--+-- /See:/ 'newCreateDomainResponse' smart constructor.+data CreateDomainResponse = CreateDomainResponse'+ { -- | The status of the newly created domain.+ domainStatus :: Prelude.Maybe DomainStatus,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateDomainResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domainStatus', 'createDomainResponse_domainStatus' - The status of the newly created domain.+--+-- 'httpStatus', 'createDomainResponse_httpStatus' - The response's http status code.+newCreateDomainResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateDomainResponse+newCreateDomainResponse pHttpStatus_ =+ CreateDomainResponse'+ { domainStatus =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The status of the newly created domain.+createDomainResponse_domainStatus :: Lens.Lens' CreateDomainResponse (Prelude.Maybe DomainStatus)+createDomainResponse_domainStatus = Lens.lens (\CreateDomainResponse' {domainStatus} -> domainStatus) (\s@CreateDomainResponse' {} a -> s {domainStatus = a} :: CreateDomainResponse)++-- | The response's http status code.+createDomainResponse_httpStatus :: Lens.Lens' CreateDomainResponse Prelude.Int+createDomainResponse_httpStatus = Lens.lens (\CreateDomainResponse' {httpStatus} -> httpStatus) (\s@CreateDomainResponse' {} a -> s {httpStatus = a} :: CreateDomainResponse)++instance Prelude.NFData CreateDomainResponse where+ rnf CreateDomainResponse' {..} =+ Prelude.rnf domainStatus+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/OpenSearch/CreateOutboundConnection.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.OpenSearch.CreateOutboundConnection+-- 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 cross-cluster search connection from a source Amazon+-- OpenSearch Service domain to a destination domain. For more information,+-- see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/cross-cluster-search.html Cross-cluster search for Amazon OpenSearch Service>.+module Amazonka.OpenSearch.CreateOutboundConnection+ ( -- * Creating a Request+ CreateOutboundConnection (..),+ newCreateOutboundConnection,++ -- * Request Lenses+ createOutboundConnection_localDomainInfo,+ createOutboundConnection_remoteDomainInfo,+ createOutboundConnection_connectionAlias,++ -- * Destructuring the Response+ CreateOutboundConnectionResponse (..),+ newCreateOutboundConnectionResponse,++ -- * Response Lenses+ createOutboundConnectionResponse_connectionAlias,+ createOutboundConnectionResponse_connectionId,+ createOutboundConnectionResponse_connectionStatus,+ createOutboundConnectionResponse_localDomainInfo,+ createOutboundConnectionResponse_remoteDomainInfo,+ createOutboundConnectionResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Container for the parameters to the @CreateOutboundConnection@+-- operation.+--+-- /See:/ 'newCreateOutboundConnection' smart constructor.+data CreateOutboundConnection = CreateOutboundConnection'+ { -- | Name and Region of the source (local) domain.+ localDomainInfo :: DomainInformationContainer,+ -- | Name and Region of the destination (remote) domain.+ remoteDomainInfo :: DomainInformationContainer,+ -- | Name of the connection.+ connectionAlias :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateOutboundConnection' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'localDomainInfo', 'createOutboundConnection_localDomainInfo' - Name and Region of the source (local) domain.+--+-- 'remoteDomainInfo', 'createOutboundConnection_remoteDomainInfo' - Name and Region of the destination (remote) domain.+--+-- 'connectionAlias', 'createOutboundConnection_connectionAlias' - Name of the connection.+newCreateOutboundConnection ::+ -- | 'localDomainInfo'+ DomainInformationContainer ->+ -- | 'remoteDomainInfo'+ DomainInformationContainer ->+ -- | 'connectionAlias'+ Prelude.Text ->+ CreateOutboundConnection+newCreateOutboundConnection+ pLocalDomainInfo_+ pRemoteDomainInfo_+ pConnectionAlias_ =+ CreateOutboundConnection'+ { localDomainInfo =+ pLocalDomainInfo_,+ remoteDomainInfo = pRemoteDomainInfo_,+ connectionAlias = pConnectionAlias_+ }++-- | Name and Region of the source (local) domain.+createOutboundConnection_localDomainInfo :: Lens.Lens' CreateOutboundConnection DomainInformationContainer+createOutboundConnection_localDomainInfo = Lens.lens (\CreateOutboundConnection' {localDomainInfo} -> localDomainInfo) (\s@CreateOutboundConnection' {} a -> s {localDomainInfo = a} :: CreateOutboundConnection)++-- | Name and Region of the destination (remote) domain.+createOutboundConnection_remoteDomainInfo :: Lens.Lens' CreateOutboundConnection DomainInformationContainer+createOutboundConnection_remoteDomainInfo = Lens.lens (\CreateOutboundConnection' {remoteDomainInfo} -> remoteDomainInfo) (\s@CreateOutboundConnection' {} a -> s {remoteDomainInfo = a} :: CreateOutboundConnection)++-- | Name of the connection.+createOutboundConnection_connectionAlias :: Lens.Lens' CreateOutboundConnection Prelude.Text+createOutboundConnection_connectionAlias = Lens.lens (\CreateOutboundConnection' {connectionAlias} -> connectionAlias) (\s@CreateOutboundConnection' {} a -> s {connectionAlias = a} :: CreateOutboundConnection)++instance Core.AWSRequest CreateOutboundConnection where+ type+ AWSResponse CreateOutboundConnection =+ CreateOutboundConnectionResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateOutboundConnectionResponse'+ Prelude.<$> (x Data..?> "ConnectionAlias")+ Prelude.<*> (x Data..?> "ConnectionId")+ Prelude.<*> (x Data..?> "ConnectionStatus")+ Prelude.<*> (x Data..?> "LocalDomainInfo")+ Prelude.<*> (x Data..?> "RemoteDomainInfo")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateOutboundConnection where+ hashWithSalt _salt CreateOutboundConnection' {..} =+ _salt+ `Prelude.hashWithSalt` localDomainInfo+ `Prelude.hashWithSalt` remoteDomainInfo+ `Prelude.hashWithSalt` connectionAlias++instance Prelude.NFData CreateOutboundConnection where+ rnf CreateOutboundConnection' {..} =+ Prelude.rnf localDomainInfo+ `Prelude.seq` Prelude.rnf remoteDomainInfo+ `Prelude.seq` Prelude.rnf connectionAlias++instance Data.ToHeaders CreateOutboundConnection where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToJSON CreateOutboundConnection where+ toJSON CreateOutboundConnection' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("LocalDomainInfo" Data..= localDomainInfo),+ Prelude.Just+ ("RemoteDomainInfo" Data..= remoteDomainInfo),+ Prelude.Just+ ("ConnectionAlias" Data..= connectionAlias)+ ]+ )++instance Data.ToPath CreateOutboundConnection where+ toPath =+ Prelude.const+ "/2021-01-01/opensearch/cc/outboundConnection"++instance Data.ToQuery CreateOutboundConnection where+ toQuery = Prelude.const Prelude.mempty++-- | The result of a @CreateOutboundConnection@ request. Contains details+-- about the newly created cross-cluster connection.+--+-- /See:/ 'newCreateOutboundConnectionResponse' smart constructor.+data CreateOutboundConnectionResponse = CreateOutboundConnectionResponse'+ { -- | Name of the connection.+ connectionAlias :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier for the created outbound connection, which is used+ -- for subsequent operations on the connection.+ connectionId :: Prelude.Maybe Prelude.Text,+ -- | The status of the connection.+ connectionStatus :: Prelude.Maybe OutboundConnectionStatus,+ -- | Information about the source (local) domain.+ localDomainInfo :: Prelude.Maybe DomainInformationContainer,+ -- | Information about the destination (remote) domain.+ remoteDomainInfo :: Prelude.Maybe DomainInformationContainer,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateOutboundConnectionResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'connectionAlias', 'createOutboundConnectionResponse_connectionAlias' - Name of the connection.+--+-- 'connectionId', 'createOutboundConnectionResponse_connectionId' - The unique identifier for the created outbound connection, which is used+-- for subsequent operations on the connection.+--+-- 'connectionStatus', 'createOutboundConnectionResponse_connectionStatus' - The status of the connection.+--+-- 'localDomainInfo', 'createOutboundConnectionResponse_localDomainInfo' - Information about the source (local) domain.+--+-- 'remoteDomainInfo', 'createOutboundConnectionResponse_remoteDomainInfo' - Information about the destination (remote) domain.+--+-- 'httpStatus', 'createOutboundConnectionResponse_httpStatus' - The response's http status code.+newCreateOutboundConnectionResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateOutboundConnectionResponse+newCreateOutboundConnectionResponse pHttpStatus_ =+ CreateOutboundConnectionResponse'+ { connectionAlias =+ Prelude.Nothing,+ connectionId = Prelude.Nothing,+ connectionStatus = Prelude.Nothing,+ localDomainInfo = Prelude.Nothing,+ remoteDomainInfo = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Name of the connection.+createOutboundConnectionResponse_connectionAlias :: Lens.Lens' CreateOutboundConnectionResponse (Prelude.Maybe Prelude.Text)+createOutboundConnectionResponse_connectionAlias = Lens.lens (\CreateOutboundConnectionResponse' {connectionAlias} -> connectionAlias) (\s@CreateOutboundConnectionResponse' {} a -> s {connectionAlias = a} :: CreateOutboundConnectionResponse)++-- | The unique identifier for the created outbound connection, which is used+-- for subsequent operations on the connection.+createOutboundConnectionResponse_connectionId :: Lens.Lens' CreateOutboundConnectionResponse (Prelude.Maybe Prelude.Text)+createOutboundConnectionResponse_connectionId = Lens.lens (\CreateOutboundConnectionResponse' {connectionId} -> connectionId) (\s@CreateOutboundConnectionResponse' {} a -> s {connectionId = a} :: CreateOutboundConnectionResponse)++-- | The status of the connection.+createOutboundConnectionResponse_connectionStatus :: Lens.Lens' CreateOutboundConnectionResponse (Prelude.Maybe OutboundConnectionStatus)+createOutboundConnectionResponse_connectionStatus = Lens.lens (\CreateOutboundConnectionResponse' {connectionStatus} -> connectionStatus) (\s@CreateOutboundConnectionResponse' {} a -> s {connectionStatus = a} :: CreateOutboundConnectionResponse)++-- | Information about the source (local) domain.+createOutboundConnectionResponse_localDomainInfo :: Lens.Lens' CreateOutboundConnectionResponse (Prelude.Maybe DomainInformationContainer)+createOutboundConnectionResponse_localDomainInfo = Lens.lens (\CreateOutboundConnectionResponse' {localDomainInfo} -> localDomainInfo) (\s@CreateOutboundConnectionResponse' {} a -> s {localDomainInfo = a} :: CreateOutboundConnectionResponse)++-- | Information about the destination (remote) domain.+createOutboundConnectionResponse_remoteDomainInfo :: Lens.Lens' CreateOutboundConnectionResponse (Prelude.Maybe DomainInformationContainer)+createOutboundConnectionResponse_remoteDomainInfo = Lens.lens (\CreateOutboundConnectionResponse' {remoteDomainInfo} -> remoteDomainInfo) (\s@CreateOutboundConnectionResponse' {} a -> s {remoteDomainInfo = a} :: CreateOutboundConnectionResponse)++-- | The response's http status code.+createOutboundConnectionResponse_httpStatus :: Lens.Lens' CreateOutboundConnectionResponse Prelude.Int+createOutboundConnectionResponse_httpStatus = Lens.lens (\CreateOutboundConnectionResponse' {httpStatus} -> httpStatus) (\s@CreateOutboundConnectionResponse' {} a -> s {httpStatus = a} :: CreateOutboundConnectionResponse)++instance+ Prelude.NFData+ CreateOutboundConnectionResponse+ where+ rnf CreateOutboundConnectionResponse' {..} =+ Prelude.rnf connectionAlias+ `Prelude.seq` Prelude.rnf connectionId+ `Prelude.seq` Prelude.rnf connectionStatus+ `Prelude.seq` Prelude.rnf localDomainInfo+ `Prelude.seq` Prelude.rnf remoteDomainInfo+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/OpenSearch/CreatePackage.hs view
@@ -0,0 +1,216 @@+{-# 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.OpenSearch.CreatePackage+-- 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 package for use with Amazon OpenSearch Service domains. For+-- more information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/custom-packages.html Custom packages for Amazon OpenSearch Service>.+module Amazonka.OpenSearch.CreatePackage+ ( -- * Creating a Request+ CreatePackage (..),+ newCreatePackage,++ -- * Request Lenses+ createPackage_packageDescription,+ createPackage_packageName,+ createPackage_packageType,+ createPackage_packageSource,++ -- * Destructuring the Response+ CreatePackageResponse (..),+ newCreatePackageResponse,++ -- * Response Lenses+ createPackageResponse_packageDetails,+ createPackageResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Container for request parameters to the @CreatePackage@ operation.+--+-- /See:/ 'newCreatePackage' smart constructor.+data CreatePackage = CreatePackage'+ { -- | Description of the package.+ packageDescription :: Prelude.Maybe Prelude.Text,+ -- | Unique name for the package.+ packageName :: Prelude.Text,+ -- | Type of package.+ packageType :: PackageType,+ -- | The Amazon S3 location from which to import the package.+ packageSource :: PackageSource+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreatePackage' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'packageDescription', 'createPackage_packageDescription' - Description of the package.+--+-- 'packageName', 'createPackage_packageName' - Unique name for the package.+--+-- 'packageType', 'createPackage_packageType' - Type of package.+--+-- 'packageSource', 'createPackage_packageSource' - The Amazon S3 location from which to import the package.+newCreatePackage ::+ -- | 'packageName'+ Prelude.Text ->+ -- | 'packageType'+ PackageType ->+ -- | 'packageSource'+ PackageSource ->+ CreatePackage+newCreatePackage+ pPackageName_+ pPackageType_+ pPackageSource_ =+ CreatePackage'+ { packageDescription =+ Prelude.Nothing,+ packageName = pPackageName_,+ packageType = pPackageType_,+ packageSource = pPackageSource_+ }++-- | Description of the package.+createPackage_packageDescription :: Lens.Lens' CreatePackage (Prelude.Maybe Prelude.Text)+createPackage_packageDescription = Lens.lens (\CreatePackage' {packageDescription} -> packageDescription) (\s@CreatePackage' {} a -> s {packageDescription = a} :: CreatePackage)++-- | Unique name for the package.+createPackage_packageName :: Lens.Lens' CreatePackage Prelude.Text+createPackage_packageName = Lens.lens (\CreatePackage' {packageName} -> packageName) (\s@CreatePackage' {} a -> s {packageName = a} :: CreatePackage)++-- | Type of package.+createPackage_packageType :: Lens.Lens' CreatePackage PackageType+createPackage_packageType = Lens.lens (\CreatePackage' {packageType} -> packageType) (\s@CreatePackage' {} a -> s {packageType = a} :: CreatePackage)++-- | The Amazon S3 location from which to import the package.+createPackage_packageSource :: Lens.Lens' CreatePackage PackageSource+createPackage_packageSource = Lens.lens (\CreatePackage' {packageSource} -> packageSource) (\s@CreatePackage' {} a -> s {packageSource = a} :: CreatePackage)++instance Core.AWSRequest CreatePackage where+ type+ AWSResponse CreatePackage =+ CreatePackageResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreatePackageResponse'+ Prelude.<$> (x Data..?> "PackageDetails")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreatePackage where+ hashWithSalt _salt CreatePackage' {..} =+ _salt+ `Prelude.hashWithSalt` packageDescription+ `Prelude.hashWithSalt` packageName+ `Prelude.hashWithSalt` packageType+ `Prelude.hashWithSalt` packageSource++instance Prelude.NFData CreatePackage where+ rnf CreatePackage' {..} =+ Prelude.rnf packageDescription+ `Prelude.seq` Prelude.rnf packageName+ `Prelude.seq` Prelude.rnf packageType+ `Prelude.seq` Prelude.rnf packageSource++instance Data.ToHeaders CreatePackage where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToJSON CreatePackage where+ toJSON CreatePackage' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("PackageDescription" Data..=)+ Prelude.<$> packageDescription,+ Prelude.Just ("PackageName" Data..= packageName),+ Prelude.Just ("PackageType" Data..= packageType),+ Prelude.Just+ ("PackageSource" Data..= packageSource)+ ]+ )++instance Data.ToPath CreatePackage where+ toPath = Prelude.const "/2021-01-01/packages"++instance Data.ToQuery CreatePackage where+ toQuery = Prelude.const Prelude.mempty++-- | Container for the response returned by the @CreatePackage@ operation.+--+-- /See:/ 'newCreatePackageResponse' smart constructor.+data CreatePackageResponse = CreatePackageResponse'+ { -- | Basic information about an OpenSearch Service package.+ packageDetails :: Prelude.Maybe PackageDetails,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreatePackageResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'packageDetails', 'createPackageResponse_packageDetails' - Basic information about an OpenSearch Service package.+--+-- 'httpStatus', 'createPackageResponse_httpStatus' - The response's http status code.+newCreatePackageResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreatePackageResponse+newCreatePackageResponse pHttpStatus_ =+ CreatePackageResponse'+ { packageDetails =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Basic information about an OpenSearch Service package.+createPackageResponse_packageDetails :: Lens.Lens' CreatePackageResponse (Prelude.Maybe PackageDetails)+createPackageResponse_packageDetails = Lens.lens (\CreatePackageResponse' {packageDetails} -> packageDetails) (\s@CreatePackageResponse' {} a -> s {packageDetails = a} :: CreatePackageResponse)++-- | The response's http status code.+createPackageResponse_httpStatus :: Lens.Lens' CreatePackageResponse Prelude.Int+createPackageResponse_httpStatus = Lens.lens (\CreatePackageResponse' {httpStatus} -> httpStatus) (\s@CreatePackageResponse' {} a -> s {httpStatus = a} :: CreatePackageResponse)++instance Prelude.NFData CreatePackageResponse where+ rnf CreatePackageResponse' {..} =+ Prelude.rnf packageDetails+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/OpenSearch/CreateVpcEndpoint.hs view
@@ -0,0 +1,194 @@+{-# 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.OpenSearch.CreateVpcEndpoint+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates an Amazon OpenSearch Service-managed VPC endpoint.+module Amazonka.OpenSearch.CreateVpcEndpoint+ ( -- * Creating a Request+ CreateVpcEndpoint (..),+ newCreateVpcEndpoint,++ -- * Request Lenses+ createVpcEndpoint_clientToken,+ createVpcEndpoint_domainArn,+ createVpcEndpoint_vpcOptions,++ -- * Destructuring the Response+ CreateVpcEndpointResponse (..),+ newCreateVpcEndpointResponse,++ -- * Response Lenses+ createVpcEndpointResponse_httpStatus,+ createVpcEndpointResponse_vpcEndpoint,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateVpcEndpoint' smart constructor.+data CreateVpcEndpoint = CreateVpcEndpoint'+ { -- | Unique, case-sensitive identifier to ensure idempotency of the request.+ clientToken :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Resource Name (ARN) of the domain to grant access to.+ domainArn :: Prelude.Text,+ -- | Options to specify the subnets and security groups for the endpoint.+ vpcOptions :: VPCOptions+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateVpcEndpoint' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'clientToken', 'createVpcEndpoint_clientToken' - Unique, case-sensitive identifier to ensure idempotency of the request.+--+-- 'domainArn', 'createVpcEndpoint_domainArn' - The Amazon Resource Name (ARN) of the domain to grant access to.+--+-- 'vpcOptions', 'createVpcEndpoint_vpcOptions' - Options to specify the subnets and security groups for the endpoint.+newCreateVpcEndpoint ::+ -- | 'domainArn'+ Prelude.Text ->+ -- | 'vpcOptions'+ VPCOptions ->+ CreateVpcEndpoint+newCreateVpcEndpoint pDomainArn_ pVpcOptions_ =+ CreateVpcEndpoint'+ { clientToken = Prelude.Nothing,+ domainArn = pDomainArn_,+ vpcOptions = pVpcOptions_+ }++-- | Unique, case-sensitive identifier to ensure idempotency of the request.+createVpcEndpoint_clientToken :: Lens.Lens' CreateVpcEndpoint (Prelude.Maybe Prelude.Text)+createVpcEndpoint_clientToken = Lens.lens (\CreateVpcEndpoint' {clientToken} -> clientToken) (\s@CreateVpcEndpoint' {} a -> s {clientToken = a} :: CreateVpcEndpoint)++-- | The Amazon Resource Name (ARN) of the domain to grant access to.+createVpcEndpoint_domainArn :: Lens.Lens' CreateVpcEndpoint Prelude.Text+createVpcEndpoint_domainArn = Lens.lens (\CreateVpcEndpoint' {domainArn} -> domainArn) (\s@CreateVpcEndpoint' {} a -> s {domainArn = a} :: CreateVpcEndpoint)++-- | Options to specify the subnets and security groups for the endpoint.+createVpcEndpoint_vpcOptions :: Lens.Lens' CreateVpcEndpoint VPCOptions+createVpcEndpoint_vpcOptions = Lens.lens (\CreateVpcEndpoint' {vpcOptions} -> vpcOptions) (\s@CreateVpcEndpoint' {} a -> s {vpcOptions = a} :: CreateVpcEndpoint)++instance Core.AWSRequest CreateVpcEndpoint where+ type+ AWSResponse CreateVpcEndpoint =+ CreateVpcEndpointResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateVpcEndpointResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..:> "VpcEndpoint")+ )++instance Prelude.Hashable CreateVpcEndpoint where+ hashWithSalt _salt CreateVpcEndpoint' {..} =+ _salt+ `Prelude.hashWithSalt` clientToken+ `Prelude.hashWithSalt` domainArn+ `Prelude.hashWithSalt` vpcOptions++instance Prelude.NFData CreateVpcEndpoint where+ rnf CreateVpcEndpoint' {..} =+ Prelude.rnf clientToken+ `Prelude.seq` Prelude.rnf domainArn+ `Prelude.seq` Prelude.rnf vpcOptions++instance Data.ToHeaders CreateVpcEndpoint where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToJSON CreateVpcEndpoint where+ toJSON CreateVpcEndpoint' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("ClientToken" Data..=) Prelude.<$> clientToken,+ Prelude.Just ("DomainArn" Data..= domainArn),+ Prelude.Just ("VpcOptions" Data..= vpcOptions)+ ]+ )++instance Data.ToPath CreateVpcEndpoint where+ toPath =+ Prelude.const "/2021-01-01/opensearch/vpcEndpoints"++instance Data.ToQuery CreateVpcEndpoint where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateVpcEndpointResponse' smart constructor.+data CreateVpcEndpointResponse = CreateVpcEndpointResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | Information about the newly created VPC endpoint.+ vpcEndpoint :: VpcEndpoint+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateVpcEndpointResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'createVpcEndpointResponse_httpStatus' - The response's http status code.+--+-- 'vpcEndpoint', 'createVpcEndpointResponse_vpcEndpoint' - Information about the newly created VPC endpoint.+newCreateVpcEndpointResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'vpcEndpoint'+ VpcEndpoint ->+ CreateVpcEndpointResponse+newCreateVpcEndpointResponse+ pHttpStatus_+ pVpcEndpoint_ =+ CreateVpcEndpointResponse'+ { httpStatus =+ pHttpStatus_,+ vpcEndpoint = pVpcEndpoint_+ }++-- | The response's http status code.+createVpcEndpointResponse_httpStatus :: Lens.Lens' CreateVpcEndpointResponse Prelude.Int+createVpcEndpointResponse_httpStatus = Lens.lens (\CreateVpcEndpointResponse' {httpStatus} -> httpStatus) (\s@CreateVpcEndpointResponse' {} a -> s {httpStatus = a} :: CreateVpcEndpointResponse)++-- | Information about the newly created VPC endpoint.+createVpcEndpointResponse_vpcEndpoint :: Lens.Lens' CreateVpcEndpointResponse VpcEndpoint+createVpcEndpointResponse_vpcEndpoint = Lens.lens (\CreateVpcEndpointResponse' {vpcEndpoint} -> vpcEndpoint) (\s@CreateVpcEndpointResponse' {} a -> s {vpcEndpoint = a} :: CreateVpcEndpointResponse)++instance Prelude.NFData CreateVpcEndpointResponse where+ rnf CreateVpcEndpointResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf vpcEndpoint
+ gen/Amazonka/OpenSearch/DeleteDomain.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.OpenSearch.DeleteDomain+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes an Amazon OpenSearch Service domain and all of its data. You+-- can\'t recover a domain after you delete it.+module Amazonka.OpenSearch.DeleteDomain+ ( -- * Creating a Request+ DeleteDomain (..),+ newDeleteDomain,++ -- * Request Lenses+ deleteDomain_domainName,++ -- * Destructuring the Response+ DeleteDomainResponse (..),+ newDeleteDomainResponse,++ -- * Response Lenses+ deleteDomainResponse_domainStatus,+ deleteDomainResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Container for the parameters to the @DeleteDomain@ operation.+--+-- /See:/ 'newDeleteDomain' smart constructor.+data DeleteDomain = DeleteDomain'+ { -- | The name of the domain you want to permanently delete.+ domainName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteDomain' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domainName', 'deleteDomain_domainName' - The name of the domain you want to permanently delete.+newDeleteDomain ::+ -- | 'domainName'+ Prelude.Text ->+ DeleteDomain+newDeleteDomain pDomainName_ =+ DeleteDomain' {domainName = pDomainName_}++-- | The name of the domain you want to permanently delete.+deleteDomain_domainName :: Lens.Lens' DeleteDomain Prelude.Text+deleteDomain_domainName = Lens.lens (\DeleteDomain' {domainName} -> domainName) (\s@DeleteDomain' {} a -> s {domainName = a} :: DeleteDomain)++instance Core.AWSRequest DeleteDomain where+ type AWSResponse DeleteDomain = DeleteDomainResponse+ request overrides =+ Request.delete (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DeleteDomainResponse'+ Prelude.<$> (x Data..?> "DomainStatus")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DeleteDomain where+ hashWithSalt _salt DeleteDomain' {..} =+ _salt `Prelude.hashWithSalt` domainName++instance Prelude.NFData DeleteDomain where+ rnf DeleteDomain' {..} = Prelude.rnf domainName++instance Data.ToHeaders DeleteDomain where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DeleteDomain where+ toPath DeleteDomain' {..} =+ Prelude.mconcat+ [ "/2021-01-01/opensearch/domain/",+ Data.toBS domainName+ ]++instance Data.ToQuery DeleteDomain where+ toQuery = Prelude.const Prelude.mempty++-- | The results of a @DeleteDomain@ request. Contains the status of the+-- pending deletion, or a \"domain not found\" error if the domain and all+-- of its resources have been deleted.+--+-- /See:/ 'newDeleteDomainResponse' smart constructor.+data DeleteDomainResponse = DeleteDomainResponse'+ { -- | The status of the domain being deleted.+ domainStatus :: Prelude.Maybe DomainStatus,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteDomainResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domainStatus', 'deleteDomainResponse_domainStatus' - The status of the domain being deleted.+--+-- 'httpStatus', 'deleteDomainResponse_httpStatus' - The response's http status code.+newDeleteDomainResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeleteDomainResponse+newDeleteDomainResponse pHttpStatus_ =+ DeleteDomainResponse'+ { domainStatus =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The status of the domain being deleted.+deleteDomainResponse_domainStatus :: Lens.Lens' DeleteDomainResponse (Prelude.Maybe DomainStatus)+deleteDomainResponse_domainStatus = Lens.lens (\DeleteDomainResponse' {domainStatus} -> domainStatus) (\s@DeleteDomainResponse' {} a -> s {domainStatus = a} :: DeleteDomainResponse)++-- | The response's http status code.+deleteDomainResponse_httpStatus :: Lens.Lens' DeleteDomainResponse Prelude.Int+deleteDomainResponse_httpStatus = Lens.lens (\DeleteDomainResponse' {httpStatus} -> httpStatus) (\s@DeleteDomainResponse' {} a -> s {httpStatus = a} :: DeleteDomainResponse)++instance Prelude.NFData DeleteDomainResponse where+ rnf DeleteDomainResponse' {..} =+ Prelude.rnf domainStatus+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/OpenSearch/DeleteInboundConnection.hs view
@@ -0,0 +1,168 @@+{-# 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.OpenSearch.DeleteInboundConnection+-- 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 destination Amazon OpenSearch Service domain owner to delete+-- an existing inbound cross-cluster search connection. For more+-- information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/cross-cluster-search.html Cross-cluster search for Amazon OpenSearch Service>.+module Amazonka.OpenSearch.DeleteInboundConnection+ ( -- * Creating a Request+ DeleteInboundConnection (..),+ newDeleteInboundConnection,++ -- * Request Lenses+ deleteInboundConnection_connectionId,++ -- * Destructuring the Response+ DeleteInboundConnectionResponse (..),+ newDeleteInboundConnectionResponse,++ -- * Response Lenses+ deleteInboundConnectionResponse_connection,+ deleteInboundConnectionResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Container for the parameters to the @DeleteInboundConnection@ operation.+--+-- /See:/ 'newDeleteInboundConnection' smart constructor.+data DeleteInboundConnection = DeleteInboundConnection'+ { -- | The ID of the inbound connection to permanently delete.+ connectionId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteInboundConnection' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'connectionId', 'deleteInboundConnection_connectionId' - The ID of the inbound connection to permanently delete.+newDeleteInboundConnection ::+ -- | 'connectionId'+ Prelude.Text ->+ DeleteInboundConnection+newDeleteInboundConnection pConnectionId_ =+ DeleteInboundConnection'+ { connectionId =+ pConnectionId_+ }++-- | The ID of the inbound connection to permanently delete.+deleteInboundConnection_connectionId :: Lens.Lens' DeleteInboundConnection Prelude.Text+deleteInboundConnection_connectionId = Lens.lens (\DeleteInboundConnection' {connectionId} -> connectionId) (\s@DeleteInboundConnection' {} a -> s {connectionId = a} :: DeleteInboundConnection)++instance Core.AWSRequest DeleteInboundConnection where+ type+ AWSResponse DeleteInboundConnection =+ DeleteInboundConnectionResponse+ request overrides =+ Request.delete (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DeleteInboundConnectionResponse'+ Prelude.<$> (x Data..?> "Connection")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DeleteInboundConnection where+ hashWithSalt _salt DeleteInboundConnection' {..} =+ _salt `Prelude.hashWithSalt` connectionId++instance Prelude.NFData DeleteInboundConnection where+ rnf DeleteInboundConnection' {..} =+ Prelude.rnf connectionId++instance Data.ToHeaders DeleteInboundConnection where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DeleteInboundConnection where+ toPath DeleteInboundConnection' {..} =+ Prelude.mconcat+ [ "/2021-01-01/opensearch/cc/inboundConnection/",+ Data.toBS connectionId+ ]++instance Data.ToQuery DeleteInboundConnection where+ toQuery = Prelude.const Prelude.mempty++-- | The results of a @DeleteInboundConnection@ operation. Contains details+-- about the deleted inbound connection.+--+-- /See:/ 'newDeleteInboundConnectionResponse' smart constructor.+data DeleteInboundConnectionResponse = DeleteInboundConnectionResponse'+ { -- | The deleted inbound connection.+ connection :: Prelude.Maybe InboundConnection,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteInboundConnectionResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'connection', 'deleteInboundConnectionResponse_connection' - The deleted inbound connection.+--+-- 'httpStatus', 'deleteInboundConnectionResponse_httpStatus' - The response's http status code.+newDeleteInboundConnectionResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeleteInboundConnectionResponse+newDeleteInboundConnectionResponse pHttpStatus_ =+ DeleteInboundConnectionResponse'+ { connection =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The deleted inbound connection.+deleteInboundConnectionResponse_connection :: Lens.Lens' DeleteInboundConnectionResponse (Prelude.Maybe InboundConnection)+deleteInboundConnectionResponse_connection = Lens.lens (\DeleteInboundConnectionResponse' {connection} -> connection) (\s@DeleteInboundConnectionResponse' {} a -> s {connection = a} :: DeleteInboundConnectionResponse)++-- | The response's http status code.+deleteInboundConnectionResponse_httpStatus :: Lens.Lens' DeleteInboundConnectionResponse Prelude.Int+deleteInboundConnectionResponse_httpStatus = Lens.lens (\DeleteInboundConnectionResponse' {httpStatus} -> httpStatus) (\s@DeleteInboundConnectionResponse' {} a -> s {httpStatus = a} :: DeleteInboundConnectionResponse)++instance+ Prelude.NFData+ DeleteInboundConnectionResponse+ where+ rnf DeleteInboundConnectionResponse' {..} =+ Prelude.rnf connection+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/OpenSearch/DeleteOutboundConnection.hs view
@@ -0,0 +1,168 @@+{-# 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.OpenSearch.DeleteOutboundConnection+-- 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 source Amazon OpenSearch Service domain owner to delete an+-- existing outbound cross-cluster search connection. For more information,+-- see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/cross-cluster-search.html Cross-cluster search for Amazon OpenSearch Service>.+module Amazonka.OpenSearch.DeleteOutboundConnection+ ( -- * Creating a Request+ DeleteOutboundConnection (..),+ newDeleteOutboundConnection,++ -- * Request Lenses+ deleteOutboundConnection_connectionId,++ -- * Destructuring the Response+ DeleteOutboundConnectionResponse (..),+ newDeleteOutboundConnectionResponse,++ -- * Response Lenses+ deleteOutboundConnectionResponse_connection,+ deleteOutboundConnectionResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Container for the parameters to the @DeleteOutboundConnection@+-- operation.+--+-- /See:/ 'newDeleteOutboundConnection' smart constructor.+data DeleteOutboundConnection = DeleteOutboundConnection'+ { -- | The ID of the outbound connection you want to permanently delete.+ connectionId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteOutboundConnection' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'connectionId', 'deleteOutboundConnection_connectionId' - The ID of the outbound connection you want to permanently delete.+newDeleteOutboundConnection ::+ -- | 'connectionId'+ Prelude.Text ->+ DeleteOutboundConnection+newDeleteOutboundConnection pConnectionId_ =+ DeleteOutboundConnection'+ { connectionId =+ pConnectionId_+ }++-- | The ID of the outbound connection you want to permanently delete.+deleteOutboundConnection_connectionId :: Lens.Lens' DeleteOutboundConnection Prelude.Text+deleteOutboundConnection_connectionId = Lens.lens (\DeleteOutboundConnection' {connectionId} -> connectionId) (\s@DeleteOutboundConnection' {} a -> s {connectionId = a} :: DeleteOutboundConnection)++instance Core.AWSRequest DeleteOutboundConnection where+ type+ AWSResponse DeleteOutboundConnection =+ DeleteOutboundConnectionResponse+ request overrides =+ Request.delete (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DeleteOutboundConnectionResponse'+ Prelude.<$> (x Data..?> "Connection")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DeleteOutboundConnection where+ hashWithSalt _salt DeleteOutboundConnection' {..} =+ _salt `Prelude.hashWithSalt` connectionId++instance Prelude.NFData DeleteOutboundConnection where+ rnf DeleteOutboundConnection' {..} =+ Prelude.rnf connectionId++instance Data.ToHeaders DeleteOutboundConnection where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DeleteOutboundConnection where+ toPath DeleteOutboundConnection' {..} =+ Prelude.mconcat+ [ "/2021-01-01/opensearch/cc/outboundConnection/",+ Data.toBS connectionId+ ]++instance Data.ToQuery DeleteOutboundConnection where+ toQuery = Prelude.const Prelude.mempty++-- | Details about the deleted outbound connection.+--+-- /See:/ 'newDeleteOutboundConnectionResponse' smart constructor.+data DeleteOutboundConnectionResponse = DeleteOutboundConnectionResponse'+ { -- | The deleted inbound connection.+ connection :: Prelude.Maybe OutboundConnection,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteOutboundConnectionResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'connection', 'deleteOutboundConnectionResponse_connection' - The deleted inbound connection.+--+-- 'httpStatus', 'deleteOutboundConnectionResponse_httpStatus' - The response's http status code.+newDeleteOutboundConnectionResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeleteOutboundConnectionResponse+newDeleteOutboundConnectionResponse pHttpStatus_ =+ DeleteOutboundConnectionResponse'+ { connection =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The deleted inbound connection.+deleteOutboundConnectionResponse_connection :: Lens.Lens' DeleteOutboundConnectionResponse (Prelude.Maybe OutboundConnection)+deleteOutboundConnectionResponse_connection = Lens.lens (\DeleteOutboundConnectionResponse' {connection} -> connection) (\s@DeleteOutboundConnectionResponse' {} a -> s {connection = a} :: DeleteOutboundConnectionResponse)++-- | The response's http status code.+deleteOutboundConnectionResponse_httpStatus :: Lens.Lens' DeleteOutboundConnectionResponse Prelude.Int+deleteOutboundConnectionResponse_httpStatus = Lens.lens (\DeleteOutboundConnectionResponse' {httpStatus} -> httpStatus) (\s@DeleteOutboundConnectionResponse' {} a -> s {httpStatus = a} :: DeleteOutboundConnectionResponse)++instance+ Prelude.NFData+ DeleteOutboundConnectionResponse+ where+ rnf DeleteOutboundConnectionResponse' {..} =+ Prelude.rnf connection+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/OpenSearch/DeletePackage.hs view
@@ -0,0 +1,160 @@+{-# 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.OpenSearch.DeletePackage+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes an Amazon OpenSearch Service package. For more information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/custom-packages.html Custom packages for Amazon OpenSearch Service>.+module Amazonka.OpenSearch.DeletePackage+ ( -- * Creating a Request+ DeletePackage (..),+ newDeletePackage,++ -- * Request Lenses+ deletePackage_packageID,++ -- * Destructuring the Response+ DeletePackageResponse (..),+ newDeletePackageResponse,++ -- * Response Lenses+ deletePackageResponse_packageDetails,+ deletePackageResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Deletes a package from OpenSearch Service. The package can\'t be+-- associated with any OpenSearch Service domain.+--+-- /See:/ 'newDeletePackage' smart constructor.+data DeletePackage = DeletePackage'+ { -- | The internal ID of the package you want to delete. Use+ -- @DescribePackages@ to find this value.+ packageID :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeletePackage' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'packageID', 'deletePackage_packageID' - The internal ID of the package you want to delete. Use+-- @DescribePackages@ to find this value.+newDeletePackage ::+ -- | 'packageID'+ Prelude.Text ->+ DeletePackage+newDeletePackage pPackageID_ =+ DeletePackage' {packageID = pPackageID_}++-- | The internal ID of the package you want to delete. Use+-- @DescribePackages@ to find this value.+deletePackage_packageID :: Lens.Lens' DeletePackage Prelude.Text+deletePackage_packageID = Lens.lens (\DeletePackage' {packageID} -> packageID) (\s@DeletePackage' {} a -> s {packageID = a} :: DeletePackage)++instance Core.AWSRequest DeletePackage where+ type+ AWSResponse DeletePackage =+ DeletePackageResponse+ request overrides =+ Request.delete (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DeletePackageResponse'+ Prelude.<$> (x Data..?> "PackageDetails")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DeletePackage where+ hashWithSalt _salt DeletePackage' {..} =+ _salt `Prelude.hashWithSalt` packageID++instance Prelude.NFData DeletePackage where+ rnf DeletePackage' {..} = Prelude.rnf packageID++instance Data.ToHeaders DeletePackage where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DeletePackage where+ toPath DeletePackage' {..} =+ Prelude.mconcat+ ["/2021-01-01/packages/", Data.toBS packageID]++instance Data.ToQuery DeletePackage where+ toQuery = Prelude.const Prelude.mempty++-- | Container for the response parameters to the @DeletePackage@ operation.+--+-- /See:/ 'newDeletePackageResponse' smart constructor.+data DeletePackageResponse = DeletePackageResponse'+ { -- | Information about the deleted package.+ packageDetails :: Prelude.Maybe PackageDetails,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeletePackageResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'packageDetails', 'deletePackageResponse_packageDetails' - Information about the deleted package.+--+-- 'httpStatus', 'deletePackageResponse_httpStatus' - The response's http status code.+newDeletePackageResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeletePackageResponse+newDeletePackageResponse pHttpStatus_ =+ DeletePackageResponse'+ { packageDetails =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Information about the deleted package.+deletePackageResponse_packageDetails :: Lens.Lens' DeletePackageResponse (Prelude.Maybe PackageDetails)+deletePackageResponse_packageDetails = Lens.lens (\DeletePackageResponse' {packageDetails} -> packageDetails) (\s@DeletePackageResponse' {} a -> s {packageDetails = a} :: DeletePackageResponse)++-- | The response's http status code.+deletePackageResponse_httpStatus :: Lens.Lens' DeletePackageResponse Prelude.Int+deletePackageResponse_httpStatus = Lens.lens (\DeletePackageResponse' {httpStatus} -> httpStatus) (\s@DeletePackageResponse' {} a -> s {httpStatus = a} :: DeletePackageResponse)++instance Prelude.NFData DeletePackageResponse where+ rnf DeletePackageResponse' {..} =+ Prelude.rnf packageDetails+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/OpenSearch/DeleteVpcEndpoint.hs view
@@ -0,0 +1,161 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.OpenSearch.DeleteVpcEndpoint+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes an Amazon OpenSearch Service-managed interface VPC endpoint.+module Amazonka.OpenSearch.DeleteVpcEndpoint+ ( -- * Creating a Request+ DeleteVpcEndpoint (..),+ newDeleteVpcEndpoint,++ -- * Request Lenses+ deleteVpcEndpoint_vpcEndpointId,++ -- * Destructuring the Response+ DeleteVpcEndpointResponse (..),+ newDeleteVpcEndpointResponse,++ -- * Response Lenses+ deleteVpcEndpointResponse_httpStatus,+ deleteVpcEndpointResponse_vpcEndpointSummary,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteVpcEndpoint' smart constructor.+data DeleteVpcEndpoint = DeleteVpcEndpoint'+ { -- | The unique identifier of the endpoint.+ vpcEndpointId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteVpcEndpoint' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'vpcEndpointId', 'deleteVpcEndpoint_vpcEndpointId' - The unique identifier of the endpoint.+newDeleteVpcEndpoint ::+ -- | 'vpcEndpointId'+ Prelude.Text ->+ DeleteVpcEndpoint+newDeleteVpcEndpoint pVpcEndpointId_ =+ DeleteVpcEndpoint' {vpcEndpointId = pVpcEndpointId_}++-- | The unique identifier of the endpoint.+deleteVpcEndpoint_vpcEndpointId :: Lens.Lens' DeleteVpcEndpoint Prelude.Text+deleteVpcEndpoint_vpcEndpointId = Lens.lens (\DeleteVpcEndpoint' {vpcEndpointId} -> vpcEndpointId) (\s@DeleteVpcEndpoint' {} a -> s {vpcEndpointId = a} :: DeleteVpcEndpoint)++instance Core.AWSRequest DeleteVpcEndpoint where+ type+ AWSResponse DeleteVpcEndpoint =+ DeleteVpcEndpointResponse+ request overrides =+ Request.delete (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DeleteVpcEndpointResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..:> "VpcEndpointSummary")+ )++instance Prelude.Hashable DeleteVpcEndpoint where+ hashWithSalt _salt DeleteVpcEndpoint' {..} =+ _salt `Prelude.hashWithSalt` vpcEndpointId++instance Prelude.NFData DeleteVpcEndpoint where+ rnf DeleteVpcEndpoint' {..} =+ Prelude.rnf vpcEndpointId++instance Data.ToHeaders DeleteVpcEndpoint where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DeleteVpcEndpoint where+ toPath DeleteVpcEndpoint' {..} =+ Prelude.mconcat+ [ "/2021-01-01/opensearch/vpcEndpoints/",+ Data.toBS vpcEndpointId+ ]++instance Data.ToQuery DeleteVpcEndpoint where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteVpcEndpointResponse' smart constructor.+data DeleteVpcEndpointResponse = DeleteVpcEndpointResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | Information about the deleted endpoint, including its current status+ -- (@DELETING@ or @DELETE_FAILED@).+ vpcEndpointSummary :: VpcEndpointSummary+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteVpcEndpointResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'deleteVpcEndpointResponse_httpStatus' - The response's http status code.+--+-- 'vpcEndpointSummary', 'deleteVpcEndpointResponse_vpcEndpointSummary' - Information about the deleted endpoint, including its current status+-- (@DELETING@ or @DELETE_FAILED@).+newDeleteVpcEndpointResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'vpcEndpointSummary'+ VpcEndpointSummary ->+ DeleteVpcEndpointResponse+newDeleteVpcEndpointResponse+ pHttpStatus_+ pVpcEndpointSummary_ =+ DeleteVpcEndpointResponse'+ { httpStatus =+ pHttpStatus_,+ vpcEndpointSummary = pVpcEndpointSummary_+ }++-- | The response's http status code.+deleteVpcEndpointResponse_httpStatus :: Lens.Lens' DeleteVpcEndpointResponse Prelude.Int+deleteVpcEndpointResponse_httpStatus = Lens.lens (\DeleteVpcEndpointResponse' {httpStatus} -> httpStatus) (\s@DeleteVpcEndpointResponse' {} a -> s {httpStatus = a} :: DeleteVpcEndpointResponse)++-- | Information about the deleted endpoint, including its current status+-- (@DELETING@ or @DELETE_FAILED@).+deleteVpcEndpointResponse_vpcEndpointSummary :: Lens.Lens' DeleteVpcEndpointResponse VpcEndpointSummary+deleteVpcEndpointResponse_vpcEndpointSummary = Lens.lens (\DeleteVpcEndpointResponse' {vpcEndpointSummary} -> vpcEndpointSummary) (\s@DeleteVpcEndpointResponse' {} a -> s {vpcEndpointSummary = a} :: DeleteVpcEndpointResponse)++instance Prelude.NFData DeleteVpcEndpointResponse where+ rnf DeleteVpcEndpointResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf vpcEndpointSummary
+ gen/Amazonka/OpenSearch/DescribeDomain.hs view
@@ -0,0 +1,163 @@+{-# 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.OpenSearch.DescribeDomain+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Describes the domain configuration for the specified Amazon OpenSearch+-- Service domain, including the domain ID, domain service endpoint, and+-- domain ARN.+module Amazonka.OpenSearch.DescribeDomain+ ( -- * Creating a Request+ DescribeDomain (..),+ newDescribeDomain,++ -- * Request Lenses+ describeDomain_domainName,++ -- * Destructuring the Response+ DescribeDomainResponse (..),+ newDescribeDomainResponse,++ -- * Response Lenses+ describeDomainResponse_httpStatus,+ describeDomainResponse_domainStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Container for the parameters to the @DescribeDomain@ operation.+--+-- /See:/ 'newDescribeDomain' smart constructor.+data DescribeDomain = DescribeDomain'+ { -- | The name of the domain that you want information about.+ domainName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeDomain' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domainName', 'describeDomain_domainName' - The name of the domain that you want information about.+newDescribeDomain ::+ -- | 'domainName'+ Prelude.Text ->+ DescribeDomain+newDescribeDomain pDomainName_ =+ DescribeDomain' {domainName = pDomainName_}++-- | The name of the domain that you want information about.+describeDomain_domainName :: Lens.Lens' DescribeDomain Prelude.Text+describeDomain_domainName = Lens.lens (\DescribeDomain' {domainName} -> domainName) (\s@DescribeDomain' {} a -> s {domainName = a} :: DescribeDomain)++instance Core.AWSRequest DescribeDomain where+ type+ AWSResponse DescribeDomain =+ DescribeDomainResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribeDomainResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..:> "DomainStatus")+ )++instance Prelude.Hashable DescribeDomain where+ hashWithSalt _salt DescribeDomain' {..} =+ _salt `Prelude.hashWithSalt` domainName++instance Prelude.NFData DescribeDomain where+ rnf DescribeDomain' {..} = Prelude.rnf domainName++instance Data.ToHeaders DescribeDomain where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DescribeDomain where+ toPath DescribeDomain' {..} =+ Prelude.mconcat+ [ "/2021-01-01/opensearch/domain/",+ Data.toBS domainName+ ]++instance Data.ToQuery DescribeDomain where+ toQuery = Prelude.const Prelude.mempty++-- | Contains the status of the domain specified in the request.+--+-- /See:/ 'newDescribeDomainResponse' smart constructor.+data DescribeDomainResponse = DescribeDomainResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | List that contains the status of each specified OpenSearch Service+ -- domain.+ domainStatus :: DomainStatus+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeDomainResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'describeDomainResponse_httpStatus' - The response's http status code.+--+-- 'domainStatus', 'describeDomainResponse_domainStatus' - List that contains the status of each specified OpenSearch Service+-- domain.+newDescribeDomainResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'domainStatus'+ DomainStatus ->+ DescribeDomainResponse+newDescribeDomainResponse pHttpStatus_ pDomainStatus_ =+ DescribeDomainResponse'+ { httpStatus = pHttpStatus_,+ domainStatus = pDomainStatus_+ }++-- | The response's http status code.+describeDomainResponse_httpStatus :: Lens.Lens' DescribeDomainResponse Prelude.Int+describeDomainResponse_httpStatus = Lens.lens (\DescribeDomainResponse' {httpStatus} -> httpStatus) (\s@DescribeDomainResponse' {} a -> s {httpStatus = a} :: DescribeDomainResponse)++-- | List that contains the status of each specified OpenSearch Service+-- domain.+describeDomainResponse_domainStatus :: Lens.Lens' DescribeDomainResponse DomainStatus+describeDomainResponse_domainStatus = Lens.lens (\DescribeDomainResponse' {domainStatus} -> domainStatus) (\s@DescribeDomainResponse' {} a -> s {domainStatus = a} :: DescribeDomainResponse)++instance Prelude.NFData DescribeDomainResponse where+ rnf DescribeDomainResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf domainStatus
+ gen/Amazonka/OpenSearch/DescribeDomainAutoTunes.hs view
@@ -0,0 +1,222 @@+{-# 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.OpenSearch.DescribeDomainAutoTunes+-- 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 the list of optimizations that Auto-Tune has made to an Amazon+-- OpenSearch Service domain. For more information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/auto-tune.html Auto-Tune for Amazon OpenSearch Service>.+module Amazonka.OpenSearch.DescribeDomainAutoTunes+ ( -- * Creating a Request+ DescribeDomainAutoTunes (..),+ newDescribeDomainAutoTunes,++ -- * Request Lenses+ describeDomainAutoTunes_maxResults,+ describeDomainAutoTunes_nextToken,+ describeDomainAutoTunes_domainName,++ -- * Destructuring the Response+ DescribeDomainAutoTunesResponse (..),+ newDescribeDomainAutoTunesResponse,++ -- * Response Lenses+ describeDomainAutoTunesResponse_autoTunes,+ describeDomainAutoTunesResponse_nextToken,+ describeDomainAutoTunesResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Container for the parameters to the @DescribeDomainAutoTunes@ operation.+--+-- /See:/ 'newDescribeDomainAutoTunes' smart constructor.+data DescribeDomainAutoTunes = DescribeDomainAutoTunes'+ { -- | An optional parameter that specifies the maximum number of results to+ -- return. You can use @nextToken@ to get the next page of results.+ maxResults :: Prelude.Maybe Prelude.Int,+ -- | If your initial @DescribeDomainAutoTunes@ operation returns a+ -- @nextToken@, you can include the returned @nextToken@ in subsequent+ -- @DescribeDomainAutoTunes@ operations, which returns results in the next+ -- page.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | Name of the domain that you want Auto-Tune details about.+ domainName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeDomainAutoTunes' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'describeDomainAutoTunes_maxResults' - An optional parameter that specifies the maximum number of results to+-- return. You can use @nextToken@ to get the next page of results.+--+-- 'nextToken', 'describeDomainAutoTunes_nextToken' - If your initial @DescribeDomainAutoTunes@ operation returns a+-- @nextToken@, you can include the returned @nextToken@ in subsequent+-- @DescribeDomainAutoTunes@ operations, which returns results in the next+-- page.+--+-- 'domainName', 'describeDomainAutoTunes_domainName' - Name of the domain that you want Auto-Tune details about.+newDescribeDomainAutoTunes ::+ -- | 'domainName'+ Prelude.Text ->+ DescribeDomainAutoTunes+newDescribeDomainAutoTunes pDomainName_ =+ DescribeDomainAutoTunes'+ { maxResults =+ Prelude.Nothing,+ nextToken = Prelude.Nothing,+ domainName = pDomainName_+ }++-- | An optional parameter that specifies the maximum number of results to+-- return. You can use @nextToken@ to get the next page of results.+describeDomainAutoTunes_maxResults :: Lens.Lens' DescribeDomainAutoTunes (Prelude.Maybe Prelude.Int)+describeDomainAutoTunes_maxResults = Lens.lens (\DescribeDomainAutoTunes' {maxResults} -> maxResults) (\s@DescribeDomainAutoTunes' {} a -> s {maxResults = a} :: DescribeDomainAutoTunes)++-- | If your initial @DescribeDomainAutoTunes@ operation returns a+-- @nextToken@, you can include the returned @nextToken@ in subsequent+-- @DescribeDomainAutoTunes@ operations, which returns results in the next+-- page.+describeDomainAutoTunes_nextToken :: Lens.Lens' DescribeDomainAutoTunes (Prelude.Maybe Prelude.Text)+describeDomainAutoTunes_nextToken = Lens.lens (\DescribeDomainAutoTunes' {nextToken} -> nextToken) (\s@DescribeDomainAutoTunes' {} a -> s {nextToken = a} :: DescribeDomainAutoTunes)++-- | Name of the domain that you want Auto-Tune details about.+describeDomainAutoTunes_domainName :: Lens.Lens' DescribeDomainAutoTunes Prelude.Text+describeDomainAutoTunes_domainName = Lens.lens (\DescribeDomainAutoTunes' {domainName} -> domainName) (\s@DescribeDomainAutoTunes' {} a -> s {domainName = a} :: DescribeDomainAutoTunes)++instance Core.AWSRequest DescribeDomainAutoTunes where+ type+ AWSResponse DescribeDomainAutoTunes =+ DescribeDomainAutoTunesResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribeDomainAutoTunesResponse'+ Prelude.<$> (x Data..?> "AutoTunes" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "NextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DescribeDomainAutoTunes where+ hashWithSalt _salt DescribeDomainAutoTunes' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` domainName++instance Prelude.NFData DescribeDomainAutoTunes where+ rnf DescribeDomainAutoTunes' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf domainName++instance Data.ToHeaders DescribeDomainAutoTunes where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DescribeDomainAutoTunes where+ toPath DescribeDomainAutoTunes' {..} =+ Prelude.mconcat+ [ "/2021-01-01/opensearch/domain/",+ Data.toBS domainName,+ "/autoTunes"+ ]++instance Data.ToQuery DescribeDomainAutoTunes where+ toQuery = Prelude.const Prelude.mempty++-- | The result of a @DescribeDomainAutoTunes@ request.+--+-- /See:/ 'newDescribeDomainAutoTunesResponse' smart constructor.+data DescribeDomainAutoTunesResponse = DescribeDomainAutoTunesResponse'+ { -- | The list of setting adjustments that Auto-Tune has made to the domain.+ autoTunes :: Prelude.Maybe [AutoTune],+ -- | When @nextToken@ is returned, there are more results available. The+ -- value of @nextToken@ is a unique pagination token for each page. Make+ -- the call again using the returned token to retrieve the next page.+ 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 'DescribeDomainAutoTunesResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'autoTunes', 'describeDomainAutoTunesResponse_autoTunes' - The list of setting adjustments that Auto-Tune has made to the domain.+--+-- 'nextToken', 'describeDomainAutoTunesResponse_nextToken' - When @nextToken@ is returned, there are more results available. The+-- value of @nextToken@ is a unique pagination token for each page. Make+-- the call again using the returned token to retrieve the next page.+--+-- 'httpStatus', 'describeDomainAutoTunesResponse_httpStatus' - The response's http status code.+newDescribeDomainAutoTunesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeDomainAutoTunesResponse+newDescribeDomainAutoTunesResponse pHttpStatus_ =+ DescribeDomainAutoTunesResponse'+ { autoTunes =+ Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The list of setting adjustments that Auto-Tune has made to the domain.+describeDomainAutoTunesResponse_autoTunes :: Lens.Lens' DescribeDomainAutoTunesResponse (Prelude.Maybe [AutoTune])+describeDomainAutoTunesResponse_autoTunes = Lens.lens (\DescribeDomainAutoTunesResponse' {autoTunes} -> autoTunes) (\s@DescribeDomainAutoTunesResponse' {} a -> s {autoTunes = a} :: DescribeDomainAutoTunesResponse) Prelude.. Lens.mapping Lens.coerced++-- | When @nextToken@ is returned, there are more results available. The+-- value of @nextToken@ is a unique pagination token for each page. Make+-- the call again using the returned token to retrieve the next page.+describeDomainAutoTunesResponse_nextToken :: Lens.Lens' DescribeDomainAutoTunesResponse (Prelude.Maybe Prelude.Text)+describeDomainAutoTunesResponse_nextToken = Lens.lens (\DescribeDomainAutoTunesResponse' {nextToken} -> nextToken) (\s@DescribeDomainAutoTunesResponse' {} a -> s {nextToken = a} :: DescribeDomainAutoTunesResponse)++-- | The response's http status code.+describeDomainAutoTunesResponse_httpStatus :: Lens.Lens' DescribeDomainAutoTunesResponse Prelude.Int+describeDomainAutoTunesResponse_httpStatus = Lens.lens (\DescribeDomainAutoTunesResponse' {httpStatus} -> httpStatus) (\s@DescribeDomainAutoTunesResponse' {} a -> s {httpStatus = a} :: DescribeDomainAutoTunesResponse)++instance+ Prelude.NFData+ DescribeDomainAutoTunesResponse+ where+ rnf DescribeDomainAutoTunesResponse' {..} =+ Prelude.rnf autoTunes+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/OpenSearch/DescribeDomainChangeProgress.hs view
@@ -0,0 +1,195 @@+{-# 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.OpenSearch.DescribeDomainChangeProgress+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns information about the current blue\/green deployment happening+-- on an Amazon OpenSearch Service domain. For more information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/managedomains-configuration-changes.html Making configuration changes in Amazon OpenSearch Service>.+module Amazonka.OpenSearch.DescribeDomainChangeProgress+ ( -- * Creating a Request+ DescribeDomainChangeProgress (..),+ newDescribeDomainChangeProgress,++ -- * Request Lenses+ describeDomainChangeProgress_changeId,+ describeDomainChangeProgress_domainName,++ -- * Destructuring the Response+ DescribeDomainChangeProgressResponse (..),+ newDescribeDomainChangeProgressResponse,++ -- * Response Lenses+ describeDomainChangeProgressResponse_changeProgressStatus,+ describeDomainChangeProgressResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Container for the parameters to the @DescribeDomainChangeProgress@+-- operation.+--+-- /See:/ 'newDescribeDomainChangeProgress' smart constructor.+data DescribeDomainChangeProgress = DescribeDomainChangeProgress'+ { -- | The specific change ID for which you want to get progress information.+ -- If omitted, the request returns information about the most recent+ -- configuration change.+ changeId :: Prelude.Maybe Prelude.Text,+ -- | The name of the domain to get progress information for.+ domainName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeDomainChangeProgress' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'changeId', 'describeDomainChangeProgress_changeId' - The specific change ID for which you want to get progress information.+-- If omitted, the request returns information about the most recent+-- configuration change.+--+-- 'domainName', 'describeDomainChangeProgress_domainName' - The name of the domain to get progress information for.+newDescribeDomainChangeProgress ::+ -- | 'domainName'+ Prelude.Text ->+ DescribeDomainChangeProgress+newDescribeDomainChangeProgress pDomainName_ =+ DescribeDomainChangeProgress'+ { changeId =+ Prelude.Nothing,+ domainName = pDomainName_+ }++-- | The specific change ID for which you want to get progress information.+-- If omitted, the request returns information about the most recent+-- configuration change.+describeDomainChangeProgress_changeId :: Lens.Lens' DescribeDomainChangeProgress (Prelude.Maybe Prelude.Text)+describeDomainChangeProgress_changeId = Lens.lens (\DescribeDomainChangeProgress' {changeId} -> changeId) (\s@DescribeDomainChangeProgress' {} a -> s {changeId = a} :: DescribeDomainChangeProgress)++-- | The name of the domain to get progress information for.+describeDomainChangeProgress_domainName :: Lens.Lens' DescribeDomainChangeProgress Prelude.Text+describeDomainChangeProgress_domainName = Lens.lens (\DescribeDomainChangeProgress' {domainName} -> domainName) (\s@DescribeDomainChangeProgress' {} a -> s {domainName = a} :: DescribeDomainChangeProgress)++instance Core.AWSRequest DescribeDomainChangeProgress where+ type+ AWSResponse DescribeDomainChangeProgress =+ DescribeDomainChangeProgressResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribeDomainChangeProgressResponse'+ Prelude.<$> (x Data..?> "ChangeProgressStatus")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ DescribeDomainChangeProgress+ where+ hashWithSalt _salt DescribeDomainChangeProgress' {..} =+ _salt+ `Prelude.hashWithSalt` changeId+ `Prelude.hashWithSalt` domainName++instance Prelude.NFData DescribeDomainChangeProgress where+ rnf DescribeDomainChangeProgress' {..} =+ Prelude.rnf changeId+ `Prelude.seq` Prelude.rnf domainName++instance Data.ToHeaders DescribeDomainChangeProgress where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DescribeDomainChangeProgress where+ toPath DescribeDomainChangeProgress' {..} =+ Prelude.mconcat+ [ "/2021-01-01/opensearch/domain/",+ Data.toBS domainName,+ "/progress"+ ]++instance Data.ToQuery DescribeDomainChangeProgress where+ toQuery DescribeDomainChangeProgress' {..} =+ Prelude.mconcat ["changeid" Data.=: changeId]++-- | The result of a @DescribeDomainChangeProgress@ request. Contains+-- progress information for the requested domain change.+--+-- /See:/ 'newDescribeDomainChangeProgressResponse' smart constructor.+data DescribeDomainChangeProgressResponse = DescribeDomainChangeProgressResponse'+ { -- | Container for information about the stages of a configuration change+ -- happening on a domain.+ changeProgressStatus :: Prelude.Maybe ChangeProgressStatusDetails,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeDomainChangeProgressResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'changeProgressStatus', 'describeDomainChangeProgressResponse_changeProgressStatus' - Container for information about the stages of a configuration change+-- happening on a domain.+--+-- 'httpStatus', 'describeDomainChangeProgressResponse_httpStatus' - The response's http status code.+newDescribeDomainChangeProgressResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeDomainChangeProgressResponse+newDescribeDomainChangeProgressResponse pHttpStatus_ =+ DescribeDomainChangeProgressResponse'+ { changeProgressStatus =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Container for information about the stages of a configuration change+-- happening on a domain.+describeDomainChangeProgressResponse_changeProgressStatus :: Lens.Lens' DescribeDomainChangeProgressResponse (Prelude.Maybe ChangeProgressStatusDetails)+describeDomainChangeProgressResponse_changeProgressStatus = Lens.lens (\DescribeDomainChangeProgressResponse' {changeProgressStatus} -> changeProgressStatus) (\s@DescribeDomainChangeProgressResponse' {} a -> s {changeProgressStatus = a} :: DescribeDomainChangeProgressResponse)++-- | The response's http status code.+describeDomainChangeProgressResponse_httpStatus :: Lens.Lens' DescribeDomainChangeProgressResponse Prelude.Int+describeDomainChangeProgressResponse_httpStatus = Lens.lens (\DescribeDomainChangeProgressResponse' {httpStatus} -> httpStatus) (\s@DescribeDomainChangeProgressResponse' {} a -> s {httpStatus = a} :: DescribeDomainChangeProgressResponse)++instance+ Prelude.NFData+ DescribeDomainChangeProgressResponse+ where+ rnf DescribeDomainChangeProgressResponse' {..} =+ Prelude.rnf changeProgressStatus+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/OpenSearch/DescribeDomainConfig.hs view
@@ -0,0 +1,166 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.OpenSearch.DescribeDomainConfig+-- 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 the configuration of an Amazon OpenSearch Service domain.+module Amazonka.OpenSearch.DescribeDomainConfig+ ( -- * Creating a Request+ DescribeDomainConfig (..),+ newDescribeDomainConfig,++ -- * Request Lenses+ describeDomainConfig_domainName,++ -- * Destructuring the Response+ DescribeDomainConfigResponse (..),+ newDescribeDomainConfigResponse,++ -- * Response Lenses+ describeDomainConfigResponse_httpStatus,+ describeDomainConfigResponse_domainConfig,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Container for the parameters to the @DescribeDomainConfig@ operation.+--+-- /See:/ 'newDescribeDomainConfig' smart constructor.+data DescribeDomainConfig = DescribeDomainConfig'+ { -- | Name of the OpenSearch Service domain configuration that you want to+ -- describe.+ domainName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeDomainConfig' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domainName', 'describeDomainConfig_domainName' - Name of the OpenSearch Service domain configuration that you want to+-- describe.+newDescribeDomainConfig ::+ -- | 'domainName'+ Prelude.Text ->+ DescribeDomainConfig+newDescribeDomainConfig pDomainName_ =+ DescribeDomainConfig' {domainName = pDomainName_}++-- | Name of the OpenSearch Service domain configuration that you want to+-- describe.+describeDomainConfig_domainName :: Lens.Lens' DescribeDomainConfig Prelude.Text+describeDomainConfig_domainName = Lens.lens (\DescribeDomainConfig' {domainName} -> domainName) (\s@DescribeDomainConfig' {} a -> s {domainName = a} :: DescribeDomainConfig)++instance Core.AWSRequest DescribeDomainConfig where+ type+ AWSResponse DescribeDomainConfig =+ DescribeDomainConfigResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribeDomainConfigResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..:> "DomainConfig")+ )++instance Prelude.Hashable DescribeDomainConfig where+ hashWithSalt _salt DescribeDomainConfig' {..} =+ _salt `Prelude.hashWithSalt` domainName++instance Prelude.NFData DescribeDomainConfig where+ rnf DescribeDomainConfig' {..} =+ Prelude.rnf domainName++instance Data.ToHeaders DescribeDomainConfig where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DescribeDomainConfig where+ toPath DescribeDomainConfig' {..} =+ Prelude.mconcat+ [ "/2021-01-01/opensearch/domain/",+ Data.toBS domainName,+ "/config"+ ]++instance Data.ToQuery DescribeDomainConfig where+ toQuery = Prelude.const Prelude.mempty++-- | Contains the configuration information of the requested domain.+--+-- /See:/ 'newDescribeDomainConfigResponse' smart constructor.+data DescribeDomainConfigResponse = DescribeDomainConfigResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | Container for the configuration of the OpenSearch Service domain.+ domainConfig :: DomainConfig+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeDomainConfigResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'describeDomainConfigResponse_httpStatus' - The response's http status code.+--+-- 'domainConfig', 'describeDomainConfigResponse_domainConfig' - Container for the configuration of the OpenSearch Service domain.+newDescribeDomainConfigResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'domainConfig'+ DomainConfig ->+ DescribeDomainConfigResponse+newDescribeDomainConfigResponse+ pHttpStatus_+ pDomainConfig_ =+ DescribeDomainConfigResponse'+ { httpStatus =+ pHttpStatus_,+ domainConfig = pDomainConfig_+ }++-- | The response's http status code.+describeDomainConfigResponse_httpStatus :: Lens.Lens' DescribeDomainConfigResponse Prelude.Int+describeDomainConfigResponse_httpStatus = Lens.lens (\DescribeDomainConfigResponse' {httpStatus} -> httpStatus) (\s@DescribeDomainConfigResponse' {} a -> s {httpStatus = a} :: DescribeDomainConfigResponse)++-- | Container for the configuration of the OpenSearch Service domain.+describeDomainConfigResponse_domainConfig :: Lens.Lens' DescribeDomainConfigResponse DomainConfig+describeDomainConfigResponse_domainConfig = Lens.lens (\DescribeDomainConfigResponse' {domainConfig} -> domainConfig) (\s@DescribeDomainConfigResponse' {} a -> s {domainConfig = a} :: DescribeDomainConfigResponse)++instance Prelude.NFData DescribeDomainConfigResponse where+ rnf DescribeDomainConfigResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf domainConfig
+ gen/Amazonka/OpenSearch/DescribeDomains.hs view
@@ -0,0 +1,169 @@+{-# 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.OpenSearch.DescribeDomains+-- 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 domain configuration information about the specified Amazon+-- OpenSearch Service domains.+module Amazonka.OpenSearch.DescribeDomains+ ( -- * Creating a Request+ DescribeDomains (..),+ newDescribeDomains,++ -- * Request Lenses+ describeDomains_domainNames,++ -- * Destructuring the Response+ DescribeDomainsResponse (..),+ newDescribeDomainsResponse,++ -- * Response Lenses+ describeDomainsResponse_httpStatus,+ describeDomainsResponse_domainStatusList,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Container for the parameters to the @DescribeDomains@ operation.+--+-- /See:/ 'newDescribeDomains' smart constructor.+data DescribeDomains = DescribeDomains'+ { -- | Array of OpenSearch Service domain names that you want information+ -- about. If you don\'t specify any domains, OpenSearch Service returns+ -- information about all domains owned by the account.+ domainNames :: [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeDomains' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domainNames', 'describeDomains_domainNames' - Array of OpenSearch Service domain names that you want information+-- about. If you don\'t specify any domains, OpenSearch Service returns+-- information about all domains owned by the account.+newDescribeDomains ::+ DescribeDomains+newDescribeDomains =+ DescribeDomains' {domainNames = Prelude.mempty}++-- | Array of OpenSearch Service domain names that you want information+-- about. If you don\'t specify any domains, OpenSearch Service returns+-- information about all domains owned by the account.+describeDomains_domainNames :: Lens.Lens' DescribeDomains [Prelude.Text]+describeDomains_domainNames = Lens.lens (\DescribeDomains' {domainNames} -> domainNames) (\s@DescribeDomains' {} a -> s {domainNames = a} :: DescribeDomains) Prelude.. Lens.coerced++instance Core.AWSRequest DescribeDomains where+ type+ AWSResponse DescribeDomains =+ DescribeDomainsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribeDomainsResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> ( x+ Data..?> "DomainStatusList"+ Core..!@ Prelude.mempty+ )+ )++instance Prelude.Hashable DescribeDomains where+ hashWithSalt _salt DescribeDomains' {..} =+ _salt `Prelude.hashWithSalt` domainNames++instance Prelude.NFData DescribeDomains where+ rnf DescribeDomains' {..} = Prelude.rnf domainNames++instance Data.ToHeaders DescribeDomains where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToJSON DescribeDomains where+ toJSON DescribeDomains' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("DomainNames" Data..= domainNames)]+ )++instance Data.ToPath DescribeDomains where+ toPath =+ Prelude.const "/2021-01-01/opensearch/domain-info"++instance Data.ToQuery DescribeDomains where+ toQuery = Prelude.const Prelude.mempty++-- | Contains the status of the specified domains or all domains owned by the+-- account.+--+-- /See:/ 'newDescribeDomainsResponse' smart constructor.+data DescribeDomainsResponse = DescribeDomainsResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | The status of the requested domains.+ domainStatusList :: [DomainStatus]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeDomainsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'describeDomainsResponse_httpStatus' - The response's http status code.+--+-- 'domainStatusList', 'describeDomainsResponse_domainStatusList' - The status of the requested domains.+newDescribeDomainsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeDomainsResponse+newDescribeDomainsResponse pHttpStatus_ =+ DescribeDomainsResponse'+ { httpStatus = pHttpStatus_,+ domainStatusList = Prelude.mempty+ }++-- | The response's http status code.+describeDomainsResponse_httpStatus :: Lens.Lens' DescribeDomainsResponse Prelude.Int+describeDomainsResponse_httpStatus = Lens.lens (\DescribeDomainsResponse' {httpStatus} -> httpStatus) (\s@DescribeDomainsResponse' {} a -> s {httpStatus = a} :: DescribeDomainsResponse)++-- | The status of the requested domains.+describeDomainsResponse_domainStatusList :: Lens.Lens' DescribeDomainsResponse [DomainStatus]+describeDomainsResponse_domainStatusList = Lens.lens (\DescribeDomainsResponse' {domainStatusList} -> domainStatusList) (\s@DescribeDomainsResponse' {} a -> s {domainStatusList = a} :: DescribeDomainsResponse) Prelude.. Lens.coerced++instance Prelude.NFData DescribeDomainsResponse where+ rnf DescribeDomainsResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf domainStatusList
+ gen/Amazonka/OpenSearch/DescribeInboundConnections.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.OpenSearch.DescribeInboundConnections+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists all the inbound cross-cluster search connections for a destination+-- (remote) Amazon OpenSearch Service domain. For more information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/cross-cluster-search.html Cross-cluster search for Amazon OpenSearch Service>.+module Amazonka.OpenSearch.DescribeInboundConnections+ ( -- * Creating a Request+ DescribeInboundConnections (..),+ newDescribeInboundConnections,++ -- * Request Lenses+ describeInboundConnections_filters,+ describeInboundConnections_maxResults,+ describeInboundConnections_nextToken,++ -- * Destructuring the Response+ DescribeInboundConnectionsResponse (..),+ newDescribeInboundConnectionsResponse,++ -- * Response Lenses+ describeInboundConnectionsResponse_connections,+ describeInboundConnectionsResponse_nextToken,+ describeInboundConnectionsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Container for the parameters to the @DescribeInboundConnections@+-- operation.+--+-- /See:/ 'newDescribeInboundConnections' smart constructor.+data DescribeInboundConnections = DescribeInboundConnections'+ { -- | A list of filters used to match properties for inbound cross-cluster+ -- connections.+ filters :: Prelude.Maybe [Filter],+ -- | An optional parameter that specifies the maximum number of results to+ -- return. You can use @nextToken@ to get the next page of results.+ maxResults :: Prelude.Maybe Prelude.Int,+ -- | If your initial @DescribeInboundConnections@ operation returns a+ -- @nextToken@, you can include the returned @nextToken@ in subsequent+ -- @DescribeInboundConnections@ operations, which returns results in the+ -- next page.+ nextToken :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeInboundConnections' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'describeInboundConnections_filters' - A list of filters used to match properties for inbound cross-cluster+-- connections.+--+-- 'maxResults', 'describeInboundConnections_maxResults' - An optional parameter that specifies the maximum number of results to+-- return. You can use @nextToken@ to get the next page of results.+--+-- 'nextToken', 'describeInboundConnections_nextToken' - If your initial @DescribeInboundConnections@ operation returns a+-- @nextToken@, you can include the returned @nextToken@ in subsequent+-- @DescribeInboundConnections@ operations, which returns results in the+-- next page.+newDescribeInboundConnections ::+ DescribeInboundConnections+newDescribeInboundConnections =+ DescribeInboundConnections'+ { filters =+ Prelude.Nothing,+ maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing+ }++-- | A list of filters used to match properties for inbound cross-cluster+-- connections.+describeInboundConnections_filters :: Lens.Lens' DescribeInboundConnections (Prelude.Maybe [Filter])+describeInboundConnections_filters = Lens.lens (\DescribeInboundConnections' {filters} -> filters) (\s@DescribeInboundConnections' {} a -> s {filters = a} :: DescribeInboundConnections) Prelude.. Lens.mapping Lens.coerced++-- | An optional parameter that specifies the maximum number of results to+-- return. You can use @nextToken@ to get the next page of results.+describeInboundConnections_maxResults :: Lens.Lens' DescribeInboundConnections (Prelude.Maybe Prelude.Int)+describeInboundConnections_maxResults = Lens.lens (\DescribeInboundConnections' {maxResults} -> maxResults) (\s@DescribeInboundConnections' {} a -> s {maxResults = a} :: DescribeInboundConnections)++-- | If your initial @DescribeInboundConnections@ operation returns a+-- @nextToken@, you can include the returned @nextToken@ in subsequent+-- @DescribeInboundConnections@ operations, which returns results in the+-- next page.+describeInboundConnections_nextToken :: Lens.Lens' DescribeInboundConnections (Prelude.Maybe Prelude.Text)+describeInboundConnections_nextToken = Lens.lens (\DescribeInboundConnections' {nextToken} -> nextToken) (\s@DescribeInboundConnections' {} a -> s {nextToken = a} :: DescribeInboundConnections)++instance Core.AWSRequest DescribeInboundConnections where+ type+ AWSResponse DescribeInboundConnections =+ DescribeInboundConnectionsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribeInboundConnectionsResponse'+ Prelude.<$> (x Data..?> "Connections" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "NextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DescribeInboundConnections where+ hashWithSalt _salt DescribeInboundConnections' {..} =+ _salt+ `Prelude.hashWithSalt` filters+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken++instance Prelude.NFData DescribeInboundConnections where+ rnf DescribeInboundConnections' {..} =+ Prelude.rnf filters+ `Prelude.seq` Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken++instance Data.ToHeaders DescribeInboundConnections where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToJSON DescribeInboundConnections where+ toJSON DescribeInboundConnections' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("Filters" Data..=) Prelude.<$> filters,+ ("MaxResults" Data..=) Prelude.<$> maxResults,+ ("NextToken" Data..=) Prelude.<$> nextToken+ ]+ )++instance Data.ToPath DescribeInboundConnections where+ toPath =+ Prelude.const+ "/2021-01-01/opensearch/cc/inboundConnection/search"++instance Data.ToQuery DescribeInboundConnections where+ toQuery = Prelude.const Prelude.mempty++-- | Contains a list of connections matching the filter criteria.+--+-- /See:/ 'newDescribeInboundConnectionsResponse' smart constructor.+data DescribeInboundConnectionsResponse = DescribeInboundConnectionsResponse'+ { -- | List of inbound connections.+ connections :: Prelude.Maybe [InboundConnection],+ -- | When @nextToken@ is returned, there are more results available. The+ -- value of @nextToken@ is a unique pagination token for each page. Make+ -- the call again using the returned token to retrieve the next page.+ 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 'DescribeInboundConnectionsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'connections', 'describeInboundConnectionsResponse_connections' - List of inbound connections.+--+-- 'nextToken', 'describeInboundConnectionsResponse_nextToken' - When @nextToken@ is returned, there are more results available. The+-- value of @nextToken@ is a unique pagination token for each page. Make+-- the call again using the returned token to retrieve the next page.+--+-- 'httpStatus', 'describeInboundConnectionsResponse_httpStatus' - The response's http status code.+newDescribeInboundConnectionsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeInboundConnectionsResponse+newDescribeInboundConnectionsResponse pHttpStatus_ =+ DescribeInboundConnectionsResponse'+ { connections =+ Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | List of inbound connections.+describeInboundConnectionsResponse_connections :: Lens.Lens' DescribeInboundConnectionsResponse (Prelude.Maybe [InboundConnection])+describeInboundConnectionsResponse_connections = Lens.lens (\DescribeInboundConnectionsResponse' {connections} -> connections) (\s@DescribeInboundConnectionsResponse' {} a -> s {connections = a} :: DescribeInboundConnectionsResponse) Prelude.. Lens.mapping Lens.coerced++-- | When @nextToken@ is returned, there are more results available. The+-- value of @nextToken@ is a unique pagination token for each page. Make+-- the call again using the returned token to retrieve the next page.+describeInboundConnectionsResponse_nextToken :: Lens.Lens' DescribeInboundConnectionsResponse (Prelude.Maybe Prelude.Text)+describeInboundConnectionsResponse_nextToken = Lens.lens (\DescribeInboundConnectionsResponse' {nextToken} -> nextToken) (\s@DescribeInboundConnectionsResponse' {} a -> s {nextToken = a} :: DescribeInboundConnectionsResponse)++-- | The response's http status code.+describeInboundConnectionsResponse_httpStatus :: Lens.Lens' DescribeInboundConnectionsResponse Prelude.Int+describeInboundConnectionsResponse_httpStatus = Lens.lens (\DescribeInboundConnectionsResponse' {httpStatus} -> httpStatus) (\s@DescribeInboundConnectionsResponse' {} a -> s {httpStatus = a} :: DescribeInboundConnectionsResponse)++instance+ Prelude.NFData+ DescribeInboundConnectionsResponse+ where+ rnf DescribeInboundConnectionsResponse' {..} =+ Prelude.rnf connections+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/OpenSearch/DescribeInstanceTypeLimits.hs view
@@ -0,0 +1,211 @@+{-# 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.OpenSearch.DescribeInstanceTypeLimits+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Describes the instance count, storage, and master node limits for a+-- given OpenSearch or Elasticsearch version and instance type.+module Amazonka.OpenSearch.DescribeInstanceTypeLimits+ ( -- * Creating a Request+ DescribeInstanceTypeLimits (..),+ newDescribeInstanceTypeLimits,++ -- * Request Lenses+ describeInstanceTypeLimits_domainName,+ describeInstanceTypeLimits_instanceType,+ describeInstanceTypeLimits_engineVersion,++ -- * Destructuring the Response+ DescribeInstanceTypeLimitsResponse (..),+ newDescribeInstanceTypeLimitsResponse,++ -- * Response Lenses+ describeInstanceTypeLimitsResponse_limitsByRole,+ describeInstanceTypeLimitsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Container for the parameters to the @DescribeInstanceTypeLimits@+-- operation.+--+-- /See:/ 'newDescribeInstanceTypeLimits' smart constructor.+data DescribeInstanceTypeLimits = DescribeInstanceTypeLimits'+ { -- | The name of the domain. Only specify if you need the limits for an+ -- existing domain.+ domainName :: Prelude.Maybe Prelude.Text,+ -- | The OpenSearch Service instance type for which you need limit+ -- information.+ instanceType :: OpenSearchPartitionInstanceType,+ -- | Version of OpenSearch or Elasticsearch, in the format Elasticsearch_X.Y+ -- or OpenSearch_X.Y. Defaults to the latest version of OpenSearch.+ engineVersion :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeInstanceTypeLimits' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domainName', 'describeInstanceTypeLimits_domainName' - The name of the domain. Only specify if you need the limits for an+-- existing domain.+--+-- 'instanceType', 'describeInstanceTypeLimits_instanceType' - The OpenSearch Service instance type for which you need limit+-- information.+--+-- 'engineVersion', 'describeInstanceTypeLimits_engineVersion' - Version of OpenSearch or Elasticsearch, in the format Elasticsearch_X.Y+-- or OpenSearch_X.Y. Defaults to the latest version of OpenSearch.+newDescribeInstanceTypeLimits ::+ -- | 'instanceType'+ OpenSearchPartitionInstanceType ->+ -- | 'engineVersion'+ Prelude.Text ->+ DescribeInstanceTypeLimits+newDescribeInstanceTypeLimits+ pInstanceType_+ pEngineVersion_ =+ DescribeInstanceTypeLimits'+ { domainName =+ Prelude.Nothing,+ instanceType = pInstanceType_,+ engineVersion = pEngineVersion_+ }++-- | The name of the domain. Only specify if you need the limits for an+-- existing domain.+describeInstanceTypeLimits_domainName :: Lens.Lens' DescribeInstanceTypeLimits (Prelude.Maybe Prelude.Text)+describeInstanceTypeLimits_domainName = Lens.lens (\DescribeInstanceTypeLimits' {domainName} -> domainName) (\s@DescribeInstanceTypeLimits' {} a -> s {domainName = a} :: DescribeInstanceTypeLimits)++-- | The OpenSearch Service instance type for which you need limit+-- information.+describeInstanceTypeLimits_instanceType :: Lens.Lens' DescribeInstanceTypeLimits OpenSearchPartitionInstanceType+describeInstanceTypeLimits_instanceType = Lens.lens (\DescribeInstanceTypeLimits' {instanceType} -> instanceType) (\s@DescribeInstanceTypeLimits' {} a -> s {instanceType = a} :: DescribeInstanceTypeLimits)++-- | Version of OpenSearch or Elasticsearch, in the format Elasticsearch_X.Y+-- or OpenSearch_X.Y. Defaults to the latest version of OpenSearch.+describeInstanceTypeLimits_engineVersion :: Lens.Lens' DescribeInstanceTypeLimits Prelude.Text+describeInstanceTypeLimits_engineVersion = Lens.lens (\DescribeInstanceTypeLimits' {engineVersion} -> engineVersion) (\s@DescribeInstanceTypeLimits' {} a -> s {engineVersion = a} :: DescribeInstanceTypeLimits)++instance Core.AWSRequest DescribeInstanceTypeLimits where+ type+ AWSResponse DescribeInstanceTypeLimits =+ DescribeInstanceTypeLimitsResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribeInstanceTypeLimitsResponse'+ Prelude.<$> (x Data..?> "LimitsByRole" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DescribeInstanceTypeLimits where+ hashWithSalt _salt DescribeInstanceTypeLimits' {..} =+ _salt+ `Prelude.hashWithSalt` domainName+ `Prelude.hashWithSalt` instanceType+ `Prelude.hashWithSalt` engineVersion++instance Prelude.NFData DescribeInstanceTypeLimits where+ rnf DescribeInstanceTypeLimits' {..} =+ Prelude.rnf domainName+ `Prelude.seq` Prelude.rnf instanceType+ `Prelude.seq` Prelude.rnf engineVersion++instance Data.ToHeaders DescribeInstanceTypeLimits where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DescribeInstanceTypeLimits where+ toPath DescribeInstanceTypeLimits' {..} =+ Prelude.mconcat+ [ "/2021-01-01/opensearch/instanceTypeLimits/",+ Data.toBS engineVersion,+ "/",+ Data.toBS instanceType+ ]++instance Data.ToQuery DescribeInstanceTypeLimits where+ toQuery DescribeInstanceTypeLimits' {..} =+ Prelude.mconcat ["domainName" Data.=: domainName]++-- | Container for the parameters received from the+-- @DescribeInstanceTypeLimits@ operation.+--+-- /See:/ 'newDescribeInstanceTypeLimitsResponse' smart constructor.+data DescribeInstanceTypeLimitsResponse = DescribeInstanceTypeLimitsResponse'+ { -- | Map that contains all applicable instance type limits.@data@ refers to+ -- data nodes.@master@ refers to dedicated master nodes.+ limitsByRole :: Prelude.Maybe (Prelude.HashMap Prelude.Text Limits),+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeInstanceTypeLimitsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'limitsByRole', 'describeInstanceTypeLimitsResponse_limitsByRole' - Map that contains all applicable instance type limits.@data@ refers to+-- data nodes.@master@ refers to dedicated master nodes.+--+-- 'httpStatus', 'describeInstanceTypeLimitsResponse_httpStatus' - The response's http status code.+newDescribeInstanceTypeLimitsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeInstanceTypeLimitsResponse+newDescribeInstanceTypeLimitsResponse pHttpStatus_ =+ DescribeInstanceTypeLimitsResponse'+ { limitsByRole =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Map that contains all applicable instance type limits.@data@ refers to+-- data nodes.@master@ refers to dedicated master nodes.+describeInstanceTypeLimitsResponse_limitsByRole :: Lens.Lens' DescribeInstanceTypeLimitsResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Limits))+describeInstanceTypeLimitsResponse_limitsByRole = Lens.lens (\DescribeInstanceTypeLimitsResponse' {limitsByRole} -> limitsByRole) (\s@DescribeInstanceTypeLimitsResponse' {} a -> s {limitsByRole = a} :: DescribeInstanceTypeLimitsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+describeInstanceTypeLimitsResponse_httpStatus :: Lens.Lens' DescribeInstanceTypeLimitsResponse Prelude.Int+describeInstanceTypeLimitsResponse_httpStatus = Lens.lens (\DescribeInstanceTypeLimitsResponse' {httpStatus} -> httpStatus) (\s@DescribeInstanceTypeLimitsResponse' {} a -> s {httpStatus = a} :: DescribeInstanceTypeLimitsResponse)++instance+ Prelude.NFData+ DescribeInstanceTypeLimitsResponse+ where+ rnf DescribeInstanceTypeLimitsResponse' {..} =+ Prelude.rnf limitsByRole+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/OpenSearch/DescribeOutboundConnections.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.OpenSearch.DescribeOutboundConnections+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists all the outbound cross-cluster connections for a local (source)+-- Amazon OpenSearch Service domain. For more information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/cross-cluster-search.html Cross-cluster search for Amazon OpenSearch Service>.+module Amazonka.OpenSearch.DescribeOutboundConnections+ ( -- * Creating a Request+ DescribeOutboundConnections (..),+ newDescribeOutboundConnections,++ -- * Request Lenses+ describeOutboundConnections_filters,+ describeOutboundConnections_maxResults,+ describeOutboundConnections_nextToken,++ -- * Destructuring the Response+ DescribeOutboundConnectionsResponse (..),+ newDescribeOutboundConnectionsResponse,++ -- * Response Lenses+ describeOutboundConnectionsResponse_connections,+ describeOutboundConnectionsResponse_nextToken,+ describeOutboundConnectionsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Container for the parameters to the @DescribeOutboundConnections@+-- operation.+--+-- /See:/ 'newDescribeOutboundConnections' smart constructor.+data DescribeOutboundConnections = DescribeOutboundConnections'+ { -- | List of filter names and values that you can use for requests.+ filters :: Prelude.Maybe [Filter],+ -- | An optional parameter that specifies the maximum number of results to+ -- return. You can use @nextToken@ to get the next page of results.+ maxResults :: Prelude.Maybe Prelude.Int,+ -- | If your initial @DescribeOutboundConnections@ operation returns a+ -- @nextToken@, you can include the returned @nextToken@ in subsequent+ -- @DescribeOutboundConnections@ operations, which returns results in the+ -- next page.+ nextToken :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeOutboundConnections' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'describeOutboundConnections_filters' - List of filter names and values that you can use for requests.+--+-- 'maxResults', 'describeOutboundConnections_maxResults' - An optional parameter that specifies the maximum number of results to+-- return. You can use @nextToken@ to get the next page of results.+--+-- 'nextToken', 'describeOutboundConnections_nextToken' - If your initial @DescribeOutboundConnections@ operation returns a+-- @nextToken@, you can include the returned @nextToken@ in subsequent+-- @DescribeOutboundConnections@ operations, which returns results in the+-- next page.+newDescribeOutboundConnections ::+ DescribeOutboundConnections+newDescribeOutboundConnections =+ DescribeOutboundConnections'+ { filters =+ Prelude.Nothing,+ maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing+ }++-- | List of filter names and values that you can use for requests.+describeOutboundConnections_filters :: Lens.Lens' DescribeOutboundConnections (Prelude.Maybe [Filter])+describeOutboundConnections_filters = Lens.lens (\DescribeOutboundConnections' {filters} -> filters) (\s@DescribeOutboundConnections' {} a -> s {filters = a} :: DescribeOutboundConnections) Prelude.. Lens.mapping Lens.coerced++-- | An optional parameter that specifies the maximum number of results to+-- return. You can use @nextToken@ to get the next page of results.+describeOutboundConnections_maxResults :: Lens.Lens' DescribeOutboundConnections (Prelude.Maybe Prelude.Int)+describeOutboundConnections_maxResults = Lens.lens (\DescribeOutboundConnections' {maxResults} -> maxResults) (\s@DescribeOutboundConnections' {} a -> s {maxResults = a} :: DescribeOutboundConnections)++-- | If your initial @DescribeOutboundConnections@ operation returns a+-- @nextToken@, you can include the returned @nextToken@ in subsequent+-- @DescribeOutboundConnections@ operations, which returns results in the+-- next page.+describeOutboundConnections_nextToken :: Lens.Lens' DescribeOutboundConnections (Prelude.Maybe Prelude.Text)+describeOutboundConnections_nextToken = Lens.lens (\DescribeOutboundConnections' {nextToken} -> nextToken) (\s@DescribeOutboundConnections' {} a -> s {nextToken = a} :: DescribeOutboundConnections)++instance Core.AWSRequest DescribeOutboundConnections where+ type+ AWSResponse DescribeOutboundConnections =+ DescribeOutboundConnectionsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribeOutboundConnectionsResponse'+ Prelude.<$> (x Data..?> "Connections" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "NextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DescribeOutboundConnections where+ hashWithSalt _salt DescribeOutboundConnections' {..} =+ _salt+ `Prelude.hashWithSalt` filters+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken++instance Prelude.NFData DescribeOutboundConnections where+ rnf DescribeOutboundConnections' {..} =+ Prelude.rnf filters+ `Prelude.seq` Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken++instance Data.ToHeaders DescribeOutboundConnections where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToJSON DescribeOutboundConnections where+ toJSON DescribeOutboundConnections' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("Filters" Data..=) Prelude.<$> filters,+ ("MaxResults" Data..=) Prelude.<$> maxResults,+ ("NextToken" Data..=) Prelude.<$> nextToken+ ]+ )++instance Data.ToPath DescribeOutboundConnections where+ toPath =+ Prelude.const+ "/2021-01-01/opensearch/cc/outboundConnection/search"++instance Data.ToQuery DescribeOutboundConnections where+ toQuery = Prelude.const Prelude.mempty++-- | Contains a list of connections matching the filter criteria.+--+-- /See:/ 'newDescribeOutboundConnectionsResponse' smart constructor.+data DescribeOutboundConnectionsResponse = DescribeOutboundConnectionsResponse'+ { -- | List of outbound connections that match the filter criteria.+ connections :: Prelude.Maybe [OutboundConnection],+ -- | When @nextToken@ is returned, there are more results available. The+ -- value of @nextToken@ is a unique pagination token for each page. Make+ -- the call again using the returned token to retrieve the next page.+ 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 'DescribeOutboundConnectionsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'connections', 'describeOutboundConnectionsResponse_connections' - List of outbound connections that match the filter criteria.+--+-- 'nextToken', 'describeOutboundConnectionsResponse_nextToken' - When @nextToken@ is returned, there are more results available. The+-- value of @nextToken@ is a unique pagination token for each page. Make+-- the call again using the returned token to retrieve the next page.+--+-- 'httpStatus', 'describeOutboundConnectionsResponse_httpStatus' - The response's http status code.+newDescribeOutboundConnectionsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeOutboundConnectionsResponse+newDescribeOutboundConnectionsResponse pHttpStatus_ =+ DescribeOutboundConnectionsResponse'+ { connections =+ Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | List of outbound connections that match the filter criteria.+describeOutboundConnectionsResponse_connections :: Lens.Lens' DescribeOutboundConnectionsResponse (Prelude.Maybe [OutboundConnection])+describeOutboundConnectionsResponse_connections = Lens.lens (\DescribeOutboundConnectionsResponse' {connections} -> connections) (\s@DescribeOutboundConnectionsResponse' {} a -> s {connections = a} :: DescribeOutboundConnectionsResponse) Prelude.. Lens.mapping Lens.coerced++-- | When @nextToken@ is returned, there are more results available. The+-- value of @nextToken@ is a unique pagination token for each page. Make+-- the call again using the returned token to retrieve the next page.+describeOutboundConnectionsResponse_nextToken :: Lens.Lens' DescribeOutboundConnectionsResponse (Prelude.Maybe Prelude.Text)+describeOutboundConnectionsResponse_nextToken = Lens.lens (\DescribeOutboundConnectionsResponse' {nextToken} -> nextToken) (\s@DescribeOutboundConnectionsResponse' {} a -> s {nextToken = a} :: DescribeOutboundConnectionsResponse)++-- | The response's http status code.+describeOutboundConnectionsResponse_httpStatus :: Lens.Lens' DescribeOutboundConnectionsResponse Prelude.Int+describeOutboundConnectionsResponse_httpStatus = Lens.lens (\DescribeOutboundConnectionsResponse' {httpStatus} -> httpStatus) (\s@DescribeOutboundConnectionsResponse' {} a -> s {httpStatus = a} :: DescribeOutboundConnectionsResponse)++instance+ Prelude.NFData+ DescribeOutboundConnectionsResponse+ where+ rnf DescribeOutboundConnectionsResponse' {..} =+ Prelude.rnf connections+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/OpenSearch/DescribePackages.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.OpenSearch.DescribePackages+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Describes all packages available to OpenSearch Service. For more+-- information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/custom-packages.html Custom packages for Amazon OpenSearch Service>.+module Amazonka.OpenSearch.DescribePackages+ ( -- * Creating a Request+ DescribePackages (..),+ newDescribePackages,++ -- * Request Lenses+ describePackages_filters,+ describePackages_maxResults,+ describePackages_nextToken,++ -- * Destructuring the Response+ DescribePackagesResponse (..),+ newDescribePackagesResponse,++ -- * Response Lenses+ describePackagesResponse_nextToken,+ describePackagesResponse_packageDetailsList,+ describePackagesResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Container for the request parameters to the @DescribePackage@ operation.+--+-- /See:/ 'newDescribePackages' smart constructor.+data DescribePackages = DescribePackages'+ { -- | Only returns packages that match the @DescribePackagesFilterList@+ -- values.+ filters :: Prelude.Maybe [DescribePackagesFilter],+ -- | An optional parameter that specifies the maximum number of results to+ -- return. You can use @nextToken@ to get the next page of results.+ maxResults :: Prelude.Maybe Prelude.Int,+ -- | If your initial @DescribePackageFilters@ operation returns a+ -- @nextToken@, you can include the returned @nextToken@ in subsequent+ -- @DescribePackageFilters@ operations, which returns results in the next+ -- page.+ nextToken :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribePackages' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'describePackages_filters' - Only returns packages that match the @DescribePackagesFilterList@+-- values.+--+-- 'maxResults', 'describePackages_maxResults' - An optional parameter that specifies the maximum number of results to+-- return. You can use @nextToken@ to get the next page of results.+--+-- 'nextToken', 'describePackages_nextToken' - If your initial @DescribePackageFilters@ operation returns a+-- @nextToken@, you can include the returned @nextToken@ in subsequent+-- @DescribePackageFilters@ operations, which returns results in the next+-- page.+newDescribePackages ::+ DescribePackages+newDescribePackages =+ DescribePackages'+ { filters = Prelude.Nothing,+ maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing+ }++-- | Only returns packages that match the @DescribePackagesFilterList@+-- values.+describePackages_filters :: Lens.Lens' DescribePackages (Prelude.Maybe [DescribePackagesFilter])+describePackages_filters = Lens.lens (\DescribePackages' {filters} -> filters) (\s@DescribePackages' {} a -> s {filters = a} :: DescribePackages) Prelude.. Lens.mapping Lens.coerced++-- | An optional parameter that specifies the maximum number of results to+-- return. You can use @nextToken@ to get the next page of results.+describePackages_maxResults :: Lens.Lens' DescribePackages (Prelude.Maybe Prelude.Int)+describePackages_maxResults = Lens.lens (\DescribePackages' {maxResults} -> maxResults) (\s@DescribePackages' {} a -> s {maxResults = a} :: DescribePackages)++-- | If your initial @DescribePackageFilters@ operation returns a+-- @nextToken@, you can include the returned @nextToken@ in subsequent+-- @DescribePackageFilters@ operations, which returns results in the next+-- page.+describePackages_nextToken :: Lens.Lens' DescribePackages (Prelude.Maybe Prelude.Text)+describePackages_nextToken = Lens.lens (\DescribePackages' {nextToken} -> nextToken) (\s@DescribePackages' {} a -> s {nextToken = a} :: DescribePackages)++instance Core.AWSRequest DescribePackages where+ type+ AWSResponse DescribePackages =+ DescribePackagesResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribePackagesResponse'+ Prelude.<$> (x Data..?> "NextToken")+ Prelude.<*> ( x+ Data..?> "PackageDetailsList"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DescribePackages where+ hashWithSalt _salt DescribePackages' {..} =+ _salt+ `Prelude.hashWithSalt` filters+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken++instance Prelude.NFData DescribePackages where+ rnf DescribePackages' {..} =+ Prelude.rnf filters+ `Prelude.seq` Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken++instance Data.ToHeaders DescribePackages where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToJSON DescribePackages where+ toJSON DescribePackages' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("Filters" Data..=) Prelude.<$> filters,+ ("MaxResults" Data..=) Prelude.<$> maxResults,+ ("NextToken" Data..=) Prelude.<$> nextToken+ ]+ )++instance Data.ToPath DescribePackages where+ toPath =+ Prelude.const "/2021-01-01/packages/describe"++instance Data.ToQuery DescribePackages where+ toQuery = Prelude.const Prelude.mempty++-- | Container for the response returned by the @DescribePackages@ operation.+--+-- /See:/ 'newDescribePackagesResponse' smart constructor.+data DescribePackagesResponse = DescribePackagesResponse'+ { -- | When @nextToken@ is returned, there are more results available. The+ -- value of @nextToken@ is a unique pagination token for each page. Make+ -- the call again using the returned token to retrieve the next page.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | Basic information about a package.+ packageDetailsList :: Prelude.Maybe [PackageDetails],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribePackagesResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'nextToken', 'describePackagesResponse_nextToken' - When @nextToken@ is returned, there are more results available. The+-- value of @nextToken@ is a unique pagination token for each page. Make+-- the call again using the returned token to retrieve the next page.+--+-- 'packageDetailsList', 'describePackagesResponse_packageDetailsList' - Basic information about a package.+--+-- 'httpStatus', 'describePackagesResponse_httpStatus' - The response's http status code.+newDescribePackagesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribePackagesResponse+newDescribePackagesResponse pHttpStatus_ =+ DescribePackagesResponse'+ { nextToken =+ Prelude.Nothing,+ packageDetailsList = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | When @nextToken@ is returned, there are more results available. The+-- value of @nextToken@ is a unique pagination token for each page. Make+-- the call again using the returned token to retrieve the next page.+describePackagesResponse_nextToken :: Lens.Lens' DescribePackagesResponse (Prelude.Maybe Prelude.Text)+describePackagesResponse_nextToken = Lens.lens (\DescribePackagesResponse' {nextToken} -> nextToken) (\s@DescribePackagesResponse' {} a -> s {nextToken = a} :: DescribePackagesResponse)++-- | Basic information about a package.+describePackagesResponse_packageDetailsList :: Lens.Lens' DescribePackagesResponse (Prelude.Maybe [PackageDetails])+describePackagesResponse_packageDetailsList = Lens.lens (\DescribePackagesResponse' {packageDetailsList} -> packageDetailsList) (\s@DescribePackagesResponse' {} a -> s {packageDetailsList = a} :: DescribePackagesResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+describePackagesResponse_httpStatus :: Lens.Lens' DescribePackagesResponse Prelude.Int+describePackagesResponse_httpStatus = Lens.lens (\DescribePackagesResponse' {httpStatus} -> httpStatus) (\s@DescribePackagesResponse' {} a -> s {httpStatus = a} :: DescribePackagesResponse)++instance Prelude.NFData DescribePackagesResponse where+ rnf DescribePackagesResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf packageDetailsList+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/OpenSearch/DescribeReservedInstanceOfferings.hs view
@@ -0,0 +1,255 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.OpenSearch.DescribeReservedInstanceOfferings+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Describes the available Amazon OpenSearch Service Reserved Instance+-- offerings for a given Region. For more information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/ri.html Reserved Instances in Amazon OpenSearch Service>.+module Amazonka.OpenSearch.DescribeReservedInstanceOfferings+ ( -- * Creating a Request+ DescribeReservedInstanceOfferings (..),+ newDescribeReservedInstanceOfferings,++ -- * Request Lenses+ describeReservedInstanceOfferings_maxResults,+ describeReservedInstanceOfferings_nextToken,+ describeReservedInstanceOfferings_reservedInstanceOfferingId,++ -- * Destructuring the Response+ DescribeReservedInstanceOfferingsResponse (..),+ newDescribeReservedInstanceOfferingsResponse,++ -- * Response Lenses+ describeReservedInstanceOfferingsResponse_nextToken,+ describeReservedInstanceOfferingsResponse_reservedInstanceOfferings,+ describeReservedInstanceOfferingsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Container for the request parameters to a+-- @DescribeReservedInstanceOfferings@ operation.+--+-- /See:/ 'newDescribeReservedInstanceOfferings' smart constructor.+data DescribeReservedInstanceOfferings = DescribeReservedInstanceOfferings'+ { -- | An optional parameter that specifies the maximum number of results to+ -- return. You can use @nextToken@ to get the next page of results.+ maxResults :: Prelude.Maybe Prelude.Int,+ -- | If your initial @DescribeReservedInstanceOfferings@ operation returns a+ -- @nextToken@, you can include the returned @nextToken@ in subsequent+ -- @DescribeReservedInstanceOfferings@ operations, which returns results in+ -- the next page.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The Reserved Instance identifier filter value. Use this parameter to+ -- show only the available instance types that match the specified+ -- reservation identifier.+ reservedInstanceOfferingId :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeReservedInstanceOfferings' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'describeReservedInstanceOfferings_maxResults' - An optional parameter that specifies the maximum number of results to+-- return. You can use @nextToken@ to get the next page of results.+--+-- 'nextToken', 'describeReservedInstanceOfferings_nextToken' - If your initial @DescribeReservedInstanceOfferings@ operation returns a+-- @nextToken@, you can include the returned @nextToken@ in subsequent+-- @DescribeReservedInstanceOfferings@ operations, which returns results in+-- the next page.+--+-- 'reservedInstanceOfferingId', 'describeReservedInstanceOfferings_reservedInstanceOfferingId' - The Reserved Instance identifier filter value. Use this parameter to+-- show only the available instance types that match the specified+-- reservation identifier.+newDescribeReservedInstanceOfferings ::+ DescribeReservedInstanceOfferings+newDescribeReservedInstanceOfferings =+ DescribeReservedInstanceOfferings'+ { maxResults =+ Prelude.Nothing,+ nextToken = Prelude.Nothing,+ reservedInstanceOfferingId =+ Prelude.Nothing+ }++-- | An optional parameter that specifies the maximum number of results to+-- return. You can use @nextToken@ to get the next page of results.+describeReservedInstanceOfferings_maxResults :: Lens.Lens' DescribeReservedInstanceOfferings (Prelude.Maybe Prelude.Int)+describeReservedInstanceOfferings_maxResults = Lens.lens (\DescribeReservedInstanceOfferings' {maxResults} -> maxResults) (\s@DescribeReservedInstanceOfferings' {} a -> s {maxResults = a} :: DescribeReservedInstanceOfferings)++-- | If your initial @DescribeReservedInstanceOfferings@ operation returns a+-- @nextToken@, you can include the returned @nextToken@ in subsequent+-- @DescribeReservedInstanceOfferings@ operations, which returns results in+-- the next page.+describeReservedInstanceOfferings_nextToken :: Lens.Lens' DescribeReservedInstanceOfferings (Prelude.Maybe Prelude.Text)+describeReservedInstanceOfferings_nextToken = Lens.lens (\DescribeReservedInstanceOfferings' {nextToken} -> nextToken) (\s@DescribeReservedInstanceOfferings' {} a -> s {nextToken = a} :: DescribeReservedInstanceOfferings)++-- | The Reserved Instance identifier filter value. Use this parameter to+-- show only the available instance types that match the specified+-- reservation identifier.+describeReservedInstanceOfferings_reservedInstanceOfferingId :: Lens.Lens' DescribeReservedInstanceOfferings (Prelude.Maybe Prelude.Text)+describeReservedInstanceOfferings_reservedInstanceOfferingId = Lens.lens (\DescribeReservedInstanceOfferings' {reservedInstanceOfferingId} -> reservedInstanceOfferingId) (\s@DescribeReservedInstanceOfferings' {} a -> s {reservedInstanceOfferingId = a} :: DescribeReservedInstanceOfferings)++instance+ Core.AWSRequest+ DescribeReservedInstanceOfferings+ where+ type+ AWSResponse DescribeReservedInstanceOfferings =+ DescribeReservedInstanceOfferingsResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribeReservedInstanceOfferingsResponse'+ Prelude.<$> (x Data..?> "NextToken")+ Prelude.<*> ( x+ Data..?> "ReservedInstanceOfferings"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ DescribeReservedInstanceOfferings+ where+ hashWithSalt+ _salt+ DescribeReservedInstanceOfferings' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` reservedInstanceOfferingId++instance+ Prelude.NFData+ DescribeReservedInstanceOfferings+ where+ rnf DescribeReservedInstanceOfferings' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf reservedInstanceOfferingId++instance+ Data.ToHeaders+ DescribeReservedInstanceOfferings+ where+ toHeaders = Prelude.const Prelude.mempty++instance+ Data.ToPath+ DescribeReservedInstanceOfferings+ where+ toPath =+ Prelude.const+ "/2021-01-01/opensearch/reservedInstanceOfferings"++instance+ Data.ToQuery+ DescribeReservedInstanceOfferings+ where+ toQuery DescribeReservedInstanceOfferings' {..} =+ Prelude.mconcat+ [ "maxResults" Data.=: maxResults,+ "nextToken" Data.=: nextToken,+ "offeringId" Data.=: reservedInstanceOfferingId+ ]++-- | Container for results of a @DescribeReservedInstanceOfferings@ request.+--+-- /See:/ 'newDescribeReservedInstanceOfferingsResponse' smart constructor.+data DescribeReservedInstanceOfferingsResponse = DescribeReservedInstanceOfferingsResponse'+ { -- | When @nextToken@ is returned, there are more results available. The+ -- value of @nextToken@ is a unique pagination token for each page. Make+ -- the call again using the returned token to retrieve the next page.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | List of Reserved Instance offerings.+ reservedInstanceOfferings :: Prelude.Maybe [ReservedInstanceOffering],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeReservedInstanceOfferingsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'nextToken', 'describeReservedInstanceOfferingsResponse_nextToken' - When @nextToken@ is returned, there are more results available. The+-- value of @nextToken@ is a unique pagination token for each page. Make+-- the call again using the returned token to retrieve the next page.+--+-- 'reservedInstanceOfferings', 'describeReservedInstanceOfferingsResponse_reservedInstanceOfferings' - List of Reserved Instance offerings.+--+-- 'httpStatus', 'describeReservedInstanceOfferingsResponse_httpStatus' - The response's http status code.+newDescribeReservedInstanceOfferingsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeReservedInstanceOfferingsResponse+newDescribeReservedInstanceOfferingsResponse+ pHttpStatus_ =+ DescribeReservedInstanceOfferingsResponse'+ { nextToken =+ Prelude.Nothing,+ reservedInstanceOfferings =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | When @nextToken@ is returned, there are more results available. The+-- value of @nextToken@ is a unique pagination token for each page. Make+-- the call again using the returned token to retrieve the next page.+describeReservedInstanceOfferingsResponse_nextToken :: Lens.Lens' DescribeReservedInstanceOfferingsResponse (Prelude.Maybe Prelude.Text)+describeReservedInstanceOfferingsResponse_nextToken = Lens.lens (\DescribeReservedInstanceOfferingsResponse' {nextToken} -> nextToken) (\s@DescribeReservedInstanceOfferingsResponse' {} a -> s {nextToken = a} :: DescribeReservedInstanceOfferingsResponse)++-- | List of Reserved Instance offerings.+describeReservedInstanceOfferingsResponse_reservedInstanceOfferings :: Lens.Lens' DescribeReservedInstanceOfferingsResponse (Prelude.Maybe [ReservedInstanceOffering])+describeReservedInstanceOfferingsResponse_reservedInstanceOfferings = Lens.lens (\DescribeReservedInstanceOfferingsResponse' {reservedInstanceOfferings} -> reservedInstanceOfferings) (\s@DescribeReservedInstanceOfferingsResponse' {} a -> s {reservedInstanceOfferings = a} :: DescribeReservedInstanceOfferingsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+describeReservedInstanceOfferingsResponse_httpStatus :: Lens.Lens' DescribeReservedInstanceOfferingsResponse Prelude.Int+describeReservedInstanceOfferingsResponse_httpStatus = Lens.lens (\DescribeReservedInstanceOfferingsResponse' {httpStatus} -> httpStatus) (\s@DescribeReservedInstanceOfferingsResponse' {} a -> s {httpStatus = a} :: DescribeReservedInstanceOfferingsResponse)++instance+ Prelude.NFData+ DescribeReservedInstanceOfferingsResponse+ where+ rnf DescribeReservedInstanceOfferingsResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf reservedInstanceOfferings+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/OpenSearch/DescribeReservedInstances.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.OpenSearch.DescribeReservedInstances+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Describes the Amazon OpenSearch Service instances that you have reserved+-- in a given Region. For more information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/ri.html Reserved Instances in Amazon OpenSearch Service>.+module Amazonka.OpenSearch.DescribeReservedInstances+ ( -- * Creating a Request+ DescribeReservedInstances (..),+ newDescribeReservedInstances,++ -- * Request Lenses+ describeReservedInstances_maxResults,+ describeReservedInstances_nextToken,+ describeReservedInstances_reservedInstanceId,++ -- * Destructuring the Response+ DescribeReservedInstancesResponse (..),+ newDescribeReservedInstancesResponse,++ -- * Response Lenses+ describeReservedInstancesResponse_nextToken,+ describeReservedInstancesResponse_reservedInstances,+ describeReservedInstancesResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Container for the request parameters to the @DescribeReservedInstances@+-- operation.+--+-- /See:/ 'newDescribeReservedInstances' smart constructor.+data DescribeReservedInstances = DescribeReservedInstances'+ { -- | An optional parameter that specifies the maximum number of results to+ -- return. You can use @nextToken@ to get the next page of results.+ maxResults :: Prelude.Maybe Prelude.Int,+ -- | If your initial @DescribeReservedInstances@ operation returns a+ -- @nextToken@, you can include the returned @nextToken@ in subsequent+ -- @DescribeReservedInstances@ operations, which returns results in the+ -- next page.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The reserved instance identifier filter value. Use this parameter to+ -- show only the reservation that matches the specified reserved OpenSearch+ -- instance ID.+ reservedInstanceId :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeReservedInstances' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'describeReservedInstances_maxResults' - An optional parameter that specifies the maximum number of results to+-- return. You can use @nextToken@ to get the next page of results.+--+-- 'nextToken', 'describeReservedInstances_nextToken' - If your initial @DescribeReservedInstances@ operation returns a+-- @nextToken@, you can include the returned @nextToken@ in subsequent+-- @DescribeReservedInstances@ operations, which returns results in the+-- next page.+--+-- 'reservedInstanceId', 'describeReservedInstances_reservedInstanceId' - The reserved instance identifier filter value. Use this parameter to+-- show only the reservation that matches the specified reserved OpenSearch+-- instance ID.+newDescribeReservedInstances ::+ DescribeReservedInstances+newDescribeReservedInstances =+ DescribeReservedInstances'+ { maxResults =+ Prelude.Nothing,+ nextToken = Prelude.Nothing,+ reservedInstanceId = Prelude.Nothing+ }++-- | An optional parameter that specifies the maximum number of results to+-- return. You can use @nextToken@ to get the next page of results.+describeReservedInstances_maxResults :: Lens.Lens' DescribeReservedInstances (Prelude.Maybe Prelude.Int)+describeReservedInstances_maxResults = Lens.lens (\DescribeReservedInstances' {maxResults} -> maxResults) (\s@DescribeReservedInstances' {} a -> s {maxResults = a} :: DescribeReservedInstances)++-- | If your initial @DescribeReservedInstances@ operation returns a+-- @nextToken@, you can include the returned @nextToken@ in subsequent+-- @DescribeReservedInstances@ operations, which returns results in the+-- next page.+describeReservedInstances_nextToken :: Lens.Lens' DescribeReservedInstances (Prelude.Maybe Prelude.Text)+describeReservedInstances_nextToken = Lens.lens (\DescribeReservedInstances' {nextToken} -> nextToken) (\s@DescribeReservedInstances' {} a -> s {nextToken = a} :: DescribeReservedInstances)++-- | The reserved instance identifier filter value. Use this parameter to+-- show only the reservation that matches the specified reserved OpenSearch+-- instance ID.+describeReservedInstances_reservedInstanceId :: Lens.Lens' DescribeReservedInstances (Prelude.Maybe Prelude.Text)+describeReservedInstances_reservedInstanceId = Lens.lens (\DescribeReservedInstances' {reservedInstanceId} -> reservedInstanceId) (\s@DescribeReservedInstances' {} a -> s {reservedInstanceId = a} :: DescribeReservedInstances)++instance Core.AWSRequest DescribeReservedInstances where+ type+ AWSResponse DescribeReservedInstances =+ DescribeReservedInstancesResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribeReservedInstancesResponse'+ Prelude.<$> (x Data..?> "NextToken")+ Prelude.<*> ( x+ Data..?> "ReservedInstances"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DescribeReservedInstances where+ hashWithSalt _salt DescribeReservedInstances' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` reservedInstanceId++instance Prelude.NFData DescribeReservedInstances where+ rnf DescribeReservedInstances' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf reservedInstanceId++instance Data.ToHeaders DescribeReservedInstances where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath DescribeReservedInstances where+ toPath =+ Prelude.const+ "/2021-01-01/opensearch/reservedInstances"++instance Data.ToQuery DescribeReservedInstances where+ toQuery DescribeReservedInstances' {..} =+ Prelude.mconcat+ [ "maxResults" Data.=: maxResults,+ "nextToken" Data.=: nextToken,+ "reservationId" Data.=: reservedInstanceId+ ]++-- | Container for results from @DescribeReservedInstances@+--+-- /See:/ 'newDescribeReservedInstancesResponse' smart constructor.+data DescribeReservedInstancesResponse = DescribeReservedInstancesResponse'+ { -- | When @nextToken@ is returned, there are more results available. The+ -- value of @nextToken@ is a unique pagination token for each page. Make+ -- the call again using the returned token to retrieve the next page.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | List of Reserved Instances in the current Region.+ reservedInstances :: Prelude.Maybe [ReservedInstance],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeReservedInstancesResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'nextToken', 'describeReservedInstancesResponse_nextToken' - When @nextToken@ is returned, there are more results available. The+-- value of @nextToken@ is a unique pagination token for each page. Make+-- the call again using the returned token to retrieve the next page.+--+-- 'reservedInstances', 'describeReservedInstancesResponse_reservedInstances' - List of Reserved Instances in the current Region.+--+-- 'httpStatus', 'describeReservedInstancesResponse_httpStatus' - The response's http status code.+newDescribeReservedInstancesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeReservedInstancesResponse+newDescribeReservedInstancesResponse pHttpStatus_ =+ DescribeReservedInstancesResponse'+ { nextToken =+ Prelude.Nothing,+ reservedInstances = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | When @nextToken@ is returned, there are more results available. The+-- value of @nextToken@ is a unique pagination token for each page. Make+-- the call again using the returned token to retrieve the next page.+describeReservedInstancesResponse_nextToken :: Lens.Lens' DescribeReservedInstancesResponse (Prelude.Maybe Prelude.Text)+describeReservedInstancesResponse_nextToken = Lens.lens (\DescribeReservedInstancesResponse' {nextToken} -> nextToken) (\s@DescribeReservedInstancesResponse' {} a -> s {nextToken = a} :: DescribeReservedInstancesResponse)++-- | List of Reserved Instances in the current Region.+describeReservedInstancesResponse_reservedInstances :: Lens.Lens' DescribeReservedInstancesResponse (Prelude.Maybe [ReservedInstance])+describeReservedInstancesResponse_reservedInstances = Lens.lens (\DescribeReservedInstancesResponse' {reservedInstances} -> reservedInstances) (\s@DescribeReservedInstancesResponse' {} a -> s {reservedInstances = a} :: DescribeReservedInstancesResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+describeReservedInstancesResponse_httpStatus :: Lens.Lens' DescribeReservedInstancesResponse Prelude.Int+describeReservedInstancesResponse_httpStatus = Lens.lens (\DescribeReservedInstancesResponse' {httpStatus} -> httpStatus) (\s@DescribeReservedInstancesResponse' {} a -> s {httpStatus = a} :: DescribeReservedInstancesResponse)++instance+ Prelude.NFData+ DescribeReservedInstancesResponse+ where+ rnf DescribeReservedInstancesResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf reservedInstances+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/OpenSearch/DescribeVpcEndpoints.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.OpenSearch.DescribeVpcEndpoints+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Describes one or more Amazon OpenSearch Service-managed VPC endpoints.+module Amazonka.OpenSearch.DescribeVpcEndpoints+ ( -- * Creating a Request+ DescribeVpcEndpoints (..),+ newDescribeVpcEndpoints,++ -- * Request Lenses+ describeVpcEndpoints_vpcEndpointIds,++ -- * Destructuring the Response+ DescribeVpcEndpointsResponse (..),+ newDescribeVpcEndpointsResponse,++ -- * Response Lenses+ describeVpcEndpointsResponse_httpStatus,+ describeVpcEndpointsResponse_vpcEndpoints,+ describeVpcEndpointsResponse_vpcEndpointErrors,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDescribeVpcEndpoints' smart constructor.+data DescribeVpcEndpoints = DescribeVpcEndpoints'+ { -- | The unique identifiers of the endpoints to get information about.+ vpcEndpointIds :: [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeVpcEndpoints' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'vpcEndpointIds', 'describeVpcEndpoints_vpcEndpointIds' - The unique identifiers of the endpoints to get information about.+newDescribeVpcEndpoints ::+ DescribeVpcEndpoints+newDescribeVpcEndpoints =+ DescribeVpcEndpoints'+ { vpcEndpointIds =+ Prelude.mempty+ }++-- | The unique identifiers of the endpoints to get information about.+describeVpcEndpoints_vpcEndpointIds :: Lens.Lens' DescribeVpcEndpoints [Prelude.Text]+describeVpcEndpoints_vpcEndpointIds = Lens.lens (\DescribeVpcEndpoints' {vpcEndpointIds} -> vpcEndpointIds) (\s@DescribeVpcEndpoints' {} a -> s {vpcEndpointIds = a} :: DescribeVpcEndpoints) Prelude.. Lens.coerced++instance Core.AWSRequest DescribeVpcEndpoints where+ type+ AWSResponse DescribeVpcEndpoints =+ DescribeVpcEndpointsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DescribeVpcEndpointsResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..?> "VpcEndpoints" Core..!@ Prelude.mempty)+ Prelude.<*> ( x+ Data..?> "VpcEndpointErrors"+ Core..!@ Prelude.mempty+ )+ )++instance Prelude.Hashable DescribeVpcEndpoints where+ hashWithSalt _salt DescribeVpcEndpoints' {..} =+ _salt `Prelude.hashWithSalt` vpcEndpointIds++instance Prelude.NFData DescribeVpcEndpoints where+ rnf DescribeVpcEndpoints' {..} =+ Prelude.rnf vpcEndpointIds++instance Data.ToHeaders DescribeVpcEndpoints where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToJSON DescribeVpcEndpoints where+ toJSON DescribeVpcEndpoints' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("VpcEndpointIds" Data..= vpcEndpointIds)+ ]+ )++instance Data.ToPath DescribeVpcEndpoints where+ toPath =+ Prelude.const+ "/2021-01-01/opensearch/vpcEndpoints/describe"++instance Data.ToQuery DescribeVpcEndpoints where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDescribeVpcEndpointsResponse' smart constructor.+data DescribeVpcEndpointsResponse = DescribeVpcEndpointsResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | Information about each requested VPC endpoint.+ vpcEndpoints :: [VpcEndpoint],+ -- | Any errors associated with the request.+ vpcEndpointErrors :: [VpcEndpointError]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribeVpcEndpointsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'describeVpcEndpointsResponse_httpStatus' - The response's http status code.+--+-- 'vpcEndpoints', 'describeVpcEndpointsResponse_vpcEndpoints' - Information about each requested VPC endpoint.+--+-- 'vpcEndpointErrors', 'describeVpcEndpointsResponse_vpcEndpointErrors' - Any errors associated with the request.+newDescribeVpcEndpointsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DescribeVpcEndpointsResponse+newDescribeVpcEndpointsResponse pHttpStatus_ =+ DescribeVpcEndpointsResponse'+ { httpStatus =+ pHttpStatus_,+ vpcEndpoints = Prelude.mempty,+ vpcEndpointErrors = Prelude.mempty+ }++-- | The response's http status code.+describeVpcEndpointsResponse_httpStatus :: Lens.Lens' DescribeVpcEndpointsResponse Prelude.Int+describeVpcEndpointsResponse_httpStatus = Lens.lens (\DescribeVpcEndpointsResponse' {httpStatus} -> httpStatus) (\s@DescribeVpcEndpointsResponse' {} a -> s {httpStatus = a} :: DescribeVpcEndpointsResponse)++-- | Information about each requested VPC endpoint.+describeVpcEndpointsResponse_vpcEndpoints :: Lens.Lens' DescribeVpcEndpointsResponse [VpcEndpoint]+describeVpcEndpointsResponse_vpcEndpoints = Lens.lens (\DescribeVpcEndpointsResponse' {vpcEndpoints} -> vpcEndpoints) (\s@DescribeVpcEndpointsResponse' {} a -> s {vpcEndpoints = a} :: DescribeVpcEndpointsResponse) Prelude.. Lens.coerced++-- | Any errors associated with the request.+describeVpcEndpointsResponse_vpcEndpointErrors :: Lens.Lens' DescribeVpcEndpointsResponse [VpcEndpointError]+describeVpcEndpointsResponse_vpcEndpointErrors = Lens.lens (\DescribeVpcEndpointsResponse' {vpcEndpointErrors} -> vpcEndpointErrors) (\s@DescribeVpcEndpointsResponse' {} a -> s {vpcEndpointErrors = a} :: DescribeVpcEndpointsResponse) Prelude.. Lens.coerced++instance Prelude.NFData DescribeVpcEndpointsResponse where+ rnf DescribeVpcEndpointsResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf vpcEndpoints+ `Prelude.seq` Prelude.rnf vpcEndpointErrors
+ gen/Amazonka/OpenSearch/DissociatePackage.hs view
@@ -0,0 +1,188 @@+{-# 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.OpenSearch.DissociatePackage+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Removes a package from the specified Amazon OpenSearch Service domain.+-- The package can\'t be in use with any OpenSearch index for the+-- dissociation to succeed. The package is still available in OpenSearch+-- Service for association later. For more information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/custom-packages.html Custom packages for Amazon OpenSearch Service>.+module Amazonka.OpenSearch.DissociatePackage+ ( -- * Creating a Request+ DissociatePackage (..),+ newDissociatePackage,++ -- * Request Lenses+ dissociatePackage_packageID,+ dissociatePackage_domainName,++ -- * Destructuring the Response+ DissociatePackageResponse (..),+ newDissociatePackageResponse,++ -- * Response Lenses+ dissociatePackageResponse_domainPackageDetails,+ dissociatePackageResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Container for the request parameters to the @DissociatePackage@+-- operation.+--+-- /See:/ 'newDissociatePackage' smart constructor.+data DissociatePackage = DissociatePackage'+ { -- | Internal ID of the package to dissociate from the domain. Use+ -- @ListPackagesForDomain@ to find this value.+ packageID :: Prelude.Text,+ -- | Name of the domain to dissociate the package from.+ domainName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DissociatePackage' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'packageID', 'dissociatePackage_packageID' - Internal ID of the package to dissociate from the domain. Use+-- @ListPackagesForDomain@ to find this value.+--+-- 'domainName', 'dissociatePackage_domainName' - Name of the domain to dissociate the package from.+newDissociatePackage ::+ -- | 'packageID'+ Prelude.Text ->+ -- | 'domainName'+ Prelude.Text ->+ DissociatePackage+newDissociatePackage pPackageID_ pDomainName_ =+ DissociatePackage'+ { packageID = pPackageID_,+ domainName = pDomainName_+ }++-- | Internal ID of the package to dissociate from the domain. Use+-- @ListPackagesForDomain@ to find this value.+dissociatePackage_packageID :: Lens.Lens' DissociatePackage Prelude.Text+dissociatePackage_packageID = Lens.lens (\DissociatePackage' {packageID} -> packageID) (\s@DissociatePackage' {} a -> s {packageID = a} :: DissociatePackage)++-- | Name of the domain to dissociate the package from.+dissociatePackage_domainName :: Lens.Lens' DissociatePackage Prelude.Text+dissociatePackage_domainName = Lens.lens (\DissociatePackage' {domainName} -> domainName) (\s@DissociatePackage' {} a -> s {domainName = a} :: DissociatePackage)++instance Core.AWSRequest DissociatePackage where+ type+ AWSResponse DissociatePackage =+ DissociatePackageResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DissociatePackageResponse'+ Prelude.<$> (x Data..?> "DomainPackageDetails")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DissociatePackage where+ hashWithSalt _salt DissociatePackage' {..} =+ _salt+ `Prelude.hashWithSalt` packageID+ `Prelude.hashWithSalt` domainName++instance Prelude.NFData DissociatePackage where+ rnf DissociatePackage' {..} =+ Prelude.rnf packageID+ `Prelude.seq` Prelude.rnf domainName++instance Data.ToHeaders DissociatePackage where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToJSON DissociatePackage where+ toJSON = Prelude.const (Data.Object Prelude.mempty)++instance Data.ToPath DissociatePackage where+ toPath DissociatePackage' {..} =+ Prelude.mconcat+ [ "/2021-01-01/packages/dissociate/",+ Data.toBS packageID,+ "/",+ Data.toBS domainName+ ]++instance Data.ToQuery DissociatePackage where+ toQuery = Prelude.const Prelude.mempty++-- | Container for the response returned by an @DissociatePackage@ operation.+--+-- /See:/ 'newDissociatePackageResponse' smart constructor.+data DissociatePackageResponse = DissociatePackageResponse'+ { -- | Information about a package that has been dissociated from the domain.+ domainPackageDetails :: Prelude.Maybe DomainPackageDetails,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DissociatePackageResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domainPackageDetails', 'dissociatePackageResponse_domainPackageDetails' - Information about a package that has been dissociated from the domain.+--+-- 'httpStatus', 'dissociatePackageResponse_httpStatus' - The response's http status code.+newDissociatePackageResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DissociatePackageResponse+newDissociatePackageResponse pHttpStatus_ =+ DissociatePackageResponse'+ { domainPackageDetails =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Information about a package that has been dissociated from the domain.+dissociatePackageResponse_domainPackageDetails :: Lens.Lens' DissociatePackageResponse (Prelude.Maybe DomainPackageDetails)+dissociatePackageResponse_domainPackageDetails = Lens.lens (\DissociatePackageResponse' {domainPackageDetails} -> domainPackageDetails) (\s@DissociatePackageResponse' {} a -> s {domainPackageDetails = a} :: DissociatePackageResponse)++-- | The response's http status code.+dissociatePackageResponse_httpStatus :: Lens.Lens' DissociatePackageResponse Prelude.Int+dissociatePackageResponse_httpStatus = Lens.lens (\DissociatePackageResponse' {httpStatus} -> httpStatus) (\s@DissociatePackageResponse' {} a -> s {httpStatus = a} :: DissociatePackageResponse)++instance Prelude.NFData DissociatePackageResponse where+ rnf DissociatePackageResponse' {..} =+ Prelude.rnf domainPackageDetails+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/OpenSearch/GetCompatibleVersions.hs view
@@ -0,0 +1,170 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.OpenSearch.GetCompatibleVersions+-- 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 map of OpenSearch or Elasticsearch versions and the versions+-- you can upgrade them to.+module Amazonka.OpenSearch.GetCompatibleVersions+ ( -- * Creating a Request+ GetCompatibleVersions (..),+ newGetCompatibleVersions,++ -- * Request Lenses+ getCompatibleVersions_domainName,++ -- * Destructuring the Response+ GetCompatibleVersionsResponse (..),+ newGetCompatibleVersionsResponse,++ -- * Response Lenses+ getCompatibleVersionsResponse_compatibleVersions,+ getCompatibleVersionsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Container for the request parameters to @GetCompatibleVersions@+-- operation.+--+-- /See:/ 'newGetCompatibleVersions' smart constructor.+data GetCompatibleVersions = GetCompatibleVersions'+ { -- | The name of an existing domain. Provide this parameter to limit the+ -- results to a single domain.+ domainName :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetCompatibleVersions' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domainName', 'getCompatibleVersions_domainName' - The name of an existing domain. Provide this parameter to limit the+-- results to a single domain.+newGetCompatibleVersions ::+ GetCompatibleVersions+newGetCompatibleVersions =+ GetCompatibleVersions'+ { domainName =+ Prelude.Nothing+ }++-- | The name of an existing domain. Provide this parameter to limit the+-- results to a single domain.+getCompatibleVersions_domainName :: Lens.Lens' GetCompatibleVersions (Prelude.Maybe Prelude.Text)+getCompatibleVersions_domainName = Lens.lens (\GetCompatibleVersions' {domainName} -> domainName) (\s@GetCompatibleVersions' {} a -> s {domainName = a} :: GetCompatibleVersions)++instance Core.AWSRequest GetCompatibleVersions where+ type+ AWSResponse GetCompatibleVersions =+ GetCompatibleVersionsResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ GetCompatibleVersionsResponse'+ Prelude.<$> ( x+ Data..?> "CompatibleVersions"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable GetCompatibleVersions where+ hashWithSalt _salt GetCompatibleVersions' {..} =+ _salt `Prelude.hashWithSalt` domainName++instance Prelude.NFData GetCompatibleVersions where+ rnf GetCompatibleVersions' {..} =+ Prelude.rnf domainName++instance Data.ToHeaders GetCompatibleVersions where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath GetCompatibleVersions where+ toPath =+ Prelude.const+ "/2021-01-01/opensearch/compatibleVersions"++instance Data.ToQuery GetCompatibleVersions where+ toQuery GetCompatibleVersions' {..} =+ Prelude.mconcat ["domainName" Data.=: domainName]++-- | Container for the response returned by the @GetCompatibleVersions@+-- operation.+--+-- /See:/ 'newGetCompatibleVersionsResponse' smart constructor.+data GetCompatibleVersionsResponse = GetCompatibleVersionsResponse'+ { -- | A map of OpenSearch or Elasticsearch versions and the versions you can+ -- upgrade them to.+ compatibleVersions :: Prelude.Maybe [CompatibleVersionsMap],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetCompatibleVersionsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'compatibleVersions', 'getCompatibleVersionsResponse_compatibleVersions' - A map of OpenSearch or Elasticsearch versions and the versions you can+-- upgrade them to.+--+-- 'httpStatus', 'getCompatibleVersionsResponse_httpStatus' - The response's http status code.+newGetCompatibleVersionsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetCompatibleVersionsResponse+newGetCompatibleVersionsResponse pHttpStatus_ =+ GetCompatibleVersionsResponse'+ { compatibleVersions =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A map of OpenSearch or Elasticsearch versions and the versions you can+-- upgrade them to.+getCompatibleVersionsResponse_compatibleVersions :: Lens.Lens' GetCompatibleVersionsResponse (Prelude.Maybe [CompatibleVersionsMap])+getCompatibleVersionsResponse_compatibleVersions = Lens.lens (\GetCompatibleVersionsResponse' {compatibleVersions} -> compatibleVersions) (\s@GetCompatibleVersionsResponse' {} a -> s {compatibleVersions = a} :: GetCompatibleVersionsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+getCompatibleVersionsResponse_httpStatus :: Lens.Lens' GetCompatibleVersionsResponse Prelude.Int+getCompatibleVersionsResponse_httpStatus = Lens.lens (\GetCompatibleVersionsResponse' {httpStatus} -> httpStatus) (\s@GetCompatibleVersionsResponse' {} a -> s {httpStatus = a} :: GetCompatibleVersionsResponse)++instance Prelude.NFData GetCompatibleVersionsResponse where+ rnf GetCompatibleVersionsResponse' {..} =+ Prelude.rnf compatibleVersions+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/OpenSearch/GetPackageVersionHistory.hs view
@@ -0,0 +1,246 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.OpenSearch.GetPackageVersionHistory+-- 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 Amazon OpenSearch Service package versions, along with+-- their creation time and commit message. For more information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/custom-packages.html Custom packages for Amazon OpenSearch Service>.+module Amazonka.OpenSearch.GetPackageVersionHistory+ ( -- * Creating a Request+ GetPackageVersionHistory (..),+ newGetPackageVersionHistory,++ -- * Request Lenses+ getPackageVersionHistory_maxResults,+ getPackageVersionHistory_nextToken,+ getPackageVersionHistory_packageID,++ -- * Destructuring the Response+ GetPackageVersionHistoryResponse (..),+ newGetPackageVersionHistoryResponse,++ -- * Response Lenses+ getPackageVersionHistoryResponse_nextToken,+ getPackageVersionHistoryResponse_packageID,+ getPackageVersionHistoryResponse_packageVersionHistoryList,+ getPackageVersionHistoryResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Container for the request parameters to the @GetPackageVersionHistory@+-- operation.+--+-- /See:/ 'newGetPackageVersionHistory' smart constructor.+data GetPackageVersionHistory = GetPackageVersionHistory'+ { -- | An optional parameter that specifies the maximum number of results to+ -- return. You can use @nextToken@ to get the next page of results.+ maxResults :: Prelude.Maybe Prelude.Int,+ -- | If your initial @GetPackageVersionHistory@ operation returns a+ -- @nextToken@, you can include the returned @nextToken@ in subsequent+ -- @GetPackageVersionHistory@ operations, which returns results in the next+ -- page.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier of the package.+ packageID :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetPackageVersionHistory' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'getPackageVersionHistory_maxResults' - An optional parameter that specifies the maximum number of results to+-- return. You can use @nextToken@ to get the next page of results.+--+-- 'nextToken', 'getPackageVersionHistory_nextToken' - If your initial @GetPackageVersionHistory@ operation returns a+-- @nextToken@, you can include the returned @nextToken@ in subsequent+-- @GetPackageVersionHistory@ operations, which returns results in the next+-- page.+--+-- 'packageID', 'getPackageVersionHistory_packageID' - The unique identifier of the package.+newGetPackageVersionHistory ::+ -- | 'packageID'+ Prelude.Text ->+ GetPackageVersionHistory+newGetPackageVersionHistory pPackageID_ =+ GetPackageVersionHistory'+ { maxResults =+ Prelude.Nothing,+ nextToken = Prelude.Nothing,+ packageID = pPackageID_+ }++-- | An optional parameter that specifies the maximum number of results to+-- return. You can use @nextToken@ to get the next page of results.+getPackageVersionHistory_maxResults :: Lens.Lens' GetPackageVersionHistory (Prelude.Maybe Prelude.Int)+getPackageVersionHistory_maxResults = Lens.lens (\GetPackageVersionHistory' {maxResults} -> maxResults) (\s@GetPackageVersionHistory' {} a -> s {maxResults = a} :: GetPackageVersionHistory)++-- | If your initial @GetPackageVersionHistory@ operation returns a+-- @nextToken@, you can include the returned @nextToken@ in subsequent+-- @GetPackageVersionHistory@ operations, which returns results in the next+-- page.+getPackageVersionHistory_nextToken :: Lens.Lens' GetPackageVersionHistory (Prelude.Maybe Prelude.Text)+getPackageVersionHistory_nextToken = Lens.lens (\GetPackageVersionHistory' {nextToken} -> nextToken) (\s@GetPackageVersionHistory' {} a -> s {nextToken = a} :: GetPackageVersionHistory)++-- | The unique identifier of the package.+getPackageVersionHistory_packageID :: Lens.Lens' GetPackageVersionHistory Prelude.Text+getPackageVersionHistory_packageID = Lens.lens (\GetPackageVersionHistory' {packageID} -> packageID) (\s@GetPackageVersionHistory' {} a -> s {packageID = a} :: GetPackageVersionHistory)++instance Core.AWSRequest GetPackageVersionHistory where+ type+ AWSResponse GetPackageVersionHistory =+ GetPackageVersionHistoryResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ GetPackageVersionHistoryResponse'+ Prelude.<$> (x Data..?> "NextToken")+ Prelude.<*> (x Data..?> "PackageID")+ Prelude.<*> ( x+ Data..?> "PackageVersionHistoryList"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable GetPackageVersionHistory where+ hashWithSalt _salt GetPackageVersionHistory' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` packageID++instance Prelude.NFData GetPackageVersionHistory where+ rnf GetPackageVersionHistory' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf packageID++instance Data.ToHeaders GetPackageVersionHistory where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath GetPackageVersionHistory where+ toPath GetPackageVersionHistory' {..} =+ Prelude.mconcat+ [ "/2021-01-01/packages/",+ Data.toBS packageID,+ "/history"+ ]++instance Data.ToQuery GetPackageVersionHistory where+ toQuery GetPackageVersionHistory' {..} =+ Prelude.mconcat+ [ "maxResults" Data.=: maxResults,+ "nextToken" Data.=: nextToken+ ]++-- | Container for response returned by @GetPackageVersionHistory@ operation.+--+-- /See:/ 'newGetPackageVersionHistoryResponse' smart constructor.+data GetPackageVersionHistoryResponse = GetPackageVersionHistoryResponse'+ { -- | When @nextToken@ is returned, there are more results available. The+ -- value of @nextToken@ is a unique pagination token for each page. Make+ -- the call again using the returned token to retrieve the next page.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier of the package.+ packageID :: Prelude.Maybe Prelude.Text,+ -- | A list of package versions, along with their creation time and commit+ -- message.+ packageVersionHistoryList :: Prelude.Maybe [PackageVersionHistory],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetPackageVersionHistoryResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'nextToken', 'getPackageVersionHistoryResponse_nextToken' - When @nextToken@ is returned, there are more results available. The+-- value of @nextToken@ is a unique pagination token for each page. Make+-- the call again using the returned token to retrieve the next page.+--+-- 'packageID', 'getPackageVersionHistoryResponse_packageID' - The unique identifier of the package.+--+-- 'packageVersionHistoryList', 'getPackageVersionHistoryResponse_packageVersionHistoryList' - A list of package versions, along with their creation time and commit+-- message.+--+-- 'httpStatus', 'getPackageVersionHistoryResponse_httpStatus' - The response's http status code.+newGetPackageVersionHistoryResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetPackageVersionHistoryResponse+newGetPackageVersionHistoryResponse pHttpStatus_ =+ GetPackageVersionHistoryResponse'+ { nextToken =+ Prelude.Nothing,+ packageID = Prelude.Nothing,+ packageVersionHistoryList =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | When @nextToken@ is returned, there are more results available. The+-- value of @nextToken@ is a unique pagination token for each page. Make+-- the call again using the returned token to retrieve the next page.+getPackageVersionHistoryResponse_nextToken :: Lens.Lens' GetPackageVersionHistoryResponse (Prelude.Maybe Prelude.Text)+getPackageVersionHistoryResponse_nextToken = Lens.lens (\GetPackageVersionHistoryResponse' {nextToken} -> nextToken) (\s@GetPackageVersionHistoryResponse' {} a -> s {nextToken = a} :: GetPackageVersionHistoryResponse)++-- | The unique identifier of the package.+getPackageVersionHistoryResponse_packageID :: Lens.Lens' GetPackageVersionHistoryResponse (Prelude.Maybe Prelude.Text)+getPackageVersionHistoryResponse_packageID = Lens.lens (\GetPackageVersionHistoryResponse' {packageID} -> packageID) (\s@GetPackageVersionHistoryResponse' {} a -> s {packageID = a} :: GetPackageVersionHistoryResponse)++-- | A list of package versions, along with their creation time and commit+-- message.+getPackageVersionHistoryResponse_packageVersionHistoryList :: Lens.Lens' GetPackageVersionHistoryResponse (Prelude.Maybe [PackageVersionHistory])+getPackageVersionHistoryResponse_packageVersionHistoryList = Lens.lens (\GetPackageVersionHistoryResponse' {packageVersionHistoryList} -> packageVersionHistoryList) (\s@GetPackageVersionHistoryResponse' {} a -> s {packageVersionHistoryList = a} :: GetPackageVersionHistoryResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+getPackageVersionHistoryResponse_httpStatus :: Lens.Lens' GetPackageVersionHistoryResponse Prelude.Int+getPackageVersionHistoryResponse_httpStatus = Lens.lens (\GetPackageVersionHistoryResponse' {httpStatus} -> httpStatus) (\s@GetPackageVersionHistoryResponse' {} a -> s {httpStatus = a} :: GetPackageVersionHistoryResponse)++instance+ Prelude.NFData+ GetPackageVersionHistoryResponse+ where+ rnf GetPackageVersionHistoryResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf packageID+ `Prelude.seq` Prelude.rnf packageVersionHistoryList+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/OpenSearch/GetUpgradeHistory.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.OpenSearch.GetUpgradeHistory+-- 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 the complete history of the last 10 upgrades performed on an+-- Amazon OpenSearch Service domain.+module Amazonka.OpenSearch.GetUpgradeHistory+ ( -- * Creating a Request+ GetUpgradeHistory (..),+ newGetUpgradeHistory,++ -- * Request Lenses+ getUpgradeHistory_maxResults,+ getUpgradeHistory_nextToken,+ getUpgradeHistory_domainName,++ -- * Destructuring the Response+ GetUpgradeHistoryResponse (..),+ newGetUpgradeHistoryResponse,++ -- * Response Lenses+ getUpgradeHistoryResponse_nextToken,+ getUpgradeHistoryResponse_upgradeHistories,+ getUpgradeHistoryResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Container for the request parameters to the @GetUpgradeHistory@+-- operation.+--+-- /See:/ 'newGetUpgradeHistory' smart constructor.+data GetUpgradeHistory = GetUpgradeHistory'+ { -- | An optional parameter that specifies the maximum number of results to+ -- return. You can use @nextToken@ to get the next page of results.+ maxResults :: Prelude.Maybe Prelude.Int,+ -- | If your initial @GetUpgradeHistory@ operation returns a @nextToken@, you+ -- can include the returned @nextToken@ in subsequent @GetUpgradeHistory@+ -- operations, which returns results in the next page.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The name of an existing domain.+ domainName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetUpgradeHistory' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'getUpgradeHistory_maxResults' - An optional parameter that specifies the maximum number of results to+-- return. You can use @nextToken@ to get the next page of results.+--+-- 'nextToken', 'getUpgradeHistory_nextToken' - If your initial @GetUpgradeHistory@ operation returns a @nextToken@, you+-- can include the returned @nextToken@ in subsequent @GetUpgradeHistory@+-- operations, which returns results in the next page.+--+-- 'domainName', 'getUpgradeHistory_domainName' - The name of an existing domain.+newGetUpgradeHistory ::+ -- | 'domainName'+ Prelude.Text ->+ GetUpgradeHistory+newGetUpgradeHistory pDomainName_ =+ GetUpgradeHistory'+ { maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ domainName = pDomainName_+ }++-- | An optional parameter that specifies the maximum number of results to+-- return. You can use @nextToken@ to get the next page of results.+getUpgradeHistory_maxResults :: Lens.Lens' GetUpgradeHistory (Prelude.Maybe Prelude.Int)+getUpgradeHistory_maxResults = Lens.lens (\GetUpgradeHistory' {maxResults} -> maxResults) (\s@GetUpgradeHistory' {} a -> s {maxResults = a} :: GetUpgradeHistory)++-- | If your initial @GetUpgradeHistory@ operation returns a @nextToken@, you+-- can include the returned @nextToken@ in subsequent @GetUpgradeHistory@+-- operations, which returns results in the next page.+getUpgradeHistory_nextToken :: Lens.Lens' GetUpgradeHistory (Prelude.Maybe Prelude.Text)+getUpgradeHistory_nextToken = Lens.lens (\GetUpgradeHistory' {nextToken} -> nextToken) (\s@GetUpgradeHistory' {} a -> s {nextToken = a} :: GetUpgradeHistory)++-- | The name of an existing domain.+getUpgradeHistory_domainName :: Lens.Lens' GetUpgradeHistory Prelude.Text+getUpgradeHistory_domainName = Lens.lens (\GetUpgradeHistory' {domainName} -> domainName) (\s@GetUpgradeHistory' {} a -> s {domainName = a} :: GetUpgradeHistory)++instance Core.AWSRequest GetUpgradeHistory where+ type+ AWSResponse GetUpgradeHistory =+ GetUpgradeHistoryResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ GetUpgradeHistoryResponse'+ Prelude.<$> (x Data..?> "NextToken")+ Prelude.<*> ( x+ Data..?> "UpgradeHistories"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable GetUpgradeHistory where+ hashWithSalt _salt GetUpgradeHistory' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` domainName++instance Prelude.NFData GetUpgradeHistory where+ rnf GetUpgradeHistory' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf domainName++instance Data.ToHeaders GetUpgradeHistory where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath GetUpgradeHistory where+ toPath GetUpgradeHistory' {..} =+ Prelude.mconcat+ [ "/2021-01-01/opensearch/upgradeDomain/",+ Data.toBS domainName,+ "/history"+ ]++instance Data.ToQuery GetUpgradeHistory where+ toQuery GetUpgradeHistory' {..} =+ Prelude.mconcat+ [ "maxResults" Data.=: maxResults,+ "nextToken" Data.=: nextToken+ ]++-- | Container for the response returned by the @GetUpgradeHistory@+-- operation.+--+-- /See:/ 'newGetUpgradeHistoryResponse' smart constructor.+data GetUpgradeHistoryResponse = GetUpgradeHistoryResponse'+ { -- | When @nextToken@ is returned, there are more results available. The+ -- value of @nextToken@ is a unique pagination token for each page. Make+ -- the call again using the returned token to retrieve the next page.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | A list of objects corresponding to each upgrade or upgrade eligibility+ -- check performed on a domain.+ upgradeHistories :: Prelude.Maybe [UpgradeHistory],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetUpgradeHistoryResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'nextToken', 'getUpgradeHistoryResponse_nextToken' - When @nextToken@ is returned, there are more results available. The+-- value of @nextToken@ is a unique pagination token for each page. Make+-- the call again using the returned token to retrieve the next page.+--+-- 'upgradeHistories', 'getUpgradeHistoryResponse_upgradeHistories' - A list of objects corresponding to each upgrade or upgrade eligibility+-- check performed on a domain.+--+-- 'httpStatus', 'getUpgradeHistoryResponse_httpStatus' - The response's http status code.+newGetUpgradeHistoryResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetUpgradeHistoryResponse+newGetUpgradeHistoryResponse pHttpStatus_ =+ GetUpgradeHistoryResponse'+ { nextToken =+ Prelude.Nothing,+ upgradeHistories = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | When @nextToken@ is returned, there are more results available. The+-- value of @nextToken@ is a unique pagination token for each page. Make+-- the call again using the returned token to retrieve the next page.+getUpgradeHistoryResponse_nextToken :: Lens.Lens' GetUpgradeHistoryResponse (Prelude.Maybe Prelude.Text)+getUpgradeHistoryResponse_nextToken = Lens.lens (\GetUpgradeHistoryResponse' {nextToken} -> nextToken) (\s@GetUpgradeHistoryResponse' {} a -> s {nextToken = a} :: GetUpgradeHistoryResponse)++-- | A list of objects corresponding to each upgrade or upgrade eligibility+-- check performed on a domain.+getUpgradeHistoryResponse_upgradeHistories :: Lens.Lens' GetUpgradeHistoryResponse (Prelude.Maybe [UpgradeHistory])+getUpgradeHistoryResponse_upgradeHistories = Lens.lens (\GetUpgradeHistoryResponse' {upgradeHistories} -> upgradeHistories) (\s@GetUpgradeHistoryResponse' {} a -> s {upgradeHistories = a} :: GetUpgradeHistoryResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+getUpgradeHistoryResponse_httpStatus :: Lens.Lens' GetUpgradeHistoryResponse Prelude.Int+getUpgradeHistoryResponse_httpStatus = Lens.lens (\GetUpgradeHistoryResponse' {httpStatus} -> httpStatus) (\s@GetUpgradeHistoryResponse' {} a -> s {httpStatus = a} :: GetUpgradeHistoryResponse)++instance Prelude.NFData GetUpgradeHistoryResponse where+ rnf GetUpgradeHistoryResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf upgradeHistories+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/OpenSearch/GetUpgradeStatus.hs view
@@ -0,0 +1,187 @@+{-# 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.OpenSearch.GetUpgradeStatus+-- 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 the most recent status of the last upgrade or upgrade+-- eligibility check performed on an Amazon OpenSearch Service domain.+module Amazonka.OpenSearch.GetUpgradeStatus+ ( -- * Creating a Request+ GetUpgradeStatus (..),+ newGetUpgradeStatus,++ -- * Request Lenses+ getUpgradeStatus_domainName,++ -- * Destructuring the Response+ GetUpgradeStatusResponse (..),+ newGetUpgradeStatusResponse,++ -- * Response Lenses+ getUpgradeStatusResponse_stepStatus,+ getUpgradeStatusResponse_upgradeName,+ getUpgradeStatusResponse_upgradeStep,+ getUpgradeStatusResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Container for the request parameters to the @GetUpgradeStatus@+-- operation.+--+-- /See:/ 'newGetUpgradeStatus' smart constructor.+data GetUpgradeStatus = GetUpgradeStatus'+ { -- | The domain of the domain to get upgrade status information for.+ domainName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetUpgradeStatus' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domainName', 'getUpgradeStatus_domainName' - The domain of the domain to get upgrade status information for.+newGetUpgradeStatus ::+ -- | 'domainName'+ Prelude.Text ->+ GetUpgradeStatus+newGetUpgradeStatus pDomainName_ =+ GetUpgradeStatus' {domainName = pDomainName_}++-- | The domain of the domain to get upgrade status information for.+getUpgradeStatus_domainName :: Lens.Lens' GetUpgradeStatus Prelude.Text+getUpgradeStatus_domainName = Lens.lens (\GetUpgradeStatus' {domainName} -> domainName) (\s@GetUpgradeStatus' {} a -> s {domainName = a} :: GetUpgradeStatus)++instance Core.AWSRequest GetUpgradeStatus where+ type+ AWSResponse GetUpgradeStatus =+ GetUpgradeStatusResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ GetUpgradeStatusResponse'+ Prelude.<$> (x Data..?> "StepStatus")+ Prelude.<*> (x Data..?> "UpgradeName")+ Prelude.<*> (x Data..?> "UpgradeStep")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable GetUpgradeStatus where+ hashWithSalt _salt GetUpgradeStatus' {..} =+ _salt `Prelude.hashWithSalt` domainName++instance Prelude.NFData GetUpgradeStatus where+ rnf GetUpgradeStatus' {..} = Prelude.rnf domainName++instance Data.ToHeaders GetUpgradeStatus where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath GetUpgradeStatus where+ toPath GetUpgradeStatus' {..} =+ Prelude.mconcat+ [ "/2021-01-01/opensearch/upgradeDomain/",+ Data.toBS domainName,+ "/status"+ ]++instance Data.ToQuery GetUpgradeStatus where+ toQuery = Prelude.const Prelude.mempty++-- | Container for the response returned by the @GetUpgradeStatus@ operation.+--+-- /See:/ 'newGetUpgradeStatusResponse' smart constructor.+data GetUpgradeStatusResponse = GetUpgradeStatusResponse'+ { -- | The status of the current step that an upgrade is on.+ stepStatus :: Prelude.Maybe UpgradeStatus,+ -- | A string that describes the update.+ upgradeName :: Prelude.Maybe Prelude.Text,+ -- | One of three steps that an upgrade or upgrade eligibility check goes+ -- through.+ upgradeStep :: Prelude.Maybe UpgradeStep,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetUpgradeStatusResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'stepStatus', 'getUpgradeStatusResponse_stepStatus' - The status of the current step that an upgrade is on.+--+-- 'upgradeName', 'getUpgradeStatusResponse_upgradeName' - A string that describes the update.+--+-- 'upgradeStep', 'getUpgradeStatusResponse_upgradeStep' - One of three steps that an upgrade or upgrade eligibility check goes+-- through.+--+-- 'httpStatus', 'getUpgradeStatusResponse_httpStatus' - The response's http status code.+newGetUpgradeStatusResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetUpgradeStatusResponse+newGetUpgradeStatusResponse pHttpStatus_ =+ GetUpgradeStatusResponse'+ { stepStatus =+ Prelude.Nothing,+ upgradeName = Prelude.Nothing,+ upgradeStep = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The status of the current step that an upgrade is on.+getUpgradeStatusResponse_stepStatus :: Lens.Lens' GetUpgradeStatusResponse (Prelude.Maybe UpgradeStatus)+getUpgradeStatusResponse_stepStatus = Lens.lens (\GetUpgradeStatusResponse' {stepStatus} -> stepStatus) (\s@GetUpgradeStatusResponse' {} a -> s {stepStatus = a} :: GetUpgradeStatusResponse)++-- | A string that describes the update.+getUpgradeStatusResponse_upgradeName :: Lens.Lens' GetUpgradeStatusResponse (Prelude.Maybe Prelude.Text)+getUpgradeStatusResponse_upgradeName = Lens.lens (\GetUpgradeStatusResponse' {upgradeName} -> upgradeName) (\s@GetUpgradeStatusResponse' {} a -> s {upgradeName = a} :: GetUpgradeStatusResponse)++-- | One of three steps that an upgrade or upgrade eligibility check goes+-- through.+getUpgradeStatusResponse_upgradeStep :: Lens.Lens' GetUpgradeStatusResponse (Prelude.Maybe UpgradeStep)+getUpgradeStatusResponse_upgradeStep = Lens.lens (\GetUpgradeStatusResponse' {upgradeStep} -> upgradeStep) (\s@GetUpgradeStatusResponse' {} a -> s {upgradeStep = a} :: GetUpgradeStatusResponse)++-- | The response's http status code.+getUpgradeStatusResponse_httpStatus :: Lens.Lens' GetUpgradeStatusResponse Prelude.Int+getUpgradeStatusResponse_httpStatus = Lens.lens (\GetUpgradeStatusResponse' {httpStatus} -> httpStatus) (\s@GetUpgradeStatusResponse' {} a -> s {httpStatus = a} :: GetUpgradeStatusResponse)++instance Prelude.NFData GetUpgradeStatusResponse where+ rnf GetUpgradeStatusResponse' {..} =+ Prelude.rnf stepStatus+ `Prelude.seq` Prelude.rnf upgradeName+ `Prelude.seq` Prelude.rnf upgradeStep+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/OpenSearch/Lens.hs view
@@ -0,0 +1,968 @@+{-# 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.OpenSearch.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.OpenSearch.Lens+ ( -- * Operations++ -- ** AcceptInboundConnection+ acceptInboundConnection_connectionId,+ acceptInboundConnectionResponse_connection,+ acceptInboundConnectionResponse_httpStatus,++ -- ** AddTags+ addTags_arn,+ addTags_tagList,++ -- ** AssociatePackage+ associatePackage_packageID,+ associatePackage_domainName,+ associatePackageResponse_domainPackageDetails,+ associatePackageResponse_httpStatus,++ -- ** AuthorizeVpcEndpointAccess+ authorizeVpcEndpointAccess_domainName,+ authorizeVpcEndpointAccess_account,+ authorizeVpcEndpointAccessResponse_httpStatus,+ authorizeVpcEndpointAccessResponse_authorizedPrincipal,++ -- ** CancelServiceSoftwareUpdate+ cancelServiceSoftwareUpdate_domainName,+ cancelServiceSoftwareUpdateResponse_serviceSoftwareOptions,+ cancelServiceSoftwareUpdateResponse_httpStatus,++ -- ** CreateDomain+ createDomain_accessPolicies,+ createDomain_advancedOptions,+ createDomain_advancedSecurityOptions,+ createDomain_autoTuneOptions,+ createDomain_clusterConfig,+ createDomain_cognitoOptions,+ createDomain_domainEndpointOptions,+ createDomain_eBSOptions,+ createDomain_encryptionAtRestOptions,+ createDomain_engineVersion,+ createDomain_logPublishingOptions,+ createDomain_nodeToNodeEncryptionOptions,+ createDomain_snapshotOptions,+ createDomain_tagList,+ createDomain_vPCOptions,+ createDomain_domainName,+ createDomainResponse_domainStatus,+ createDomainResponse_httpStatus,++ -- ** CreateOutboundConnection+ createOutboundConnection_localDomainInfo,+ createOutboundConnection_remoteDomainInfo,+ createOutboundConnection_connectionAlias,+ createOutboundConnectionResponse_connectionAlias,+ createOutboundConnectionResponse_connectionId,+ createOutboundConnectionResponse_connectionStatus,+ createOutboundConnectionResponse_localDomainInfo,+ createOutboundConnectionResponse_remoteDomainInfo,+ createOutboundConnectionResponse_httpStatus,++ -- ** CreatePackage+ createPackage_packageDescription,+ createPackage_packageName,+ createPackage_packageType,+ createPackage_packageSource,+ createPackageResponse_packageDetails,+ createPackageResponse_httpStatus,++ -- ** CreateVpcEndpoint+ createVpcEndpoint_clientToken,+ createVpcEndpoint_domainArn,+ createVpcEndpoint_vpcOptions,+ createVpcEndpointResponse_httpStatus,+ createVpcEndpointResponse_vpcEndpoint,++ -- ** DeleteDomain+ deleteDomain_domainName,+ deleteDomainResponse_domainStatus,+ deleteDomainResponse_httpStatus,++ -- ** DeleteInboundConnection+ deleteInboundConnection_connectionId,+ deleteInboundConnectionResponse_connection,+ deleteInboundConnectionResponse_httpStatus,++ -- ** DeleteOutboundConnection+ deleteOutboundConnection_connectionId,+ deleteOutboundConnectionResponse_connection,+ deleteOutboundConnectionResponse_httpStatus,++ -- ** DeletePackage+ deletePackage_packageID,+ deletePackageResponse_packageDetails,+ deletePackageResponse_httpStatus,++ -- ** DeleteVpcEndpoint+ deleteVpcEndpoint_vpcEndpointId,+ deleteVpcEndpointResponse_httpStatus,+ deleteVpcEndpointResponse_vpcEndpointSummary,++ -- ** DescribeDomain+ describeDomain_domainName,+ describeDomainResponse_httpStatus,+ describeDomainResponse_domainStatus,++ -- ** DescribeDomainAutoTunes+ describeDomainAutoTunes_maxResults,+ describeDomainAutoTunes_nextToken,+ describeDomainAutoTunes_domainName,+ describeDomainAutoTunesResponse_autoTunes,+ describeDomainAutoTunesResponse_nextToken,+ describeDomainAutoTunesResponse_httpStatus,++ -- ** DescribeDomainChangeProgress+ describeDomainChangeProgress_changeId,+ describeDomainChangeProgress_domainName,+ describeDomainChangeProgressResponse_changeProgressStatus,+ describeDomainChangeProgressResponse_httpStatus,++ -- ** DescribeDomainConfig+ describeDomainConfig_domainName,+ describeDomainConfigResponse_httpStatus,+ describeDomainConfigResponse_domainConfig,++ -- ** DescribeDomains+ describeDomains_domainNames,+ describeDomainsResponse_httpStatus,+ describeDomainsResponse_domainStatusList,++ -- ** DescribeInboundConnections+ describeInboundConnections_filters,+ describeInboundConnections_maxResults,+ describeInboundConnections_nextToken,+ describeInboundConnectionsResponse_connections,+ describeInboundConnectionsResponse_nextToken,+ describeInboundConnectionsResponse_httpStatus,++ -- ** DescribeInstanceTypeLimits+ describeInstanceTypeLimits_domainName,+ describeInstanceTypeLimits_instanceType,+ describeInstanceTypeLimits_engineVersion,+ describeInstanceTypeLimitsResponse_limitsByRole,+ describeInstanceTypeLimitsResponse_httpStatus,++ -- ** DescribeOutboundConnections+ describeOutboundConnections_filters,+ describeOutboundConnections_maxResults,+ describeOutboundConnections_nextToken,+ describeOutboundConnectionsResponse_connections,+ describeOutboundConnectionsResponse_nextToken,+ describeOutboundConnectionsResponse_httpStatus,++ -- ** DescribePackages+ describePackages_filters,+ describePackages_maxResults,+ describePackages_nextToken,+ describePackagesResponse_nextToken,+ describePackagesResponse_packageDetailsList,+ describePackagesResponse_httpStatus,++ -- ** DescribeReservedInstanceOfferings+ describeReservedInstanceOfferings_maxResults,+ describeReservedInstanceOfferings_nextToken,+ describeReservedInstanceOfferings_reservedInstanceOfferingId,+ describeReservedInstanceOfferingsResponse_nextToken,+ describeReservedInstanceOfferingsResponse_reservedInstanceOfferings,+ describeReservedInstanceOfferingsResponse_httpStatus,++ -- ** DescribeReservedInstances+ describeReservedInstances_maxResults,+ describeReservedInstances_nextToken,+ describeReservedInstances_reservedInstanceId,+ describeReservedInstancesResponse_nextToken,+ describeReservedInstancesResponse_reservedInstances,+ describeReservedInstancesResponse_httpStatus,++ -- ** DescribeVpcEndpoints+ describeVpcEndpoints_vpcEndpointIds,+ describeVpcEndpointsResponse_httpStatus,+ describeVpcEndpointsResponse_vpcEndpoints,+ describeVpcEndpointsResponse_vpcEndpointErrors,++ -- ** DissociatePackage+ dissociatePackage_packageID,+ dissociatePackage_domainName,+ dissociatePackageResponse_domainPackageDetails,+ dissociatePackageResponse_httpStatus,++ -- ** GetCompatibleVersions+ getCompatibleVersions_domainName,+ getCompatibleVersionsResponse_compatibleVersions,+ getCompatibleVersionsResponse_httpStatus,++ -- ** GetPackageVersionHistory+ getPackageVersionHistory_maxResults,+ getPackageVersionHistory_nextToken,+ getPackageVersionHistory_packageID,+ getPackageVersionHistoryResponse_nextToken,+ getPackageVersionHistoryResponse_packageID,+ getPackageVersionHistoryResponse_packageVersionHistoryList,+ getPackageVersionHistoryResponse_httpStatus,++ -- ** GetUpgradeHistory+ getUpgradeHistory_maxResults,+ getUpgradeHistory_nextToken,+ getUpgradeHistory_domainName,+ getUpgradeHistoryResponse_nextToken,+ getUpgradeHistoryResponse_upgradeHistories,+ getUpgradeHistoryResponse_httpStatus,++ -- ** GetUpgradeStatus+ getUpgradeStatus_domainName,+ getUpgradeStatusResponse_stepStatus,+ getUpgradeStatusResponse_upgradeName,+ getUpgradeStatusResponse_upgradeStep,+ getUpgradeStatusResponse_httpStatus,++ -- ** ListDomainNames+ listDomainNames_engineType,+ listDomainNamesResponse_domainNames,+ listDomainNamesResponse_httpStatus,++ -- ** ListDomainsForPackage+ listDomainsForPackage_maxResults,+ listDomainsForPackage_nextToken,+ listDomainsForPackage_packageID,+ listDomainsForPackageResponse_domainPackageDetailsList,+ listDomainsForPackageResponse_nextToken,+ listDomainsForPackageResponse_httpStatus,++ -- ** ListInstanceTypeDetails+ listInstanceTypeDetails_domainName,+ listInstanceTypeDetails_maxResults,+ listInstanceTypeDetails_nextToken,+ listInstanceTypeDetails_engineVersion,+ listInstanceTypeDetailsResponse_instanceTypeDetails,+ listInstanceTypeDetailsResponse_nextToken,+ listInstanceTypeDetailsResponse_httpStatus,++ -- ** ListPackagesForDomain+ listPackagesForDomain_maxResults,+ listPackagesForDomain_nextToken,+ listPackagesForDomain_domainName,+ listPackagesForDomainResponse_domainPackageDetailsList,+ listPackagesForDomainResponse_nextToken,+ listPackagesForDomainResponse_httpStatus,++ -- ** ListTags+ listTags_arn,+ listTagsResponse_tagList,+ listTagsResponse_httpStatus,++ -- ** ListVersions+ listVersions_maxResults,+ listVersions_nextToken,+ listVersionsResponse_nextToken,+ listVersionsResponse_versions,+ listVersionsResponse_httpStatus,++ -- ** ListVpcEndpointAccess+ listVpcEndpointAccess_nextToken,+ listVpcEndpointAccess_domainName,+ listVpcEndpointAccessResponse_httpStatus,+ listVpcEndpointAccessResponse_authorizedPrincipalList,+ listVpcEndpointAccessResponse_nextToken,++ -- ** ListVpcEndpoints+ listVpcEndpoints_nextToken,+ listVpcEndpointsResponse_httpStatus,+ listVpcEndpointsResponse_vpcEndpointSummaryList,+ listVpcEndpointsResponse_nextToken,++ -- ** ListVpcEndpointsForDomain+ listVpcEndpointsForDomain_nextToken,+ listVpcEndpointsForDomain_domainName,+ listVpcEndpointsForDomainResponse_httpStatus,+ listVpcEndpointsForDomainResponse_vpcEndpointSummaryList,+ listVpcEndpointsForDomainResponse_nextToken,++ -- ** PurchaseReservedInstanceOffering+ purchaseReservedInstanceOffering_instanceCount,+ purchaseReservedInstanceOffering_reservedInstanceOfferingId,+ purchaseReservedInstanceOffering_reservationName,+ purchaseReservedInstanceOfferingResponse_reservationName,+ purchaseReservedInstanceOfferingResponse_reservedInstanceId,+ purchaseReservedInstanceOfferingResponse_httpStatus,++ -- ** RejectInboundConnection+ rejectInboundConnection_connectionId,+ rejectInboundConnectionResponse_connection,+ rejectInboundConnectionResponse_httpStatus,++ -- ** RemoveTags+ removeTags_arn,+ removeTags_tagKeys,++ -- ** RevokeVpcEndpointAccess+ revokeVpcEndpointAccess_domainName,+ revokeVpcEndpointAccess_account,+ revokeVpcEndpointAccessResponse_httpStatus,++ -- ** StartServiceSoftwareUpdate+ startServiceSoftwareUpdate_domainName,+ startServiceSoftwareUpdateResponse_serviceSoftwareOptions,+ startServiceSoftwareUpdateResponse_httpStatus,++ -- ** UpdateDomainConfig+ updateDomainConfig_accessPolicies,+ updateDomainConfig_advancedOptions,+ updateDomainConfig_advancedSecurityOptions,+ updateDomainConfig_autoTuneOptions,+ updateDomainConfig_clusterConfig,+ updateDomainConfig_cognitoOptions,+ updateDomainConfig_domainEndpointOptions,+ updateDomainConfig_dryRun,+ updateDomainConfig_eBSOptions,+ updateDomainConfig_encryptionAtRestOptions,+ updateDomainConfig_logPublishingOptions,+ updateDomainConfig_nodeToNodeEncryptionOptions,+ updateDomainConfig_snapshotOptions,+ updateDomainConfig_vPCOptions,+ updateDomainConfig_domainName,+ updateDomainConfigResponse_dryRunResults,+ updateDomainConfigResponse_httpStatus,+ updateDomainConfigResponse_domainConfig,++ -- ** UpdatePackage+ updatePackage_commitMessage,+ updatePackage_packageDescription,+ updatePackage_packageID,+ updatePackage_packageSource,+ updatePackageResponse_packageDetails,+ updatePackageResponse_httpStatus,++ -- ** UpdateVpcEndpoint+ updateVpcEndpoint_vpcEndpointId,+ updateVpcEndpoint_vpcOptions,+ updateVpcEndpointResponse_httpStatus,+ updateVpcEndpointResponse_vpcEndpoint,++ -- ** UpgradeDomain+ upgradeDomain_advancedOptions,+ upgradeDomain_performCheckOnly,+ upgradeDomain_domainName,+ upgradeDomain_targetVersion,+ upgradeDomainResponse_advancedOptions,+ upgradeDomainResponse_changeProgressDetails,+ upgradeDomainResponse_domainName,+ upgradeDomainResponse_performCheckOnly,+ upgradeDomainResponse_targetVersion,+ upgradeDomainResponse_upgradeId,+ upgradeDomainResponse_httpStatus,++ -- * Types++ -- ** AWSDomainInformation+ aWSDomainInformation_ownerId,+ aWSDomainInformation_region,+ aWSDomainInformation_domainName,++ -- ** AccessPoliciesStatus+ accessPoliciesStatus_options,+ accessPoliciesStatus_status,++ -- ** AdditionalLimit+ additionalLimit_limitName,+ additionalLimit_limitValues,++ -- ** AdvancedOptionsStatus+ advancedOptionsStatus_options,+ advancedOptionsStatus_status,++ -- ** AdvancedSecurityOptions+ advancedSecurityOptions_anonymousAuthDisableDate,+ advancedSecurityOptions_anonymousAuthEnabled,+ advancedSecurityOptions_enabled,+ advancedSecurityOptions_internalUserDatabaseEnabled,+ advancedSecurityOptions_sAMLOptions,++ -- ** AdvancedSecurityOptionsInput+ advancedSecurityOptionsInput_anonymousAuthEnabled,+ advancedSecurityOptionsInput_enabled,+ advancedSecurityOptionsInput_internalUserDatabaseEnabled,+ advancedSecurityOptionsInput_masterUserOptions,+ advancedSecurityOptionsInput_sAMLOptions,++ -- ** AdvancedSecurityOptionsStatus+ advancedSecurityOptionsStatus_options,+ advancedSecurityOptionsStatus_status,++ -- ** AuthorizedPrincipal+ authorizedPrincipal_principal,+ authorizedPrincipal_principalType,++ -- ** AutoTune+ autoTune_autoTuneDetails,+ autoTune_autoTuneType,++ -- ** AutoTuneDetails+ autoTuneDetails_scheduledAutoTuneDetails,++ -- ** AutoTuneMaintenanceSchedule+ autoTuneMaintenanceSchedule_cronExpressionForRecurrence,+ autoTuneMaintenanceSchedule_duration,+ autoTuneMaintenanceSchedule_startAt,++ -- ** AutoTuneOptions+ autoTuneOptions_desiredState,+ autoTuneOptions_maintenanceSchedules,+ autoTuneOptions_rollbackOnDisable,++ -- ** AutoTuneOptionsInput+ autoTuneOptionsInput_desiredState,+ autoTuneOptionsInput_maintenanceSchedules,++ -- ** AutoTuneOptionsOutput+ autoTuneOptionsOutput_errorMessage,+ autoTuneOptionsOutput_state,++ -- ** AutoTuneOptionsStatus+ autoTuneOptionsStatus_options,+ autoTuneOptionsStatus_status,++ -- ** AutoTuneStatus+ autoTuneStatus_errorMessage,+ autoTuneStatus_pendingDeletion,+ autoTuneStatus_updateVersion,+ autoTuneStatus_creationDate,+ autoTuneStatus_updateDate,+ autoTuneStatus_state,++ -- ** ChangeProgressDetails+ changeProgressDetails_changeId,+ changeProgressDetails_message,++ -- ** ChangeProgressStage+ changeProgressStage_description,+ changeProgressStage_lastUpdated,+ changeProgressStage_name,+ changeProgressStage_status,++ -- ** ChangeProgressStatusDetails+ changeProgressStatusDetails_changeId,+ changeProgressStatusDetails_changeProgressStages,+ changeProgressStatusDetails_completedProperties,+ changeProgressStatusDetails_pendingProperties,+ changeProgressStatusDetails_startTime,+ changeProgressStatusDetails_status,+ changeProgressStatusDetails_totalNumberOfStages,++ -- ** ClusterConfig+ clusterConfig_coldStorageOptions,+ clusterConfig_dedicatedMasterCount,+ clusterConfig_dedicatedMasterEnabled,+ clusterConfig_dedicatedMasterType,+ clusterConfig_instanceCount,+ clusterConfig_instanceType,+ clusterConfig_warmCount,+ clusterConfig_warmEnabled,+ clusterConfig_warmType,+ clusterConfig_zoneAwarenessConfig,+ clusterConfig_zoneAwarenessEnabled,++ -- ** ClusterConfigStatus+ clusterConfigStatus_options,+ clusterConfigStatus_status,++ -- ** CognitoOptions+ cognitoOptions_enabled,+ cognitoOptions_identityPoolId,+ cognitoOptions_roleArn,+ cognitoOptions_userPoolId,++ -- ** CognitoOptionsStatus+ cognitoOptionsStatus_options,+ cognitoOptionsStatus_status,++ -- ** ColdStorageOptions+ coldStorageOptions_enabled,++ -- ** CompatibleVersionsMap+ compatibleVersionsMap_sourceVersion,+ compatibleVersionsMap_targetVersions,++ -- ** DescribePackagesFilter+ describePackagesFilter_name,+ describePackagesFilter_value,++ -- ** DomainConfig+ domainConfig_accessPolicies,+ domainConfig_advancedOptions,+ domainConfig_advancedSecurityOptions,+ domainConfig_autoTuneOptions,+ domainConfig_changeProgressDetails,+ domainConfig_clusterConfig,+ domainConfig_cognitoOptions,+ domainConfig_domainEndpointOptions,+ domainConfig_eBSOptions,+ domainConfig_encryptionAtRestOptions,+ domainConfig_engineVersion,+ domainConfig_logPublishingOptions,+ domainConfig_nodeToNodeEncryptionOptions,+ domainConfig_snapshotOptions,+ domainConfig_vPCOptions,++ -- ** DomainEndpointOptions+ domainEndpointOptions_customEndpoint,+ domainEndpointOptions_customEndpointCertificateArn,+ domainEndpointOptions_customEndpointEnabled,+ domainEndpointOptions_enforceHTTPS,+ domainEndpointOptions_tLSSecurityPolicy,++ -- ** DomainEndpointOptionsStatus+ domainEndpointOptionsStatus_options,+ domainEndpointOptionsStatus_status,++ -- ** DomainInfo+ domainInfo_domainName,+ domainInfo_engineType,++ -- ** DomainInformationContainer+ domainInformationContainer_aWSDomainInformation,++ -- ** DomainPackageDetails+ domainPackageDetails_domainName,+ domainPackageDetails_domainPackageStatus,+ domainPackageDetails_errorDetails,+ domainPackageDetails_lastUpdated,+ domainPackageDetails_packageID,+ domainPackageDetails_packageName,+ domainPackageDetails_packageType,+ domainPackageDetails_packageVersion,+ domainPackageDetails_referencePath,++ -- ** DomainStatus+ domainStatus_accessPolicies,+ domainStatus_advancedOptions,+ domainStatus_advancedSecurityOptions,+ domainStatus_autoTuneOptions,+ domainStatus_changeProgressDetails,+ domainStatus_cognitoOptions,+ domainStatus_created,+ domainStatus_deleted,+ domainStatus_domainEndpointOptions,+ domainStatus_eBSOptions,+ domainStatus_encryptionAtRestOptions,+ domainStatus_endpoint,+ domainStatus_endpoints,+ domainStatus_engineVersion,+ domainStatus_logPublishingOptions,+ domainStatus_nodeToNodeEncryptionOptions,+ domainStatus_processing,+ domainStatus_serviceSoftwareOptions,+ domainStatus_snapshotOptions,+ domainStatus_upgradeProcessing,+ domainStatus_vPCOptions,+ domainStatus_domainId,+ domainStatus_domainName,+ domainStatus_arn,+ domainStatus_clusterConfig,++ -- ** DryRunResults+ dryRunResults_deploymentType,+ dryRunResults_message,++ -- ** Duration+ duration_unit,+ duration_value,++ -- ** EBSOptions+ eBSOptions_eBSEnabled,+ eBSOptions_iops,+ eBSOptions_throughput,+ eBSOptions_volumeSize,+ eBSOptions_volumeType,++ -- ** EBSOptionsStatus+ eBSOptionsStatus_options,+ eBSOptionsStatus_status,++ -- ** EncryptionAtRestOptions+ encryptionAtRestOptions_enabled,+ encryptionAtRestOptions_kmsKeyId,++ -- ** EncryptionAtRestOptionsStatus+ encryptionAtRestOptionsStatus_options,+ encryptionAtRestOptionsStatus_status,++ -- ** ErrorDetails+ errorDetails_errorMessage,+ errorDetails_errorType,++ -- ** Filter+ filter_name,+ filter_values,++ -- ** InboundConnection+ inboundConnection_connectionId,+ inboundConnection_connectionStatus,+ inboundConnection_localDomainInfo,+ inboundConnection_remoteDomainInfo,++ -- ** InboundConnectionStatus+ inboundConnectionStatus_message,+ inboundConnectionStatus_statusCode,++ -- ** InstanceCountLimits+ instanceCountLimits_maximumInstanceCount,+ instanceCountLimits_minimumInstanceCount,++ -- ** InstanceLimits+ instanceLimits_instanceCountLimits,++ -- ** InstanceTypeDetails+ instanceTypeDetails_advancedSecurityEnabled,+ instanceTypeDetails_appLogsEnabled,+ instanceTypeDetails_cognitoEnabled,+ instanceTypeDetails_encryptionEnabled,+ instanceTypeDetails_instanceRole,+ instanceTypeDetails_instanceType,+ instanceTypeDetails_warmEnabled,++ -- ** Limits+ limits_additionalLimits,+ limits_instanceLimits,+ limits_storageTypes,++ -- ** LogPublishingOption+ logPublishingOption_cloudWatchLogsLogGroupArn,+ logPublishingOption_enabled,++ -- ** LogPublishingOptionsStatus+ logPublishingOptionsStatus_options,+ logPublishingOptionsStatus_status,++ -- ** MasterUserOptions+ masterUserOptions_masterUserARN,+ masterUserOptions_masterUserName,+ masterUserOptions_masterUserPassword,++ -- ** NodeToNodeEncryptionOptions+ nodeToNodeEncryptionOptions_enabled,++ -- ** NodeToNodeEncryptionOptionsStatus+ nodeToNodeEncryptionOptionsStatus_options,+ nodeToNodeEncryptionOptionsStatus_status,++ -- ** OptionStatus+ optionStatus_pendingDeletion,+ optionStatus_updateVersion,+ optionStatus_creationDate,+ optionStatus_updateDate,+ optionStatus_state,++ -- ** OutboundConnection+ outboundConnection_connectionAlias,+ outboundConnection_connectionId,+ outboundConnection_connectionStatus,+ outboundConnection_localDomainInfo,+ outboundConnection_remoteDomainInfo,++ -- ** OutboundConnectionStatus+ outboundConnectionStatus_message,+ outboundConnectionStatus_statusCode,++ -- ** PackageDetails+ packageDetails_availablePackageVersion,+ packageDetails_createdAt,+ packageDetails_errorDetails,+ packageDetails_lastUpdatedAt,+ packageDetails_packageDescription,+ packageDetails_packageID,+ packageDetails_packageName,+ packageDetails_packageStatus,+ packageDetails_packageType,++ -- ** PackageSource+ packageSource_s3BucketName,+ packageSource_s3Key,++ -- ** PackageVersionHistory+ packageVersionHistory_commitMessage,+ packageVersionHistory_createdAt,+ packageVersionHistory_packageVersion,++ -- ** RecurringCharge+ recurringCharge_recurringChargeAmount,+ recurringCharge_recurringChargeFrequency,++ -- ** ReservedInstance+ reservedInstance_billingSubscriptionId,+ reservedInstance_currencyCode,+ reservedInstance_duration,+ reservedInstance_fixedPrice,+ reservedInstance_instanceCount,+ reservedInstance_instanceType,+ reservedInstance_paymentOption,+ reservedInstance_recurringCharges,+ reservedInstance_reservationName,+ reservedInstance_reservedInstanceId,+ reservedInstance_reservedInstanceOfferingId,+ reservedInstance_startTime,+ reservedInstance_state,+ reservedInstance_usagePrice,++ -- ** ReservedInstanceOffering+ reservedInstanceOffering_currencyCode,+ reservedInstanceOffering_duration,+ reservedInstanceOffering_fixedPrice,+ reservedInstanceOffering_instanceType,+ reservedInstanceOffering_paymentOption,+ reservedInstanceOffering_recurringCharges,+ reservedInstanceOffering_reservedInstanceOfferingId,+ reservedInstanceOffering_usagePrice,++ -- ** SAMLIdp+ sAMLIdp_metadataContent,+ sAMLIdp_entityId,++ -- ** SAMLOptionsInput+ sAMLOptionsInput_enabled,+ sAMLOptionsInput_idp,+ sAMLOptionsInput_masterBackendRole,+ sAMLOptionsInput_masterUserName,+ sAMLOptionsInput_rolesKey,+ sAMLOptionsInput_sessionTimeoutMinutes,+ sAMLOptionsInput_subjectKey,++ -- ** SAMLOptionsOutput+ sAMLOptionsOutput_enabled,+ sAMLOptionsOutput_idp,+ sAMLOptionsOutput_rolesKey,+ sAMLOptionsOutput_sessionTimeoutMinutes,+ sAMLOptionsOutput_subjectKey,++ -- ** ScheduledAutoTuneDetails+ scheduledAutoTuneDetails_action,+ scheduledAutoTuneDetails_actionType,+ scheduledAutoTuneDetails_date,+ scheduledAutoTuneDetails_severity,++ -- ** ServiceSoftwareOptions+ serviceSoftwareOptions_automatedUpdateDate,+ serviceSoftwareOptions_cancellable,+ serviceSoftwareOptions_currentVersion,+ serviceSoftwareOptions_description,+ serviceSoftwareOptions_newVersion,+ serviceSoftwareOptions_optionalDeployment,+ serviceSoftwareOptions_updateAvailable,+ serviceSoftwareOptions_updateStatus,++ -- ** SnapshotOptions+ snapshotOptions_automatedSnapshotStartHour,++ -- ** SnapshotOptionsStatus+ snapshotOptionsStatus_options,+ snapshotOptionsStatus_status,++ -- ** StorageType+ storageType_storageSubTypeName,+ storageType_storageTypeLimits,+ storageType_storageTypeName,++ -- ** StorageTypeLimit+ storageTypeLimit_limitName,+ storageTypeLimit_limitValues,++ -- ** Tag+ tag_key,+ tag_value,++ -- ** UpgradeHistory+ upgradeHistory_startTimestamp,+ upgradeHistory_stepsList,+ upgradeHistory_upgradeName,+ upgradeHistory_upgradeStatus,++ -- ** UpgradeStepItem+ upgradeStepItem_issues,+ upgradeStepItem_progressPercent,+ upgradeStepItem_upgradeStep,+ upgradeStepItem_upgradeStepStatus,++ -- ** VPCDerivedInfo+ vPCDerivedInfo_availabilityZones,+ vPCDerivedInfo_securityGroupIds,+ vPCDerivedInfo_subnetIds,+ vPCDerivedInfo_vPCId,++ -- ** VPCDerivedInfoStatus+ vPCDerivedInfoStatus_options,+ vPCDerivedInfoStatus_status,++ -- ** VPCOptions+ vPCOptions_securityGroupIds,+ vPCOptions_subnetIds,++ -- ** VersionStatus+ versionStatus_options,+ versionStatus_status,++ -- ** VpcEndpoint+ vpcEndpoint_domainArn,+ vpcEndpoint_endpoint,+ vpcEndpoint_status,+ vpcEndpoint_vpcEndpointId,+ vpcEndpoint_vpcEndpointOwner,+ vpcEndpoint_vpcOptions,++ -- ** VpcEndpointError+ vpcEndpointError_errorCode,+ vpcEndpointError_errorMessage,+ vpcEndpointError_vpcEndpointId,++ -- ** VpcEndpointSummary+ vpcEndpointSummary_domainArn,+ vpcEndpointSummary_status,+ vpcEndpointSummary_vpcEndpointId,+ vpcEndpointSummary_vpcEndpointOwner,++ -- ** ZoneAwarenessConfig+ zoneAwarenessConfig_availabilityZoneCount,+ )+where++import Amazonka.OpenSearch.AcceptInboundConnection+import Amazonka.OpenSearch.AddTags+import Amazonka.OpenSearch.AssociatePackage+import Amazonka.OpenSearch.AuthorizeVpcEndpointAccess+import Amazonka.OpenSearch.CancelServiceSoftwareUpdate+import Amazonka.OpenSearch.CreateDomain+import Amazonka.OpenSearch.CreateOutboundConnection+import Amazonka.OpenSearch.CreatePackage+import Amazonka.OpenSearch.CreateVpcEndpoint+import Amazonka.OpenSearch.DeleteDomain+import Amazonka.OpenSearch.DeleteInboundConnection+import Amazonka.OpenSearch.DeleteOutboundConnection+import Amazonka.OpenSearch.DeletePackage+import Amazonka.OpenSearch.DeleteVpcEndpoint+import Amazonka.OpenSearch.DescribeDomain+import Amazonka.OpenSearch.DescribeDomainAutoTunes+import Amazonka.OpenSearch.DescribeDomainChangeProgress+import Amazonka.OpenSearch.DescribeDomainConfig+import Amazonka.OpenSearch.DescribeDomains+import Amazonka.OpenSearch.DescribeInboundConnections+import Amazonka.OpenSearch.DescribeInstanceTypeLimits+import Amazonka.OpenSearch.DescribeOutboundConnections+import Amazonka.OpenSearch.DescribePackages+import Amazonka.OpenSearch.DescribeReservedInstanceOfferings+import Amazonka.OpenSearch.DescribeReservedInstances+import Amazonka.OpenSearch.DescribeVpcEndpoints+import Amazonka.OpenSearch.DissociatePackage+import Amazonka.OpenSearch.GetCompatibleVersions+import Amazonka.OpenSearch.GetPackageVersionHistory+import Amazonka.OpenSearch.GetUpgradeHistory+import Amazonka.OpenSearch.GetUpgradeStatus+import Amazonka.OpenSearch.ListDomainNames+import Amazonka.OpenSearch.ListDomainsForPackage+import Amazonka.OpenSearch.ListInstanceTypeDetails+import Amazonka.OpenSearch.ListPackagesForDomain+import Amazonka.OpenSearch.ListTags+import Amazonka.OpenSearch.ListVersions+import Amazonka.OpenSearch.ListVpcEndpointAccess+import Amazonka.OpenSearch.ListVpcEndpoints+import Amazonka.OpenSearch.ListVpcEndpointsForDomain+import Amazonka.OpenSearch.PurchaseReservedInstanceOffering+import Amazonka.OpenSearch.RejectInboundConnection+import Amazonka.OpenSearch.RemoveTags+import Amazonka.OpenSearch.RevokeVpcEndpointAccess+import Amazonka.OpenSearch.StartServiceSoftwareUpdate+import Amazonka.OpenSearch.Types.AWSDomainInformation+import Amazonka.OpenSearch.Types.AccessPoliciesStatus+import Amazonka.OpenSearch.Types.AdditionalLimit+import Amazonka.OpenSearch.Types.AdvancedOptionsStatus+import Amazonka.OpenSearch.Types.AdvancedSecurityOptions+import Amazonka.OpenSearch.Types.AdvancedSecurityOptionsInput+import Amazonka.OpenSearch.Types.AdvancedSecurityOptionsStatus+import Amazonka.OpenSearch.Types.AuthorizedPrincipal+import Amazonka.OpenSearch.Types.AutoTune+import Amazonka.OpenSearch.Types.AutoTuneDetails+import Amazonka.OpenSearch.Types.AutoTuneMaintenanceSchedule+import Amazonka.OpenSearch.Types.AutoTuneOptions+import Amazonka.OpenSearch.Types.AutoTuneOptionsInput+import Amazonka.OpenSearch.Types.AutoTuneOptionsOutput+import Amazonka.OpenSearch.Types.AutoTuneOptionsStatus+import Amazonka.OpenSearch.Types.AutoTuneStatus+import Amazonka.OpenSearch.Types.ChangeProgressDetails+import Amazonka.OpenSearch.Types.ChangeProgressStage+import Amazonka.OpenSearch.Types.ChangeProgressStatusDetails+import Amazonka.OpenSearch.Types.ClusterConfig+import Amazonka.OpenSearch.Types.ClusterConfigStatus+import Amazonka.OpenSearch.Types.CognitoOptions+import Amazonka.OpenSearch.Types.CognitoOptionsStatus+import Amazonka.OpenSearch.Types.ColdStorageOptions+import Amazonka.OpenSearch.Types.CompatibleVersionsMap+import Amazonka.OpenSearch.Types.DescribePackagesFilter+import Amazonka.OpenSearch.Types.DomainConfig+import Amazonka.OpenSearch.Types.DomainEndpointOptions+import Amazonka.OpenSearch.Types.DomainEndpointOptionsStatus+import Amazonka.OpenSearch.Types.DomainInfo+import Amazonka.OpenSearch.Types.DomainInformationContainer+import Amazonka.OpenSearch.Types.DomainPackageDetails+import Amazonka.OpenSearch.Types.DomainStatus+import Amazonka.OpenSearch.Types.DryRunResults+import Amazonka.OpenSearch.Types.Duration+import Amazonka.OpenSearch.Types.EBSOptions+import Amazonka.OpenSearch.Types.EBSOptionsStatus+import Amazonka.OpenSearch.Types.EncryptionAtRestOptions+import Amazonka.OpenSearch.Types.EncryptionAtRestOptionsStatus+import Amazonka.OpenSearch.Types.ErrorDetails+import Amazonka.OpenSearch.Types.Filter+import Amazonka.OpenSearch.Types.InboundConnection+import Amazonka.OpenSearch.Types.InboundConnectionStatus+import Amazonka.OpenSearch.Types.InstanceCountLimits+import Amazonka.OpenSearch.Types.InstanceLimits+import Amazonka.OpenSearch.Types.InstanceTypeDetails+import Amazonka.OpenSearch.Types.Limits+import Amazonka.OpenSearch.Types.LogPublishingOption+import Amazonka.OpenSearch.Types.LogPublishingOptionsStatus+import Amazonka.OpenSearch.Types.MasterUserOptions+import Amazonka.OpenSearch.Types.NodeToNodeEncryptionOptions+import Amazonka.OpenSearch.Types.NodeToNodeEncryptionOptionsStatus+import Amazonka.OpenSearch.Types.OptionStatus+import Amazonka.OpenSearch.Types.OutboundConnection+import Amazonka.OpenSearch.Types.OutboundConnectionStatus+import Amazonka.OpenSearch.Types.PackageDetails+import Amazonka.OpenSearch.Types.PackageSource+import Amazonka.OpenSearch.Types.PackageVersionHistory+import Amazonka.OpenSearch.Types.RecurringCharge+import Amazonka.OpenSearch.Types.ReservedInstance+import Amazonka.OpenSearch.Types.ReservedInstanceOffering+import Amazonka.OpenSearch.Types.SAMLIdp+import Amazonka.OpenSearch.Types.SAMLOptionsInput+import Amazonka.OpenSearch.Types.SAMLOptionsOutput+import Amazonka.OpenSearch.Types.ScheduledAutoTuneDetails+import Amazonka.OpenSearch.Types.ServiceSoftwareOptions+import Amazonka.OpenSearch.Types.SnapshotOptions+import Amazonka.OpenSearch.Types.SnapshotOptionsStatus+import Amazonka.OpenSearch.Types.StorageType+import Amazonka.OpenSearch.Types.StorageTypeLimit+import Amazonka.OpenSearch.Types.Tag+import Amazonka.OpenSearch.Types.UpgradeHistory+import Amazonka.OpenSearch.Types.UpgradeStepItem+import Amazonka.OpenSearch.Types.VPCDerivedInfo+import Amazonka.OpenSearch.Types.VPCDerivedInfoStatus+import Amazonka.OpenSearch.Types.VPCOptions+import Amazonka.OpenSearch.Types.VersionStatus+import Amazonka.OpenSearch.Types.VpcEndpoint+import Amazonka.OpenSearch.Types.VpcEndpointError+import Amazonka.OpenSearch.Types.VpcEndpointSummary+import Amazonka.OpenSearch.Types.ZoneAwarenessConfig+import Amazonka.OpenSearch.UpdateDomainConfig+import Amazonka.OpenSearch.UpdatePackage+import Amazonka.OpenSearch.UpdateVpcEndpoint+import Amazonka.OpenSearch.UpgradeDomain
+ gen/Amazonka/OpenSearch/ListDomainNames.hs view
@@ -0,0 +1,157 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.OpenSearch.ListDomainNames+-- 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 the names of all Amazon OpenSearch Service domains owned by the+-- current user in the active Region.+module Amazonka.OpenSearch.ListDomainNames+ ( -- * Creating a Request+ ListDomainNames (..),+ newListDomainNames,++ -- * Request Lenses+ listDomainNames_engineType,++ -- * Destructuring the Response+ ListDomainNamesResponse (..),+ newListDomainNamesResponse,++ -- * Response Lenses+ listDomainNamesResponse_domainNames,+ listDomainNamesResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Container for the parameters to the @ListDomainNames@ operation.+--+-- /See:/ 'newListDomainNames' smart constructor.+data ListDomainNames = ListDomainNames'+ { -- | Filters the output by domain engine type.+ engineType :: Prelude.Maybe EngineType+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListDomainNames' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'engineType', 'listDomainNames_engineType' - Filters the output by domain engine type.+newListDomainNames ::+ ListDomainNames+newListDomainNames =+ ListDomainNames' {engineType = Prelude.Nothing}++-- | Filters the output by domain engine type.+listDomainNames_engineType :: Lens.Lens' ListDomainNames (Prelude.Maybe EngineType)+listDomainNames_engineType = Lens.lens (\ListDomainNames' {engineType} -> engineType) (\s@ListDomainNames' {} a -> s {engineType = a} :: ListDomainNames)++instance Core.AWSRequest ListDomainNames where+ type+ AWSResponse ListDomainNames =+ ListDomainNamesResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListDomainNamesResponse'+ Prelude.<$> (x Data..?> "DomainNames" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListDomainNames where+ hashWithSalt _salt ListDomainNames' {..} =+ _salt `Prelude.hashWithSalt` engineType++instance Prelude.NFData ListDomainNames where+ rnf ListDomainNames' {..} = Prelude.rnf engineType++instance Data.ToHeaders ListDomainNames where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ListDomainNames where+ toPath = Prelude.const "/2021-01-01/domain"++instance Data.ToQuery ListDomainNames where+ toQuery ListDomainNames' {..} =+ Prelude.mconcat ["engineType" Data.=: engineType]++-- | The results of a @ListDomainNames@ operation. Contains the names of all+-- domains owned by this account and their respective engine types.+--+-- /See:/ 'newListDomainNamesResponse' smart constructor.+data ListDomainNamesResponse = ListDomainNamesResponse'+ { -- | The names of all OpenSearch Service domains owned by the current user+ -- and their respective engine types.+ domainNames :: Prelude.Maybe [DomainInfo],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListDomainNamesResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domainNames', 'listDomainNamesResponse_domainNames' - The names of all OpenSearch Service domains owned by the current user+-- and their respective engine types.+--+-- 'httpStatus', 'listDomainNamesResponse_httpStatus' - The response's http status code.+newListDomainNamesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListDomainNamesResponse+newListDomainNamesResponse pHttpStatus_ =+ ListDomainNamesResponse'+ { domainNames =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The names of all OpenSearch Service domains owned by the current user+-- and their respective engine types.+listDomainNamesResponse_domainNames :: Lens.Lens' ListDomainNamesResponse (Prelude.Maybe [DomainInfo])+listDomainNamesResponse_domainNames = Lens.lens (\ListDomainNamesResponse' {domainNames} -> domainNames) (\s@ListDomainNamesResponse' {} a -> s {domainNames = a} :: ListDomainNamesResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listDomainNamesResponse_httpStatus :: Lens.Lens' ListDomainNamesResponse Prelude.Int+listDomainNamesResponse_httpStatus = Lens.lens (\ListDomainNamesResponse' {httpStatus} -> httpStatus) (\s@ListDomainNamesResponse' {} a -> s {httpStatus = a} :: ListDomainNamesResponse)++instance Prelude.NFData ListDomainNamesResponse where+ rnf ListDomainNamesResponse' {..} =+ Prelude.rnf domainNames+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/OpenSearch/ListDomainsForPackage.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.OpenSearch.ListDomainsForPackage+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists all Amazon OpenSearch Service domains associated with a given+-- package. For more information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/custom-packages.html Custom packages for Amazon OpenSearch Service>.+module Amazonka.OpenSearch.ListDomainsForPackage+ ( -- * Creating a Request+ ListDomainsForPackage (..),+ newListDomainsForPackage,++ -- * Request Lenses+ listDomainsForPackage_maxResults,+ listDomainsForPackage_nextToken,+ listDomainsForPackage_packageID,++ -- * Destructuring the Response+ ListDomainsForPackageResponse (..),+ newListDomainsForPackageResponse,++ -- * Response Lenses+ listDomainsForPackageResponse_domainPackageDetailsList,+ listDomainsForPackageResponse_nextToken,+ listDomainsForPackageResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Container for the request parameters to the @ListDomainsForPackage@+-- operation.+--+-- /See:/ 'newListDomainsForPackage' smart constructor.+data ListDomainsForPackage = ListDomainsForPackage'+ { -- | An optional parameter that specifies the maximum number of results to+ -- return. You can use @nextToken@ to get the next page of results.+ maxResults :: Prelude.Maybe Prelude.Int,+ -- | If your initial @ListDomainsForPackage@ operation returns a @nextToken@,+ -- you can include the returned @nextToken@ in subsequent+ -- @ListDomainsForPackage@ operations, which returns results in the next+ -- page.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier of the package for which to list associated+ -- domains.+ packageID :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListDomainsForPackage' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'listDomainsForPackage_maxResults' - An optional parameter that specifies the maximum number of results to+-- return. You can use @nextToken@ to get the next page of results.+--+-- 'nextToken', 'listDomainsForPackage_nextToken' - If your initial @ListDomainsForPackage@ operation returns a @nextToken@,+-- you can include the returned @nextToken@ in subsequent+-- @ListDomainsForPackage@ operations, which returns results in the next+-- page.+--+-- 'packageID', 'listDomainsForPackage_packageID' - The unique identifier of the package for which to list associated+-- domains.+newListDomainsForPackage ::+ -- | 'packageID'+ Prelude.Text ->+ ListDomainsForPackage+newListDomainsForPackage pPackageID_ =+ ListDomainsForPackage'+ { maxResults =+ Prelude.Nothing,+ nextToken = Prelude.Nothing,+ packageID = pPackageID_+ }++-- | An optional parameter that specifies the maximum number of results to+-- return. You can use @nextToken@ to get the next page of results.+listDomainsForPackage_maxResults :: Lens.Lens' ListDomainsForPackage (Prelude.Maybe Prelude.Int)+listDomainsForPackage_maxResults = Lens.lens (\ListDomainsForPackage' {maxResults} -> maxResults) (\s@ListDomainsForPackage' {} a -> s {maxResults = a} :: ListDomainsForPackage)++-- | If your initial @ListDomainsForPackage@ operation returns a @nextToken@,+-- you can include the returned @nextToken@ in subsequent+-- @ListDomainsForPackage@ operations, which returns results in the next+-- page.+listDomainsForPackage_nextToken :: Lens.Lens' ListDomainsForPackage (Prelude.Maybe Prelude.Text)+listDomainsForPackage_nextToken = Lens.lens (\ListDomainsForPackage' {nextToken} -> nextToken) (\s@ListDomainsForPackage' {} a -> s {nextToken = a} :: ListDomainsForPackage)++-- | The unique identifier of the package for which to list associated+-- domains.+listDomainsForPackage_packageID :: Lens.Lens' ListDomainsForPackage Prelude.Text+listDomainsForPackage_packageID = Lens.lens (\ListDomainsForPackage' {packageID} -> packageID) (\s@ListDomainsForPackage' {} a -> s {packageID = a} :: ListDomainsForPackage)++instance Core.AWSRequest ListDomainsForPackage where+ type+ AWSResponse ListDomainsForPackage =+ ListDomainsForPackageResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListDomainsForPackageResponse'+ Prelude.<$> ( x+ Data..?> "DomainPackageDetailsList"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "NextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListDomainsForPackage where+ hashWithSalt _salt ListDomainsForPackage' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` packageID++instance Prelude.NFData ListDomainsForPackage where+ rnf ListDomainsForPackage' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf packageID++instance Data.ToHeaders ListDomainsForPackage where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ListDomainsForPackage where+ toPath ListDomainsForPackage' {..} =+ Prelude.mconcat+ [ "/2021-01-01/packages/",+ Data.toBS packageID,+ "/domains"+ ]++instance Data.ToQuery ListDomainsForPackage where+ toQuery ListDomainsForPackage' {..} =+ Prelude.mconcat+ [ "maxResults" Data.=: maxResults,+ "nextToken" Data.=: nextToken+ ]++-- | Container for the response parameters to the @ListDomainsForPackage@+-- operation.+--+-- /See:/ 'newListDomainsForPackageResponse' smart constructor.+data ListDomainsForPackageResponse = ListDomainsForPackageResponse'+ { -- | Information about all domains associated with a package.+ domainPackageDetailsList :: Prelude.Maybe [DomainPackageDetails],+ -- | When @nextToken@ is returned, there are more results available. The+ -- value of @nextToken@ is a unique pagination token for each page. Make+ -- the call again using the returned token to retrieve the next page.+ 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 'ListDomainsForPackageResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domainPackageDetailsList', 'listDomainsForPackageResponse_domainPackageDetailsList' - Information about all domains associated with a package.+--+-- 'nextToken', 'listDomainsForPackageResponse_nextToken' - When @nextToken@ is returned, there are more results available. The+-- value of @nextToken@ is a unique pagination token for each page. Make+-- the call again using the returned token to retrieve the next page.+--+-- 'httpStatus', 'listDomainsForPackageResponse_httpStatus' - The response's http status code.+newListDomainsForPackageResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListDomainsForPackageResponse+newListDomainsForPackageResponse pHttpStatus_ =+ ListDomainsForPackageResponse'+ { domainPackageDetailsList =+ Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Information about all domains associated with a package.+listDomainsForPackageResponse_domainPackageDetailsList :: Lens.Lens' ListDomainsForPackageResponse (Prelude.Maybe [DomainPackageDetails])+listDomainsForPackageResponse_domainPackageDetailsList = Lens.lens (\ListDomainsForPackageResponse' {domainPackageDetailsList} -> domainPackageDetailsList) (\s@ListDomainsForPackageResponse' {} a -> s {domainPackageDetailsList = a} :: ListDomainsForPackageResponse) Prelude.. Lens.mapping Lens.coerced++-- | When @nextToken@ is returned, there are more results available. The+-- value of @nextToken@ is a unique pagination token for each page. Make+-- the call again using the returned token to retrieve the next page.+listDomainsForPackageResponse_nextToken :: Lens.Lens' ListDomainsForPackageResponse (Prelude.Maybe Prelude.Text)+listDomainsForPackageResponse_nextToken = Lens.lens (\ListDomainsForPackageResponse' {nextToken} -> nextToken) (\s@ListDomainsForPackageResponse' {} a -> s {nextToken = a} :: ListDomainsForPackageResponse)++-- | The response's http status code.+listDomainsForPackageResponse_httpStatus :: Lens.Lens' ListDomainsForPackageResponse Prelude.Int+listDomainsForPackageResponse_httpStatus = Lens.lens (\ListDomainsForPackageResponse' {httpStatus} -> httpStatus) (\s@ListDomainsForPackageResponse' {} a -> s {httpStatus = a} :: ListDomainsForPackageResponse)++instance Prelude.NFData ListDomainsForPackageResponse where+ rnf ListDomainsForPackageResponse' {..} =+ Prelude.rnf domainPackageDetailsList+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/OpenSearch/ListInstanceTypeDetails.hs view
@@ -0,0 +1,242 @@+{-# 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.OpenSearch.ListInstanceTypeDetails+-- 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 instance types and available features for a given OpenSearch+-- or Elasticsearch version.+module Amazonka.OpenSearch.ListInstanceTypeDetails+ ( -- * Creating a Request+ ListInstanceTypeDetails (..),+ newListInstanceTypeDetails,++ -- * Request Lenses+ listInstanceTypeDetails_domainName,+ listInstanceTypeDetails_maxResults,+ listInstanceTypeDetails_nextToken,+ listInstanceTypeDetails_engineVersion,++ -- * Destructuring the Response+ ListInstanceTypeDetailsResponse (..),+ newListInstanceTypeDetailsResponse,++ -- * Response Lenses+ listInstanceTypeDetailsResponse_instanceTypeDetails,+ listInstanceTypeDetailsResponse_nextToken,+ listInstanceTypeDetailsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListInstanceTypeDetails' smart constructor.+data ListInstanceTypeDetails = ListInstanceTypeDetails'+ { -- | Name of the domain to list instance type details for.+ domainName :: Prelude.Maybe Prelude.Text,+ -- | An optional parameter that specifies the maximum number of results to+ -- return. You can use @nextToken@ to get the next page of results.+ maxResults :: Prelude.Maybe Prelude.Int,+ -- | If your initial @ListInstanceTypeDetails@ operation returns a+ -- @nextToken@, you can include the returned @nextToken@ in subsequent+ -- @ListInstanceTypeDetails@ operations, which returns results in the next+ -- page.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | Version of OpenSearch or Elasticsearch, in the format Elasticsearch_X.Y+ -- or OpenSearch_X.Y. Defaults to the latest version of OpenSearch.+ engineVersion :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListInstanceTypeDetails' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domainName', 'listInstanceTypeDetails_domainName' - Name of the domain to list instance type details for.+--+-- 'maxResults', 'listInstanceTypeDetails_maxResults' - An optional parameter that specifies the maximum number of results to+-- return. You can use @nextToken@ to get the next page of results.+--+-- 'nextToken', 'listInstanceTypeDetails_nextToken' - If your initial @ListInstanceTypeDetails@ operation returns a+-- @nextToken@, you can include the returned @nextToken@ in subsequent+-- @ListInstanceTypeDetails@ operations, which returns results in the next+-- page.+--+-- 'engineVersion', 'listInstanceTypeDetails_engineVersion' - Version of OpenSearch or Elasticsearch, in the format Elasticsearch_X.Y+-- or OpenSearch_X.Y. Defaults to the latest version of OpenSearch.+newListInstanceTypeDetails ::+ -- | 'engineVersion'+ Prelude.Text ->+ ListInstanceTypeDetails+newListInstanceTypeDetails pEngineVersion_ =+ ListInstanceTypeDetails'+ { domainName =+ Prelude.Nothing,+ maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ engineVersion = pEngineVersion_+ }++-- | Name of the domain to list instance type details for.+listInstanceTypeDetails_domainName :: Lens.Lens' ListInstanceTypeDetails (Prelude.Maybe Prelude.Text)+listInstanceTypeDetails_domainName = Lens.lens (\ListInstanceTypeDetails' {domainName} -> domainName) (\s@ListInstanceTypeDetails' {} a -> s {domainName = a} :: ListInstanceTypeDetails)++-- | An optional parameter that specifies the maximum number of results to+-- return. You can use @nextToken@ to get the next page of results.+listInstanceTypeDetails_maxResults :: Lens.Lens' ListInstanceTypeDetails (Prelude.Maybe Prelude.Int)+listInstanceTypeDetails_maxResults = Lens.lens (\ListInstanceTypeDetails' {maxResults} -> maxResults) (\s@ListInstanceTypeDetails' {} a -> s {maxResults = a} :: ListInstanceTypeDetails)++-- | If your initial @ListInstanceTypeDetails@ operation returns a+-- @nextToken@, you can include the returned @nextToken@ in subsequent+-- @ListInstanceTypeDetails@ operations, which returns results in the next+-- page.+listInstanceTypeDetails_nextToken :: Lens.Lens' ListInstanceTypeDetails (Prelude.Maybe Prelude.Text)+listInstanceTypeDetails_nextToken = Lens.lens (\ListInstanceTypeDetails' {nextToken} -> nextToken) (\s@ListInstanceTypeDetails' {} a -> s {nextToken = a} :: ListInstanceTypeDetails)++-- | Version of OpenSearch or Elasticsearch, in the format Elasticsearch_X.Y+-- or OpenSearch_X.Y. Defaults to the latest version of OpenSearch.+listInstanceTypeDetails_engineVersion :: Lens.Lens' ListInstanceTypeDetails Prelude.Text+listInstanceTypeDetails_engineVersion = Lens.lens (\ListInstanceTypeDetails' {engineVersion} -> engineVersion) (\s@ListInstanceTypeDetails' {} a -> s {engineVersion = a} :: ListInstanceTypeDetails)++instance Core.AWSRequest ListInstanceTypeDetails where+ type+ AWSResponse ListInstanceTypeDetails =+ ListInstanceTypeDetailsResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListInstanceTypeDetailsResponse'+ Prelude.<$> ( x+ Data..?> "InstanceTypeDetails"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "NextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListInstanceTypeDetails where+ hashWithSalt _salt ListInstanceTypeDetails' {..} =+ _salt+ `Prelude.hashWithSalt` domainName+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` engineVersion++instance Prelude.NFData ListInstanceTypeDetails where+ rnf ListInstanceTypeDetails' {..} =+ Prelude.rnf domainName+ `Prelude.seq` Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf engineVersion++instance Data.ToHeaders ListInstanceTypeDetails where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ListInstanceTypeDetails where+ toPath ListInstanceTypeDetails' {..} =+ Prelude.mconcat+ [ "/2021-01-01/opensearch/instanceTypeDetails/",+ Data.toBS engineVersion+ ]++instance Data.ToQuery ListInstanceTypeDetails where+ toQuery ListInstanceTypeDetails' {..} =+ Prelude.mconcat+ [ "domainName" Data.=: domainName,+ "maxResults" Data.=: maxResults,+ "nextToken" Data.=: nextToken+ ]++-- | /See:/ 'newListInstanceTypeDetailsResponse' smart constructor.+data ListInstanceTypeDetailsResponse = ListInstanceTypeDetailsResponse'+ { -- | Lists all supported instance types and features for the given OpenSearch+ -- or Elasticsearch version.+ instanceTypeDetails :: Prelude.Maybe [InstanceTypeDetails],+ -- | When @nextToken@ is returned, there are more results available. The+ -- value of @nextToken@ is a unique pagination token for each page. Make+ -- the call again using the returned token to retrieve the next page.+ 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 'ListInstanceTypeDetailsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'instanceTypeDetails', 'listInstanceTypeDetailsResponse_instanceTypeDetails' - Lists all supported instance types and features for the given OpenSearch+-- or Elasticsearch version.+--+-- 'nextToken', 'listInstanceTypeDetailsResponse_nextToken' - When @nextToken@ is returned, there are more results available. The+-- value of @nextToken@ is a unique pagination token for each page. Make+-- the call again using the returned token to retrieve the next page.+--+-- 'httpStatus', 'listInstanceTypeDetailsResponse_httpStatus' - The response's http status code.+newListInstanceTypeDetailsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListInstanceTypeDetailsResponse+newListInstanceTypeDetailsResponse pHttpStatus_ =+ ListInstanceTypeDetailsResponse'+ { instanceTypeDetails =+ Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Lists all supported instance types and features for the given OpenSearch+-- or Elasticsearch version.+listInstanceTypeDetailsResponse_instanceTypeDetails :: Lens.Lens' ListInstanceTypeDetailsResponse (Prelude.Maybe [InstanceTypeDetails])+listInstanceTypeDetailsResponse_instanceTypeDetails = Lens.lens (\ListInstanceTypeDetailsResponse' {instanceTypeDetails} -> instanceTypeDetails) (\s@ListInstanceTypeDetailsResponse' {} a -> s {instanceTypeDetails = a} :: ListInstanceTypeDetailsResponse) Prelude.. Lens.mapping Lens.coerced++-- | When @nextToken@ is returned, there are more results available. The+-- value of @nextToken@ is a unique pagination token for each page. Make+-- the call again using the returned token to retrieve the next page.+listInstanceTypeDetailsResponse_nextToken :: Lens.Lens' ListInstanceTypeDetailsResponse (Prelude.Maybe Prelude.Text)+listInstanceTypeDetailsResponse_nextToken = Lens.lens (\ListInstanceTypeDetailsResponse' {nextToken} -> nextToken) (\s@ListInstanceTypeDetailsResponse' {} a -> s {nextToken = a} :: ListInstanceTypeDetailsResponse)++-- | The response's http status code.+listInstanceTypeDetailsResponse_httpStatus :: Lens.Lens' ListInstanceTypeDetailsResponse Prelude.Int+listInstanceTypeDetailsResponse_httpStatus = Lens.lens (\ListInstanceTypeDetailsResponse' {httpStatus} -> httpStatus) (\s@ListInstanceTypeDetailsResponse' {} a -> s {httpStatus = a} :: ListInstanceTypeDetailsResponse)++instance+ Prelude.NFData+ ListInstanceTypeDetailsResponse+ where+ rnf ListInstanceTypeDetailsResponse' {..} =+ Prelude.rnf instanceTypeDetails+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/OpenSearch/ListPackagesForDomain.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.OpenSearch.ListPackagesForDomain+-- 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 packages associated with an Amazon OpenSearch Service domain.+-- For more information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/custom-packages.html Custom packages for Amazon OpenSearch Service>.+module Amazonka.OpenSearch.ListPackagesForDomain+ ( -- * Creating a Request+ ListPackagesForDomain (..),+ newListPackagesForDomain,++ -- * Request Lenses+ listPackagesForDomain_maxResults,+ listPackagesForDomain_nextToken,+ listPackagesForDomain_domainName,++ -- * Destructuring the Response+ ListPackagesForDomainResponse (..),+ newListPackagesForDomainResponse,++ -- * Response Lenses+ listPackagesForDomainResponse_domainPackageDetailsList,+ listPackagesForDomainResponse_nextToken,+ listPackagesForDomainResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Container for the request parameters to the @ListPackagesForDomain@+-- operation.+--+-- /See:/ 'newListPackagesForDomain' smart constructor.+data ListPackagesForDomain = ListPackagesForDomain'+ { -- | An optional parameter that specifies the maximum number of results to+ -- return. You can use @nextToken@ to get the next page of results.+ maxResults :: Prelude.Maybe Prelude.Int,+ -- | If your initial @ListPackagesForDomain@ operation returns a @nextToken@,+ -- you can include the returned @nextToken@ in subsequent+ -- @ListPackagesForDomain@ operations, which returns results in the next+ -- page.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The name of the domain for which you want to list associated packages.+ domainName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListPackagesForDomain' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'listPackagesForDomain_maxResults' - An optional parameter that specifies the maximum number of results to+-- return. You can use @nextToken@ to get the next page of results.+--+-- 'nextToken', 'listPackagesForDomain_nextToken' - If your initial @ListPackagesForDomain@ operation returns a @nextToken@,+-- you can include the returned @nextToken@ in subsequent+-- @ListPackagesForDomain@ operations, which returns results in the next+-- page.+--+-- 'domainName', 'listPackagesForDomain_domainName' - The name of the domain for which you want to list associated packages.+newListPackagesForDomain ::+ -- | 'domainName'+ Prelude.Text ->+ ListPackagesForDomain+newListPackagesForDomain pDomainName_ =+ ListPackagesForDomain'+ { maxResults =+ Prelude.Nothing,+ nextToken = Prelude.Nothing,+ domainName = pDomainName_+ }++-- | An optional parameter that specifies the maximum number of results to+-- return. You can use @nextToken@ to get the next page of results.+listPackagesForDomain_maxResults :: Lens.Lens' ListPackagesForDomain (Prelude.Maybe Prelude.Int)+listPackagesForDomain_maxResults = Lens.lens (\ListPackagesForDomain' {maxResults} -> maxResults) (\s@ListPackagesForDomain' {} a -> s {maxResults = a} :: ListPackagesForDomain)++-- | If your initial @ListPackagesForDomain@ operation returns a @nextToken@,+-- you can include the returned @nextToken@ in subsequent+-- @ListPackagesForDomain@ operations, which returns results in the next+-- page.+listPackagesForDomain_nextToken :: Lens.Lens' ListPackagesForDomain (Prelude.Maybe Prelude.Text)+listPackagesForDomain_nextToken = Lens.lens (\ListPackagesForDomain' {nextToken} -> nextToken) (\s@ListPackagesForDomain' {} a -> s {nextToken = a} :: ListPackagesForDomain)++-- | The name of the domain for which you want to list associated packages.+listPackagesForDomain_domainName :: Lens.Lens' ListPackagesForDomain Prelude.Text+listPackagesForDomain_domainName = Lens.lens (\ListPackagesForDomain' {domainName} -> domainName) (\s@ListPackagesForDomain' {} a -> s {domainName = a} :: ListPackagesForDomain)++instance Core.AWSRequest ListPackagesForDomain where+ type+ AWSResponse ListPackagesForDomain =+ ListPackagesForDomainResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListPackagesForDomainResponse'+ Prelude.<$> ( x+ Data..?> "DomainPackageDetailsList"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "NextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListPackagesForDomain where+ hashWithSalt _salt ListPackagesForDomain' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` domainName++instance Prelude.NFData ListPackagesForDomain where+ rnf ListPackagesForDomain' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf domainName++instance Data.ToHeaders ListPackagesForDomain where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ListPackagesForDomain where+ toPath ListPackagesForDomain' {..} =+ Prelude.mconcat+ [ "/2021-01-01/domain/",+ Data.toBS domainName,+ "/packages"+ ]++instance Data.ToQuery ListPackagesForDomain where+ toQuery ListPackagesForDomain' {..} =+ Prelude.mconcat+ [ "maxResults" Data.=: maxResults,+ "nextToken" Data.=: nextToken+ ]++-- | Container for the response parameters to the @ListPackagesForDomain@+-- operation.+--+-- /See:/ 'newListPackagesForDomainResponse' smart constructor.+data ListPackagesForDomainResponse = ListPackagesForDomainResponse'+ { -- | List of all packages associated with a domain.+ domainPackageDetailsList :: Prelude.Maybe [DomainPackageDetails],+ -- | When @nextToken@ is returned, there are more results available. The+ -- value of @nextToken@ is a unique pagination token for each page. Make+ -- the call again using the returned token to retrieve the next page.+ 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 'ListPackagesForDomainResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domainPackageDetailsList', 'listPackagesForDomainResponse_domainPackageDetailsList' - List of all packages associated with a domain.+--+-- 'nextToken', 'listPackagesForDomainResponse_nextToken' - When @nextToken@ is returned, there are more results available. The+-- value of @nextToken@ is a unique pagination token for each page. Make+-- the call again using the returned token to retrieve the next page.+--+-- 'httpStatus', 'listPackagesForDomainResponse_httpStatus' - The response's http status code.+newListPackagesForDomainResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListPackagesForDomainResponse+newListPackagesForDomainResponse pHttpStatus_ =+ ListPackagesForDomainResponse'+ { domainPackageDetailsList =+ Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | List of all packages associated with a domain.+listPackagesForDomainResponse_domainPackageDetailsList :: Lens.Lens' ListPackagesForDomainResponse (Prelude.Maybe [DomainPackageDetails])+listPackagesForDomainResponse_domainPackageDetailsList = Lens.lens (\ListPackagesForDomainResponse' {domainPackageDetailsList} -> domainPackageDetailsList) (\s@ListPackagesForDomainResponse' {} a -> s {domainPackageDetailsList = a} :: ListPackagesForDomainResponse) Prelude.. Lens.mapping Lens.coerced++-- | When @nextToken@ is returned, there are more results available. The+-- value of @nextToken@ is a unique pagination token for each page. Make+-- the call again using the returned token to retrieve the next page.+listPackagesForDomainResponse_nextToken :: Lens.Lens' ListPackagesForDomainResponse (Prelude.Maybe Prelude.Text)+listPackagesForDomainResponse_nextToken = Lens.lens (\ListPackagesForDomainResponse' {nextToken} -> nextToken) (\s@ListPackagesForDomainResponse' {} a -> s {nextToken = a} :: ListPackagesForDomainResponse)++-- | The response's http status code.+listPackagesForDomainResponse_httpStatus :: Lens.Lens' ListPackagesForDomainResponse Prelude.Int+listPackagesForDomainResponse_httpStatus = Lens.lens (\ListPackagesForDomainResponse' {httpStatus} -> httpStatus) (\s@ListPackagesForDomainResponse' {} a -> s {httpStatus = a} :: ListPackagesForDomainResponse)++instance Prelude.NFData ListPackagesForDomainResponse where+ rnf ListPackagesForDomainResponse' {..} =+ Prelude.rnf domainPackageDetailsList+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/OpenSearch/ListTags.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.OpenSearch.ListTags+-- 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 all resource tags for an Amazon OpenSearch Service domain. For+-- more information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/managedomains-awsresourcetagging.html Tagging Amazon OpenSearch Service domains>.+module Amazonka.OpenSearch.ListTags+ ( -- * Creating a Request+ ListTags (..),+ newListTags,++ -- * Request Lenses+ listTags_arn,++ -- * Destructuring the Response+ ListTagsResponse (..),+ newListTagsResponse,++ -- * Response Lenses+ listTagsResponse_tagList,+ listTagsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Container for the parameters to the @ListTags@ operation.+--+-- /See:/ 'newListTags' smart constructor.+data ListTags = ListTags'+ { -- | Amazon Resource Name (ARN) for the domain to view tags for.+ arn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListTags' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'listTags_arn' - Amazon Resource Name (ARN) for the domain to view tags for.+newListTags ::+ -- | 'arn'+ Prelude.Text ->+ ListTags+newListTags pARN_ = ListTags' {arn = pARN_}++-- | Amazon Resource Name (ARN) for the domain to view tags for.+listTags_arn :: Lens.Lens' ListTags Prelude.Text+listTags_arn = Lens.lens (\ListTags' {arn} -> arn) (\s@ListTags' {} a -> s {arn = a} :: ListTags)++instance Core.AWSRequest ListTags where+ type AWSResponse ListTags = ListTagsResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListTagsResponse'+ Prelude.<$> (x Data..?> "TagList" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListTags where+ hashWithSalt _salt ListTags' {..} =+ _salt `Prelude.hashWithSalt` arn++instance Prelude.NFData ListTags where+ rnf ListTags' {..} = Prelude.rnf arn++instance Data.ToHeaders ListTags where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ListTags where+ toPath = Prelude.const "/2021-01-01/tags/"++instance Data.ToQuery ListTags where+ toQuery ListTags' {..} =+ Prelude.mconcat ["arn" Data.=: arn]++-- | The results of a @ListTags@ operation.+--+-- /See:/ 'newListTagsResponse' smart constructor.+data ListTagsResponse = ListTagsResponse'+ { -- | List of resource tags associated with the specified domain.+ tagList :: Prelude.Maybe [Tag],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListTagsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'tagList', 'listTagsResponse_tagList' - List of resource tags associated with the specified domain.+--+-- 'httpStatus', 'listTagsResponse_httpStatus' - The response's http status code.+newListTagsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListTagsResponse+newListTagsResponse pHttpStatus_ =+ ListTagsResponse'+ { tagList = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | List of resource tags associated with the specified domain.+listTagsResponse_tagList :: Lens.Lens' ListTagsResponse (Prelude.Maybe [Tag])+listTagsResponse_tagList = Lens.lens (\ListTagsResponse' {tagList} -> tagList) (\s@ListTagsResponse' {} a -> s {tagList = a} :: ListTagsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listTagsResponse_httpStatus :: Lens.Lens' ListTagsResponse Prelude.Int+listTagsResponse_httpStatus = Lens.lens (\ListTagsResponse' {httpStatus} -> httpStatus) (\s@ListTagsResponse' {} a -> s {httpStatus = a} :: ListTagsResponse)++instance Prelude.NFData ListTagsResponse where+ rnf ListTagsResponse' {..} =+ Prelude.rnf tagList+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/OpenSearch/ListVersions.hs view
@@ -0,0 +1,201 @@+{-# 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.OpenSearch.ListVersions+-- 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 versions of OpenSearch and Elasticsearch that Amazon+-- OpenSearch Service supports.+module Amazonka.OpenSearch.ListVersions+ ( -- * Creating a Request+ ListVersions (..),+ newListVersions,++ -- * Request Lenses+ listVersions_maxResults,+ listVersions_nextToken,++ -- * Destructuring the Response+ ListVersionsResponse (..),+ newListVersionsResponse,++ -- * Response Lenses+ listVersionsResponse_nextToken,+ listVersionsResponse_versions,+ listVersionsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Container for the request parameters to the @ListVersions@ operation.+--+-- /See:/ 'newListVersions' smart constructor.+data ListVersions = ListVersions'+ { -- | An optional parameter that specifies the maximum number of results to+ -- return. You can use @nextToken@ to get the next page of results.+ maxResults :: Prelude.Maybe Prelude.Int,+ -- | If your initial @ListVersions@ operation returns a @nextToken@, you can+ -- include the returned @nextToken@ in subsequent @ListVersions@+ -- operations, which returns results in the next page.+ nextToken :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListVersions' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'listVersions_maxResults' - An optional parameter that specifies the maximum number of results to+-- return. You can use @nextToken@ to get the next page of results.+--+-- 'nextToken', 'listVersions_nextToken' - If your initial @ListVersions@ operation returns a @nextToken@, you can+-- include the returned @nextToken@ in subsequent @ListVersions@+-- operations, which returns results in the next page.+newListVersions ::+ ListVersions+newListVersions =+ ListVersions'+ { maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing+ }++-- | An optional parameter that specifies the maximum number of results to+-- return. You can use @nextToken@ to get the next page of results.+listVersions_maxResults :: Lens.Lens' ListVersions (Prelude.Maybe Prelude.Int)+listVersions_maxResults = Lens.lens (\ListVersions' {maxResults} -> maxResults) (\s@ListVersions' {} a -> s {maxResults = a} :: ListVersions)++-- | If your initial @ListVersions@ operation returns a @nextToken@, you can+-- include the returned @nextToken@ in subsequent @ListVersions@+-- operations, which returns results in the next page.+listVersions_nextToken :: Lens.Lens' ListVersions (Prelude.Maybe Prelude.Text)+listVersions_nextToken = Lens.lens (\ListVersions' {nextToken} -> nextToken) (\s@ListVersions' {} a -> s {nextToken = a} :: ListVersions)++instance Core.AWSRequest ListVersions where+ type AWSResponse ListVersions = ListVersionsResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListVersionsResponse'+ Prelude.<$> (x Data..?> "NextToken")+ Prelude.<*> (x Data..?> "Versions" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListVersions where+ hashWithSalt _salt ListVersions' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken++instance Prelude.NFData ListVersions where+ rnf ListVersions' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken++instance Data.ToHeaders ListVersions where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ListVersions where+ toPath =+ Prelude.const "/2021-01-01/opensearch/versions"++instance Data.ToQuery ListVersions where+ toQuery ListVersions' {..} =+ Prelude.mconcat+ [ "maxResults" Data.=: maxResults,+ "nextToken" Data.=: nextToken+ ]++-- | Container for the parameters for response received from the+-- @ListVersions@ operation.+--+-- /See:/ 'newListVersionsResponse' smart constructor.+data ListVersionsResponse = ListVersionsResponse'+ { -- | When @nextToken@ is returned, there are more results available. The+ -- value of @nextToken@ is a unique pagination token for each page. Make+ -- the call again using the returned token to retrieve the next page.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | A list of all versions of OpenSearch and Elasticsearch that Amazon+ -- OpenSearch Service supports.+ versions :: 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 'ListVersionsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'nextToken', 'listVersionsResponse_nextToken' - When @nextToken@ is returned, there are more results available. The+-- value of @nextToken@ is a unique pagination token for each page. Make+-- the call again using the returned token to retrieve the next page.+--+-- 'versions', 'listVersionsResponse_versions' - A list of all versions of OpenSearch and Elasticsearch that Amazon+-- OpenSearch Service supports.+--+-- 'httpStatus', 'listVersionsResponse_httpStatus' - The response's http status code.+newListVersionsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListVersionsResponse+newListVersionsResponse pHttpStatus_ =+ ListVersionsResponse'+ { nextToken = Prelude.Nothing,+ versions = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | When @nextToken@ is returned, there are more results available. The+-- value of @nextToken@ is a unique pagination token for each page. Make+-- the call again using the returned token to retrieve the next page.+listVersionsResponse_nextToken :: Lens.Lens' ListVersionsResponse (Prelude.Maybe Prelude.Text)+listVersionsResponse_nextToken = Lens.lens (\ListVersionsResponse' {nextToken} -> nextToken) (\s@ListVersionsResponse' {} a -> s {nextToken = a} :: ListVersionsResponse)++-- | A list of all versions of OpenSearch and Elasticsearch that Amazon+-- OpenSearch Service supports.+listVersionsResponse_versions :: Lens.Lens' ListVersionsResponse (Prelude.Maybe [Prelude.Text])+listVersionsResponse_versions = Lens.lens (\ListVersionsResponse' {versions} -> versions) (\s@ListVersionsResponse' {} a -> s {versions = a} :: ListVersionsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listVersionsResponse_httpStatus :: Lens.Lens' ListVersionsResponse Prelude.Int+listVersionsResponse_httpStatus = Lens.lens (\ListVersionsResponse' {httpStatus} -> httpStatus) (\s@ListVersionsResponse' {} a -> s {httpStatus = a} :: ListVersionsResponse)++instance Prelude.NFData ListVersionsResponse where+ rnf ListVersionsResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf versions+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/OpenSearch/ListVpcEndpointAccess.hs view
@@ -0,0 +1,216 @@+{-# 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.OpenSearch.ListVpcEndpointAccess+-- 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 information about each Amazon Web Services principal that is+-- allowed to access a given Amazon OpenSearch Service domain through the+-- use of an interface VPC endpoint.+module Amazonka.OpenSearch.ListVpcEndpointAccess+ ( -- * Creating a Request+ ListVpcEndpointAccess (..),+ newListVpcEndpointAccess,++ -- * Request Lenses+ listVpcEndpointAccess_nextToken,+ listVpcEndpointAccess_domainName,++ -- * Destructuring the Response+ ListVpcEndpointAccessResponse (..),+ newListVpcEndpointAccessResponse,++ -- * Response Lenses+ listVpcEndpointAccessResponse_httpStatus,+ listVpcEndpointAccessResponse_authorizedPrincipalList,+ listVpcEndpointAccessResponse_nextToken,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListVpcEndpointAccess' smart constructor.+data ListVpcEndpointAccess = ListVpcEndpointAccess'+ { -- | If your initial @ListVpcEndpointAccess@ operation returns a @nextToken@,+ -- you can include the returned @nextToken@ in subsequent+ -- @ListVpcEndpointAccess@ operations, which returns results in the next+ -- page.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The name of the OpenSearch Service domain to retrieve access information+ -- for.+ domainName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListVpcEndpointAccess' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'nextToken', 'listVpcEndpointAccess_nextToken' - If your initial @ListVpcEndpointAccess@ operation returns a @nextToken@,+-- you can include the returned @nextToken@ in subsequent+-- @ListVpcEndpointAccess@ operations, which returns results in the next+-- page.+--+-- 'domainName', 'listVpcEndpointAccess_domainName' - The name of the OpenSearch Service domain to retrieve access information+-- for.+newListVpcEndpointAccess ::+ -- | 'domainName'+ Prelude.Text ->+ ListVpcEndpointAccess+newListVpcEndpointAccess pDomainName_ =+ ListVpcEndpointAccess'+ { nextToken = Prelude.Nothing,+ domainName = pDomainName_+ }++-- | If your initial @ListVpcEndpointAccess@ operation returns a @nextToken@,+-- you can include the returned @nextToken@ in subsequent+-- @ListVpcEndpointAccess@ operations, which returns results in the next+-- page.+listVpcEndpointAccess_nextToken :: Lens.Lens' ListVpcEndpointAccess (Prelude.Maybe Prelude.Text)+listVpcEndpointAccess_nextToken = Lens.lens (\ListVpcEndpointAccess' {nextToken} -> nextToken) (\s@ListVpcEndpointAccess' {} a -> s {nextToken = a} :: ListVpcEndpointAccess)++-- | The name of the OpenSearch Service domain to retrieve access information+-- for.+listVpcEndpointAccess_domainName :: Lens.Lens' ListVpcEndpointAccess Prelude.Text+listVpcEndpointAccess_domainName = Lens.lens (\ListVpcEndpointAccess' {domainName} -> domainName) (\s@ListVpcEndpointAccess' {} a -> s {domainName = a} :: ListVpcEndpointAccess)++instance Core.AWSRequest ListVpcEndpointAccess where+ type+ AWSResponse ListVpcEndpointAccess =+ ListVpcEndpointAccessResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListVpcEndpointAccessResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> ( x+ Data..?> "AuthorizedPrincipalList"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..:> "NextToken")+ )++instance Prelude.Hashable ListVpcEndpointAccess where+ hashWithSalt _salt ListVpcEndpointAccess' {..} =+ _salt+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` domainName++instance Prelude.NFData ListVpcEndpointAccess where+ rnf ListVpcEndpointAccess' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf domainName++instance Data.ToHeaders ListVpcEndpointAccess where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ListVpcEndpointAccess where+ toPath ListVpcEndpointAccess' {..} =+ Prelude.mconcat+ [ "/2021-01-01/opensearch/domain/",+ Data.toBS domainName,+ "/listVpcEndpointAccess"+ ]++instance Data.ToQuery ListVpcEndpointAccess where+ toQuery ListVpcEndpointAccess' {..} =+ Prelude.mconcat ["nextToken" Data.=: nextToken]++-- | /See:/ 'newListVpcEndpointAccessResponse' smart constructor.+data ListVpcEndpointAccessResponse = ListVpcEndpointAccessResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | A list of+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html IAM principals>+ -- that can currently access the domain.+ authorizedPrincipalList :: [AuthorizedPrincipal],+ -- | When @nextToken@ is returned, there are more results available. The+ -- value of @nextToken@ is a unique pagination token for each page. Make+ -- the call again using the returned token to retrieve the next page.+ nextToken :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListVpcEndpointAccessResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'listVpcEndpointAccessResponse_httpStatus' - The response's http status code.+--+-- 'authorizedPrincipalList', 'listVpcEndpointAccessResponse_authorizedPrincipalList' - A list of+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html IAM principals>+-- that can currently access the domain.+--+-- 'nextToken', 'listVpcEndpointAccessResponse_nextToken' - When @nextToken@ is returned, there are more results available. The+-- value of @nextToken@ is a unique pagination token for each page. Make+-- the call again using the returned token to retrieve the next page.+newListVpcEndpointAccessResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'nextToken'+ Prelude.Text ->+ ListVpcEndpointAccessResponse+newListVpcEndpointAccessResponse+ pHttpStatus_+ pNextToken_ =+ ListVpcEndpointAccessResponse'+ { httpStatus =+ pHttpStatus_,+ authorizedPrincipalList = Prelude.mempty,+ nextToken = pNextToken_+ }++-- | The response's http status code.+listVpcEndpointAccessResponse_httpStatus :: Lens.Lens' ListVpcEndpointAccessResponse Prelude.Int+listVpcEndpointAccessResponse_httpStatus = Lens.lens (\ListVpcEndpointAccessResponse' {httpStatus} -> httpStatus) (\s@ListVpcEndpointAccessResponse' {} a -> s {httpStatus = a} :: ListVpcEndpointAccessResponse)++-- | A list of+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html IAM principals>+-- that can currently access the domain.+listVpcEndpointAccessResponse_authorizedPrincipalList :: Lens.Lens' ListVpcEndpointAccessResponse [AuthorizedPrincipal]+listVpcEndpointAccessResponse_authorizedPrincipalList = Lens.lens (\ListVpcEndpointAccessResponse' {authorizedPrincipalList} -> authorizedPrincipalList) (\s@ListVpcEndpointAccessResponse' {} a -> s {authorizedPrincipalList = a} :: ListVpcEndpointAccessResponse) Prelude.. Lens.coerced++-- | When @nextToken@ is returned, there are more results available. The+-- value of @nextToken@ is a unique pagination token for each page. Make+-- the call again using the returned token to retrieve the next page.+listVpcEndpointAccessResponse_nextToken :: Lens.Lens' ListVpcEndpointAccessResponse Prelude.Text+listVpcEndpointAccessResponse_nextToken = Lens.lens (\ListVpcEndpointAccessResponse' {nextToken} -> nextToken) (\s@ListVpcEndpointAccessResponse' {} a -> s {nextToken = a} :: ListVpcEndpointAccessResponse)++instance Prelude.NFData ListVpcEndpointAccessResponse where+ rnf ListVpcEndpointAccessResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf authorizedPrincipalList+ `Prelude.seq` Prelude.rnf nextToken
+ gen/Amazonka/OpenSearch/ListVpcEndpoints.hs view
@@ -0,0 +1,179 @@+{-# 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.OpenSearch.ListVpcEndpoints+-- 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 Amazon OpenSearch Service-managed VPC endpoints in the+-- current Amazon Web Services account and Region.+module Amazonka.OpenSearch.ListVpcEndpoints+ ( -- * Creating a Request+ ListVpcEndpoints (..),+ newListVpcEndpoints,++ -- * Request Lenses+ listVpcEndpoints_nextToken,++ -- * Destructuring the Response+ ListVpcEndpointsResponse (..),+ newListVpcEndpointsResponse,++ -- * Response Lenses+ listVpcEndpointsResponse_httpStatus,+ listVpcEndpointsResponse_vpcEndpointSummaryList,+ listVpcEndpointsResponse_nextToken,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListVpcEndpoints' smart constructor.+data ListVpcEndpoints = ListVpcEndpoints'+ { -- | If your initial @ListVpcEndpoints@ operation returns a @nextToken@, you+ -- can include the returned @nextToken@ in subsequent @ListVpcEndpoints@+ -- operations, which returns results in the next page.+ nextToken :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListVpcEndpoints' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'nextToken', 'listVpcEndpoints_nextToken' - If your initial @ListVpcEndpoints@ operation returns a @nextToken@, you+-- can include the returned @nextToken@ in subsequent @ListVpcEndpoints@+-- operations, which returns results in the next page.+newListVpcEndpoints ::+ ListVpcEndpoints+newListVpcEndpoints =+ ListVpcEndpoints' {nextToken = Prelude.Nothing}++-- | If your initial @ListVpcEndpoints@ operation returns a @nextToken@, you+-- can include the returned @nextToken@ in subsequent @ListVpcEndpoints@+-- operations, which returns results in the next page.+listVpcEndpoints_nextToken :: Lens.Lens' ListVpcEndpoints (Prelude.Maybe Prelude.Text)+listVpcEndpoints_nextToken = Lens.lens (\ListVpcEndpoints' {nextToken} -> nextToken) (\s@ListVpcEndpoints' {} a -> s {nextToken = a} :: ListVpcEndpoints)++instance Core.AWSRequest ListVpcEndpoints where+ type+ AWSResponse ListVpcEndpoints =+ ListVpcEndpointsResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListVpcEndpointsResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> ( x+ Data..?> "VpcEndpointSummaryList"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..:> "NextToken")+ )++instance Prelude.Hashable ListVpcEndpoints where+ hashWithSalt _salt ListVpcEndpoints' {..} =+ _salt `Prelude.hashWithSalt` nextToken++instance Prelude.NFData ListVpcEndpoints where+ rnf ListVpcEndpoints' {..} = Prelude.rnf nextToken++instance Data.ToHeaders ListVpcEndpoints where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ListVpcEndpoints where+ toPath =+ Prelude.const "/2021-01-01/opensearch/vpcEndpoints"++instance Data.ToQuery ListVpcEndpoints where+ toQuery ListVpcEndpoints' {..} =+ Prelude.mconcat ["nextToken" Data.=: nextToken]++-- | /See:/ 'newListVpcEndpointsResponse' smart constructor.+data ListVpcEndpointsResponse = ListVpcEndpointsResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | Information about each endpoint.+ vpcEndpointSummaryList :: [VpcEndpointSummary],+ -- | When @nextToken@ is returned, there are more results available. The+ -- value of @nextToken@ is a unique pagination token for each page. Make+ -- the call again using the returned token to retrieve the next page.+ nextToken :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListVpcEndpointsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'listVpcEndpointsResponse_httpStatus' - The response's http status code.+--+-- 'vpcEndpointSummaryList', 'listVpcEndpointsResponse_vpcEndpointSummaryList' - Information about each endpoint.+--+-- 'nextToken', 'listVpcEndpointsResponse_nextToken' - When @nextToken@ is returned, there are more results available. The+-- value of @nextToken@ is a unique pagination token for each page. Make+-- the call again using the returned token to retrieve the next page.+newListVpcEndpointsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'nextToken'+ Prelude.Text ->+ ListVpcEndpointsResponse+newListVpcEndpointsResponse pHttpStatus_ pNextToken_ =+ ListVpcEndpointsResponse'+ { httpStatus =+ pHttpStatus_,+ vpcEndpointSummaryList = Prelude.mempty,+ nextToken = pNextToken_+ }++-- | The response's http status code.+listVpcEndpointsResponse_httpStatus :: Lens.Lens' ListVpcEndpointsResponse Prelude.Int+listVpcEndpointsResponse_httpStatus = Lens.lens (\ListVpcEndpointsResponse' {httpStatus} -> httpStatus) (\s@ListVpcEndpointsResponse' {} a -> s {httpStatus = a} :: ListVpcEndpointsResponse)++-- | Information about each endpoint.+listVpcEndpointsResponse_vpcEndpointSummaryList :: Lens.Lens' ListVpcEndpointsResponse [VpcEndpointSummary]+listVpcEndpointsResponse_vpcEndpointSummaryList = Lens.lens (\ListVpcEndpointsResponse' {vpcEndpointSummaryList} -> vpcEndpointSummaryList) (\s@ListVpcEndpointsResponse' {} a -> s {vpcEndpointSummaryList = a} :: ListVpcEndpointsResponse) Prelude.. Lens.coerced++-- | When @nextToken@ is returned, there are more results available. The+-- value of @nextToken@ is a unique pagination token for each page. Make+-- the call again using the returned token to retrieve the next page.+listVpcEndpointsResponse_nextToken :: Lens.Lens' ListVpcEndpointsResponse Prelude.Text+listVpcEndpointsResponse_nextToken = Lens.lens (\ListVpcEndpointsResponse' {nextToken} -> nextToken) (\s@ListVpcEndpointsResponse' {} a -> s {nextToken = a} :: ListVpcEndpointsResponse)++instance Prelude.NFData ListVpcEndpointsResponse where+ rnf ListVpcEndpointsResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf vpcEndpointSummaryList+ `Prelude.seq` Prelude.rnf nextToken
+ gen/Amazonka/OpenSearch/ListVpcEndpointsForDomain.hs view
@@ -0,0 +1,210 @@+{-# 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.OpenSearch.ListVpcEndpointsForDomain+-- 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 Amazon OpenSearch Service-managed VPC endpoints associated+-- with a particular domain.+module Amazonka.OpenSearch.ListVpcEndpointsForDomain+ ( -- * Creating a Request+ ListVpcEndpointsForDomain (..),+ newListVpcEndpointsForDomain,++ -- * Request Lenses+ listVpcEndpointsForDomain_nextToken,+ listVpcEndpointsForDomain_domainName,++ -- * Destructuring the Response+ ListVpcEndpointsForDomainResponse (..),+ newListVpcEndpointsForDomainResponse,++ -- * Response Lenses+ listVpcEndpointsForDomainResponse_httpStatus,+ listVpcEndpointsForDomainResponse_vpcEndpointSummaryList,+ listVpcEndpointsForDomainResponse_nextToken,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListVpcEndpointsForDomain' smart constructor.+data ListVpcEndpointsForDomain = ListVpcEndpointsForDomain'+ { -- | If your initial @ListEndpointsForDomain@ operation returns a+ -- @nextToken@, you can include the returned @nextToken@ in subsequent+ -- @ListEndpointsForDomain@ operations, which returns results in the next+ -- page.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The name of the domain to list associated VPC endpoints for.+ domainName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListVpcEndpointsForDomain' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'nextToken', 'listVpcEndpointsForDomain_nextToken' - If your initial @ListEndpointsForDomain@ operation returns a+-- @nextToken@, you can include the returned @nextToken@ in subsequent+-- @ListEndpointsForDomain@ operations, which returns results in the next+-- page.+--+-- 'domainName', 'listVpcEndpointsForDomain_domainName' - The name of the domain to list associated VPC endpoints for.+newListVpcEndpointsForDomain ::+ -- | 'domainName'+ Prelude.Text ->+ ListVpcEndpointsForDomain+newListVpcEndpointsForDomain pDomainName_ =+ ListVpcEndpointsForDomain'+ { nextToken =+ Prelude.Nothing,+ domainName = pDomainName_+ }++-- | If your initial @ListEndpointsForDomain@ operation returns a+-- @nextToken@, you can include the returned @nextToken@ in subsequent+-- @ListEndpointsForDomain@ operations, which returns results in the next+-- page.+listVpcEndpointsForDomain_nextToken :: Lens.Lens' ListVpcEndpointsForDomain (Prelude.Maybe Prelude.Text)+listVpcEndpointsForDomain_nextToken = Lens.lens (\ListVpcEndpointsForDomain' {nextToken} -> nextToken) (\s@ListVpcEndpointsForDomain' {} a -> s {nextToken = a} :: ListVpcEndpointsForDomain)++-- | The name of the domain to list associated VPC endpoints for.+listVpcEndpointsForDomain_domainName :: Lens.Lens' ListVpcEndpointsForDomain Prelude.Text+listVpcEndpointsForDomain_domainName = Lens.lens (\ListVpcEndpointsForDomain' {domainName} -> domainName) (\s@ListVpcEndpointsForDomain' {} a -> s {domainName = a} :: ListVpcEndpointsForDomain)++instance Core.AWSRequest ListVpcEndpointsForDomain where+ type+ AWSResponse ListVpcEndpointsForDomain =+ ListVpcEndpointsForDomainResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListVpcEndpointsForDomainResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> ( x+ Data..?> "VpcEndpointSummaryList"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..:> "NextToken")+ )++instance Prelude.Hashable ListVpcEndpointsForDomain where+ hashWithSalt _salt ListVpcEndpointsForDomain' {..} =+ _salt+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` domainName++instance Prelude.NFData ListVpcEndpointsForDomain where+ rnf ListVpcEndpointsForDomain' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf domainName++instance Data.ToHeaders ListVpcEndpointsForDomain where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToPath ListVpcEndpointsForDomain where+ toPath ListVpcEndpointsForDomain' {..} =+ Prelude.mconcat+ [ "/2021-01-01/opensearch/domain/",+ Data.toBS domainName,+ "/vpcEndpoints"+ ]++instance Data.ToQuery ListVpcEndpointsForDomain where+ toQuery ListVpcEndpointsForDomain' {..} =+ Prelude.mconcat ["nextToken" Data.=: nextToken]++-- | /See:/ 'newListVpcEndpointsForDomainResponse' smart constructor.+data ListVpcEndpointsForDomainResponse = ListVpcEndpointsForDomainResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | Information about each endpoint associated with the domain.+ vpcEndpointSummaryList :: [VpcEndpointSummary],+ -- | When @nextToken@ is returned, there are more results available. The+ -- value of @nextToken@ is a unique pagination token for each page. Make+ -- the call again using the returned token to retrieve the next page.+ nextToken :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListVpcEndpointsForDomainResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'listVpcEndpointsForDomainResponse_httpStatus' - The response's http status code.+--+-- 'vpcEndpointSummaryList', 'listVpcEndpointsForDomainResponse_vpcEndpointSummaryList' - Information about each endpoint associated with the domain.+--+-- 'nextToken', 'listVpcEndpointsForDomainResponse_nextToken' - When @nextToken@ is returned, there are more results available. The+-- value of @nextToken@ is a unique pagination token for each page. Make+-- the call again using the returned token to retrieve the next page.+newListVpcEndpointsForDomainResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'nextToken'+ Prelude.Text ->+ ListVpcEndpointsForDomainResponse+newListVpcEndpointsForDomainResponse+ pHttpStatus_+ pNextToken_ =+ ListVpcEndpointsForDomainResponse'+ { httpStatus =+ pHttpStatus_,+ vpcEndpointSummaryList = Prelude.mempty,+ nextToken = pNextToken_+ }++-- | The response's http status code.+listVpcEndpointsForDomainResponse_httpStatus :: Lens.Lens' ListVpcEndpointsForDomainResponse Prelude.Int+listVpcEndpointsForDomainResponse_httpStatus = Lens.lens (\ListVpcEndpointsForDomainResponse' {httpStatus} -> httpStatus) (\s@ListVpcEndpointsForDomainResponse' {} a -> s {httpStatus = a} :: ListVpcEndpointsForDomainResponse)++-- | Information about each endpoint associated with the domain.+listVpcEndpointsForDomainResponse_vpcEndpointSummaryList :: Lens.Lens' ListVpcEndpointsForDomainResponse [VpcEndpointSummary]+listVpcEndpointsForDomainResponse_vpcEndpointSummaryList = Lens.lens (\ListVpcEndpointsForDomainResponse' {vpcEndpointSummaryList} -> vpcEndpointSummaryList) (\s@ListVpcEndpointsForDomainResponse' {} a -> s {vpcEndpointSummaryList = a} :: ListVpcEndpointsForDomainResponse) Prelude.. Lens.coerced++-- | When @nextToken@ is returned, there are more results available. The+-- value of @nextToken@ is a unique pagination token for each page. Make+-- the call again using the returned token to retrieve the next page.+listVpcEndpointsForDomainResponse_nextToken :: Lens.Lens' ListVpcEndpointsForDomainResponse Prelude.Text+listVpcEndpointsForDomainResponse_nextToken = Lens.lens (\ListVpcEndpointsForDomainResponse' {nextToken} -> nextToken) (\s@ListVpcEndpointsForDomainResponse' {} a -> s {nextToken = a} :: ListVpcEndpointsForDomainResponse)++instance+ Prelude.NFData+ ListVpcEndpointsForDomainResponse+ where+ rnf ListVpcEndpointsForDomainResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf vpcEndpointSummaryList+ `Prelude.seq` Prelude.rnf nextToken
+ gen/Amazonka/OpenSearch/PurchaseReservedInstanceOffering.hs view
@@ -0,0 +1,238 @@+{-# 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.OpenSearch.PurchaseReservedInstanceOffering+-- 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 purchase Amazon OpenSearch Service Reserved Instances.+module Amazonka.OpenSearch.PurchaseReservedInstanceOffering+ ( -- * Creating a Request+ PurchaseReservedInstanceOffering (..),+ newPurchaseReservedInstanceOffering,++ -- * Request Lenses+ purchaseReservedInstanceOffering_instanceCount,+ purchaseReservedInstanceOffering_reservedInstanceOfferingId,+ purchaseReservedInstanceOffering_reservationName,++ -- * Destructuring the Response+ PurchaseReservedInstanceOfferingResponse (..),+ newPurchaseReservedInstanceOfferingResponse,++ -- * Response Lenses+ purchaseReservedInstanceOfferingResponse_reservationName,+ purchaseReservedInstanceOfferingResponse_reservedInstanceId,+ purchaseReservedInstanceOfferingResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Container for request parameters to the+-- @PurchaseReservedInstanceOffering@ operation.+--+-- /See:/ 'newPurchaseReservedInstanceOffering' smart constructor.+data PurchaseReservedInstanceOffering = PurchaseReservedInstanceOffering'+ { -- | The number of OpenSearch instances to reserve.+ instanceCount :: Prelude.Maybe Prelude.Natural,+ -- | The ID of the Reserved Instance offering to purchase.+ reservedInstanceOfferingId :: Prelude.Text,+ -- | A customer-specified identifier to track this reservation.+ reservationName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PurchaseReservedInstanceOffering' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'instanceCount', 'purchaseReservedInstanceOffering_instanceCount' - The number of OpenSearch instances to reserve.+--+-- 'reservedInstanceOfferingId', 'purchaseReservedInstanceOffering_reservedInstanceOfferingId' - The ID of the Reserved Instance offering to purchase.+--+-- 'reservationName', 'purchaseReservedInstanceOffering_reservationName' - A customer-specified identifier to track this reservation.+newPurchaseReservedInstanceOffering ::+ -- | 'reservedInstanceOfferingId'+ Prelude.Text ->+ -- | 'reservationName'+ Prelude.Text ->+ PurchaseReservedInstanceOffering+newPurchaseReservedInstanceOffering+ pReservedInstanceOfferingId_+ pReservationName_ =+ PurchaseReservedInstanceOffering'+ { instanceCount =+ Prelude.Nothing,+ reservedInstanceOfferingId =+ pReservedInstanceOfferingId_,+ reservationName = pReservationName_+ }++-- | The number of OpenSearch instances to reserve.+purchaseReservedInstanceOffering_instanceCount :: Lens.Lens' PurchaseReservedInstanceOffering (Prelude.Maybe Prelude.Natural)+purchaseReservedInstanceOffering_instanceCount = Lens.lens (\PurchaseReservedInstanceOffering' {instanceCount} -> instanceCount) (\s@PurchaseReservedInstanceOffering' {} a -> s {instanceCount = a} :: PurchaseReservedInstanceOffering)++-- | The ID of the Reserved Instance offering to purchase.+purchaseReservedInstanceOffering_reservedInstanceOfferingId :: Lens.Lens' PurchaseReservedInstanceOffering Prelude.Text+purchaseReservedInstanceOffering_reservedInstanceOfferingId = Lens.lens (\PurchaseReservedInstanceOffering' {reservedInstanceOfferingId} -> reservedInstanceOfferingId) (\s@PurchaseReservedInstanceOffering' {} a -> s {reservedInstanceOfferingId = a} :: PurchaseReservedInstanceOffering)++-- | A customer-specified identifier to track this reservation.+purchaseReservedInstanceOffering_reservationName :: Lens.Lens' PurchaseReservedInstanceOffering Prelude.Text+purchaseReservedInstanceOffering_reservationName = Lens.lens (\PurchaseReservedInstanceOffering' {reservationName} -> reservationName) (\s@PurchaseReservedInstanceOffering' {} a -> s {reservationName = a} :: PurchaseReservedInstanceOffering)++instance+ Core.AWSRequest+ PurchaseReservedInstanceOffering+ where+ type+ AWSResponse PurchaseReservedInstanceOffering =+ PurchaseReservedInstanceOfferingResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ PurchaseReservedInstanceOfferingResponse'+ Prelude.<$> (x Data..?> "ReservationName")+ Prelude.<*> (x Data..?> "ReservedInstanceId")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance+ Prelude.Hashable+ PurchaseReservedInstanceOffering+ where+ hashWithSalt+ _salt+ PurchaseReservedInstanceOffering' {..} =+ _salt+ `Prelude.hashWithSalt` instanceCount+ `Prelude.hashWithSalt` reservedInstanceOfferingId+ `Prelude.hashWithSalt` reservationName++instance+ Prelude.NFData+ PurchaseReservedInstanceOffering+ where+ rnf PurchaseReservedInstanceOffering' {..} =+ Prelude.rnf instanceCount+ `Prelude.seq` Prelude.rnf reservedInstanceOfferingId+ `Prelude.seq` Prelude.rnf reservationName++instance+ Data.ToHeaders+ PurchaseReservedInstanceOffering+ where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToJSON PurchaseReservedInstanceOffering where+ toJSON PurchaseReservedInstanceOffering' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("InstanceCount" Data..=) Prelude.<$> instanceCount,+ Prelude.Just+ ( "ReservedInstanceOfferingId"+ Data..= reservedInstanceOfferingId+ ),+ Prelude.Just+ ("ReservationName" Data..= reservationName)+ ]+ )++instance Data.ToPath PurchaseReservedInstanceOffering where+ toPath =+ Prelude.const+ "/2021-01-01/opensearch/purchaseReservedInstanceOffering"++instance+ Data.ToQuery+ PurchaseReservedInstanceOffering+ where+ toQuery = Prelude.const Prelude.mempty++-- | Represents the output of a @PurchaseReservedInstanceOffering@ operation.+--+-- /See:/ 'newPurchaseReservedInstanceOfferingResponse' smart constructor.+data PurchaseReservedInstanceOfferingResponse = PurchaseReservedInstanceOfferingResponse'+ { -- | The customer-specified identifier used to track this reservation.+ reservationName :: Prelude.Maybe Prelude.Text,+ -- | The ID of the Reserved Instance offering that was purchased.+ reservedInstanceId :: 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 'PurchaseReservedInstanceOfferingResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'reservationName', 'purchaseReservedInstanceOfferingResponse_reservationName' - The customer-specified identifier used to track this reservation.+--+-- 'reservedInstanceId', 'purchaseReservedInstanceOfferingResponse_reservedInstanceId' - The ID of the Reserved Instance offering that was purchased.+--+-- 'httpStatus', 'purchaseReservedInstanceOfferingResponse_httpStatus' - The response's http status code.+newPurchaseReservedInstanceOfferingResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ PurchaseReservedInstanceOfferingResponse+newPurchaseReservedInstanceOfferingResponse+ pHttpStatus_ =+ PurchaseReservedInstanceOfferingResponse'+ { reservationName =+ Prelude.Nothing,+ reservedInstanceId =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The customer-specified identifier used to track this reservation.+purchaseReservedInstanceOfferingResponse_reservationName :: Lens.Lens' PurchaseReservedInstanceOfferingResponse (Prelude.Maybe Prelude.Text)+purchaseReservedInstanceOfferingResponse_reservationName = Lens.lens (\PurchaseReservedInstanceOfferingResponse' {reservationName} -> reservationName) (\s@PurchaseReservedInstanceOfferingResponse' {} a -> s {reservationName = a} :: PurchaseReservedInstanceOfferingResponse)++-- | The ID of the Reserved Instance offering that was purchased.+purchaseReservedInstanceOfferingResponse_reservedInstanceId :: Lens.Lens' PurchaseReservedInstanceOfferingResponse (Prelude.Maybe Prelude.Text)+purchaseReservedInstanceOfferingResponse_reservedInstanceId = Lens.lens (\PurchaseReservedInstanceOfferingResponse' {reservedInstanceId} -> reservedInstanceId) (\s@PurchaseReservedInstanceOfferingResponse' {} a -> s {reservedInstanceId = a} :: PurchaseReservedInstanceOfferingResponse)++-- | The response's http status code.+purchaseReservedInstanceOfferingResponse_httpStatus :: Lens.Lens' PurchaseReservedInstanceOfferingResponse Prelude.Int+purchaseReservedInstanceOfferingResponse_httpStatus = Lens.lens (\PurchaseReservedInstanceOfferingResponse' {httpStatus} -> httpStatus) (\s@PurchaseReservedInstanceOfferingResponse' {} a -> s {httpStatus = a} :: PurchaseReservedInstanceOfferingResponse)++instance+ Prelude.NFData+ PurchaseReservedInstanceOfferingResponse+ where+ rnf PurchaseReservedInstanceOfferingResponse' {..} =+ Prelude.rnf reservationName+ `Prelude.seq` Prelude.rnf reservedInstanceId+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/OpenSearch/RejectInboundConnection.hs view
@@ -0,0 +1,170 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.OpenSearch.RejectInboundConnection+-- 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 remote Amazon OpenSearch Service domain owner to reject an+-- inbound cross-cluster connection request.+module Amazonka.OpenSearch.RejectInboundConnection+ ( -- * Creating a Request+ RejectInboundConnection (..),+ newRejectInboundConnection,++ -- * Request Lenses+ rejectInboundConnection_connectionId,++ -- * Destructuring the Response+ RejectInboundConnectionResponse (..),+ newRejectInboundConnectionResponse,++ -- * Response Lenses+ rejectInboundConnectionResponse_connection,+ rejectInboundConnectionResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Container for the request parameters to the @RejectInboundConnection@+-- operation.+--+-- /See:/ 'newRejectInboundConnection' smart constructor.+data RejectInboundConnection = RejectInboundConnection'+ { -- | The unique identifier of the inbound connection to reject.+ connectionId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RejectInboundConnection' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'connectionId', 'rejectInboundConnection_connectionId' - The unique identifier of the inbound connection to reject.+newRejectInboundConnection ::+ -- | 'connectionId'+ Prelude.Text ->+ RejectInboundConnection+newRejectInboundConnection pConnectionId_ =+ RejectInboundConnection'+ { connectionId =+ pConnectionId_+ }++-- | The unique identifier of the inbound connection to reject.+rejectInboundConnection_connectionId :: Lens.Lens' RejectInboundConnection Prelude.Text+rejectInboundConnection_connectionId = Lens.lens (\RejectInboundConnection' {connectionId} -> connectionId) (\s@RejectInboundConnection' {} a -> s {connectionId = a} :: RejectInboundConnection)++instance Core.AWSRequest RejectInboundConnection where+ type+ AWSResponse RejectInboundConnection =+ RejectInboundConnectionResponse+ request overrides =+ Request.putJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ RejectInboundConnectionResponse'+ Prelude.<$> (x Data..?> "Connection")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable RejectInboundConnection where+ hashWithSalt _salt RejectInboundConnection' {..} =+ _salt `Prelude.hashWithSalt` connectionId++instance Prelude.NFData RejectInboundConnection where+ rnf RejectInboundConnection' {..} =+ Prelude.rnf connectionId++instance Data.ToHeaders RejectInboundConnection where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToJSON RejectInboundConnection where+ toJSON = Prelude.const (Data.Object Prelude.mempty)++instance Data.ToPath RejectInboundConnection where+ toPath RejectInboundConnection' {..} =+ Prelude.mconcat+ [ "/2021-01-01/opensearch/cc/inboundConnection/",+ Data.toBS connectionId,+ "/reject"+ ]++instance Data.ToQuery RejectInboundConnection where+ toQuery = Prelude.const Prelude.mempty++-- | Represents the output of a @RejectInboundConnection@ operation.+--+-- /See:/ 'newRejectInboundConnectionResponse' smart constructor.+data RejectInboundConnectionResponse = RejectInboundConnectionResponse'+ { -- | Contains details about the rejected inbound connection.+ connection :: Prelude.Maybe InboundConnection,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RejectInboundConnectionResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'connection', 'rejectInboundConnectionResponse_connection' - Contains details about the rejected inbound connection.+--+-- 'httpStatus', 'rejectInboundConnectionResponse_httpStatus' - The response's http status code.+newRejectInboundConnectionResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ RejectInboundConnectionResponse+newRejectInboundConnectionResponse pHttpStatus_ =+ RejectInboundConnectionResponse'+ { connection =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Contains details about the rejected inbound connection.+rejectInboundConnectionResponse_connection :: Lens.Lens' RejectInboundConnectionResponse (Prelude.Maybe InboundConnection)+rejectInboundConnectionResponse_connection = Lens.lens (\RejectInboundConnectionResponse' {connection} -> connection) (\s@RejectInboundConnectionResponse' {} a -> s {connection = a} :: RejectInboundConnectionResponse)++-- | The response's http status code.+rejectInboundConnectionResponse_httpStatus :: Lens.Lens' RejectInboundConnectionResponse Prelude.Int+rejectInboundConnectionResponse_httpStatus = Lens.lens (\RejectInboundConnectionResponse' {httpStatus} -> httpStatus) (\s@RejectInboundConnectionResponse' {} a -> s {httpStatus = a} :: RejectInboundConnectionResponse)++instance+ Prelude.NFData+ RejectInboundConnectionResponse+ where+ rnf RejectInboundConnectionResponse' {..} =+ Prelude.rnf connection+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/OpenSearch/RemoveTags.hs view
@@ -0,0 +1,138 @@+{-# 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.OpenSearch.RemoveTags+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Removes the specified set of tags from an Amazon OpenSearch Service+-- domain. For more information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/managedomains.html#managedomains-awsresorcetagging Tagging Amazon OpenSearch Service domains>.+module Amazonka.OpenSearch.RemoveTags+ ( -- * Creating a Request+ RemoveTags (..),+ newRemoveTags,++ -- * Request Lenses+ removeTags_arn,+ removeTags_tagKeys,++ -- * Destructuring the Response+ RemoveTagsResponse (..),+ newRemoveTagsResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Container for the request parameters to the @RemoveTags@ operation.+--+-- /See:/ 'newRemoveTags' smart constructor.+data RemoveTags = RemoveTags'+ { -- | The Amazon Resource Name (ARN) of the domain from which you want to+ -- delete the specified tags.+ arn :: Prelude.Text,+ -- | The list of tag keys to remove from the domain.+ tagKeys :: [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RemoveTags' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'removeTags_arn' - The Amazon Resource Name (ARN) of the domain from which you want to+-- delete the specified tags.+--+-- 'tagKeys', 'removeTags_tagKeys' - The list of tag keys to remove from the domain.+newRemoveTags ::+ -- | 'arn'+ Prelude.Text ->+ RemoveTags+newRemoveTags pARN_ =+ RemoveTags' {arn = pARN_, tagKeys = Prelude.mempty}++-- | The Amazon Resource Name (ARN) of the domain from which you want to+-- delete the specified tags.+removeTags_arn :: Lens.Lens' RemoveTags Prelude.Text+removeTags_arn = Lens.lens (\RemoveTags' {arn} -> arn) (\s@RemoveTags' {} a -> s {arn = a} :: RemoveTags)++-- | The list of tag keys to remove from the domain.+removeTags_tagKeys :: Lens.Lens' RemoveTags [Prelude.Text]+removeTags_tagKeys = Lens.lens (\RemoveTags' {tagKeys} -> tagKeys) (\s@RemoveTags' {} a -> s {tagKeys = a} :: RemoveTags) Prelude.. Lens.coerced++instance Core.AWSRequest RemoveTags where+ type AWSResponse RemoveTags = RemoveTagsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response = Response.receiveNull RemoveTagsResponse'++instance Prelude.Hashable RemoveTags where+ hashWithSalt _salt RemoveTags' {..} =+ _salt+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` tagKeys++instance Prelude.NFData RemoveTags where+ rnf RemoveTags' {..} =+ Prelude.rnf arn `Prelude.seq` Prelude.rnf tagKeys++instance Data.ToHeaders RemoveTags where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToJSON RemoveTags where+ toJSON RemoveTags' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("ARN" Data..= arn),+ Prelude.Just ("TagKeys" Data..= tagKeys)+ ]+ )++instance Data.ToPath RemoveTags where+ toPath = Prelude.const "/2021-01-01/tags-removal"++instance Data.ToQuery RemoveTags where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newRemoveTagsResponse' smart constructor.+data RemoveTagsResponse = RemoveTagsResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RemoveTagsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newRemoveTagsResponse ::+ RemoveTagsResponse+newRemoveTagsResponse = RemoveTagsResponse'++instance Prelude.NFData RemoveTagsResponse where+ rnf _ = ()
+ gen/Amazonka/OpenSearch/RevokeVpcEndpointAccess.hs view
@@ -0,0 +1,171 @@+{-# 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.OpenSearch.RevokeVpcEndpointAccess+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Revokes access to an Amazon OpenSearch Service domain that was provided+-- through an interface VPC endpoint.+module Amazonka.OpenSearch.RevokeVpcEndpointAccess+ ( -- * Creating a Request+ RevokeVpcEndpointAccess (..),+ newRevokeVpcEndpointAccess,++ -- * Request Lenses+ revokeVpcEndpointAccess_domainName,+ revokeVpcEndpointAccess_account,++ -- * Destructuring the Response+ RevokeVpcEndpointAccessResponse (..),+ newRevokeVpcEndpointAccessResponse,++ -- * Response Lenses+ revokeVpcEndpointAccessResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newRevokeVpcEndpointAccess' smart constructor.+data RevokeVpcEndpointAccess = RevokeVpcEndpointAccess'+ { -- | The name of the OpenSearch Service domain.+ domainName :: Prelude.Text,+ -- | The account ID to revoke access from.+ account :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RevokeVpcEndpointAccess' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domainName', 'revokeVpcEndpointAccess_domainName' - The name of the OpenSearch Service domain.+--+-- 'account', 'revokeVpcEndpointAccess_account' - The account ID to revoke access from.+newRevokeVpcEndpointAccess ::+ -- | 'domainName'+ Prelude.Text ->+ -- | 'account'+ Prelude.Text ->+ RevokeVpcEndpointAccess+newRevokeVpcEndpointAccess pDomainName_ pAccount_ =+ RevokeVpcEndpointAccess'+ { domainName = pDomainName_,+ account = pAccount_+ }++-- | The name of the OpenSearch Service domain.+revokeVpcEndpointAccess_domainName :: Lens.Lens' RevokeVpcEndpointAccess Prelude.Text+revokeVpcEndpointAccess_domainName = Lens.lens (\RevokeVpcEndpointAccess' {domainName} -> domainName) (\s@RevokeVpcEndpointAccess' {} a -> s {domainName = a} :: RevokeVpcEndpointAccess)++-- | The account ID to revoke access from.+revokeVpcEndpointAccess_account :: Lens.Lens' RevokeVpcEndpointAccess Prelude.Text+revokeVpcEndpointAccess_account = Lens.lens (\RevokeVpcEndpointAccess' {account} -> account) (\s@RevokeVpcEndpointAccess' {} a -> s {account = a} :: RevokeVpcEndpointAccess)++instance Core.AWSRequest RevokeVpcEndpointAccess where+ type+ AWSResponse RevokeVpcEndpointAccess =+ RevokeVpcEndpointAccessResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ RevokeVpcEndpointAccessResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable RevokeVpcEndpointAccess where+ hashWithSalt _salt RevokeVpcEndpointAccess' {..} =+ _salt+ `Prelude.hashWithSalt` domainName+ `Prelude.hashWithSalt` account++instance Prelude.NFData RevokeVpcEndpointAccess where+ rnf RevokeVpcEndpointAccess' {..} =+ Prelude.rnf domainName+ `Prelude.seq` Prelude.rnf account++instance Data.ToHeaders RevokeVpcEndpointAccess where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToJSON RevokeVpcEndpointAccess where+ toJSON RevokeVpcEndpointAccess' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("Account" Data..= account)]+ )++instance Data.ToPath RevokeVpcEndpointAccess where+ toPath RevokeVpcEndpointAccess' {..} =+ Prelude.mconcat+ [ "/2021-01-01/opensearch/domain/",+ Data.toBS domainName,+ "/revokeVpcEndpointAccess"+ ]++instance Data.ToQuery RevokeVpcEndpointAccess where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newRevokeVpcEndpointAccessResponse' smart constructor.+data RevokeVpcEndpointAccessResponse = RevokeVpcEndpointAccessResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RevokeVpcEndpointAccessResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'revokeVpcEndpointAccessResponse_httpStatus' - The response's http status code.+newRevokeVpcEndpointAccessResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ RevokeVpcEndpointAccessResponse+newRevokeVpcEndpointAccessResponse pHttpStatus_ =+ RevokeVpcEndpointAccessResponse'+ { httpStatus =+ pHttpStatus_+ }++-- | The response's http status code.+revokeVpcEndpointAccessResponse_httpStatus :: Lens.Lens' RevokeVpcEndpointAccessResponse Prelude.Int+revokeVpcEndpointAccessResponse_httpStatus = Lens.lens (\RevokeVpcEndpointAccessResponse' {httpStatus} -> httpStatus) (\s@RevokeVpcEndpointAccessResponse' {} a -> s {httpStatus = a} :: RevokeVpcEndpointAccessResponse)++instance+ Prelude.NFData+ RevokeVpcEndpointAccessResponse+ where+ rnf RevokeVpcEndpointAccessResponse' {..} =+ Prelude.rnf httpStatus
+ gen/Amazonka/OpenSearch/StartServiceSoftwareUpdate.hs view
@@ -0,0 +1,176 @@+{-# 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.OpenSearch.StartServiceSoftwareUpdate+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Schedules a service software update for an Amazon OpenSearch Service+-- domain. For more information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/service-software.html Service software updates in Amazon OpenSearch Service>.+module Amazonka.OpenSearch.StartServiceSoftwareUpdate+ ( -- * Creating a Request+ StartServiceSoftwareUpdate (..),+ newStartServiceSoftwareUpdate,++ -- * Request Lenses+ startServiceSoftwareUpdate_domainName,++ -- * Destructuring the Response+ StartServiceSoftwareUpdateResponse (..),+ newStartServiceSoftwareUpdateResponse,++ -- * Response Lenses+ startServiceSoftwareUpdateResponse_serviceSoftwareOptions,+ startServiceSoftwareUpdateResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Container for the request parameters to the @StartServiceSoftwareUpdate@+-- operation.+--+-- /See:/ 'newStartServiceSoftwareUpdate' smart constructor.+data StartServiceSoftwareUpdate = StartServiceSoftwareUpdate'+ { -- | The name of the domain that you want to update to the latest service+ -- software.+ domainName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'StartServiceSoftwareUpdate' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domainName', 'startServiceSoftwareUpdate_domainName' - The name of the domain that you want to update to the latest service+-- software.+newStartServiceSoftwareUpdate ::+ -- | 'domainName'+ Prelude.Text ->+ StartServiceSoftwareUpdate+newStartServiceSoftwareUpdate pDomainName_ =+ StartServiceSoftwareUpdate'+ { domainName =+ pDomainName_+ }++-- | The name of the domain that you want to update to the latest service+-- software.+startServiceSoftwareUpdate_domainName :: Lens.Lens' StartServiceSoftwareUpdate Prelude.Text+startServiceSoftwareUpdate_domainName = Lens.lens (\StartServiceSoftwareUpdate' {domainName} -> domainName) (\s@StartServiceSoftwareUpdate' {} a -> s {domainName = a} :: StartServiceSoftwareUpdate)++instance Core.AWSRequest StartServiceSoftwareUpdate where+ type+ AWSResponse StartServiceSoftwareUpdate =+ StartServiceSoftwareUpdateResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ StartServiceSoftwareUpdateResponse'+ Prelude.<$> (x Data..?> "ServiceSoftwareOptions")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable StartServiceSoftwareUpdate where+ hashWithSalt _salt StartServiceSoftwareUpdate' {..} =+ _salt `Prelude.hashWithSalt` domainName++instance Prelude.NFData StartServiceSoftwareUpdate where+ rnf StartServiceSoftwareUpdate' {..} =+ Prelude.rnf domainName++instance Data.ToHeaders StartServiceSoftwareUpdate where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToJSON StartServiceSoftwareUpdate where+ toJSON StartServiceSoftwareUpdate' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("DomainName" Data..= domainName)]+ )++instance Data.ToPath StartServiceSoftwareUpdate where+ toPath =+ Prelude.const+ "/2021-01-01/opensearch/serviceSoftwareUpdate/start"++instance Data.ToQuery StartServiceSoftwareUpdate where+ toQuery = Prelude.const Prelude.mempty++-- | Represents the output of a @StartServiceSoftwareUpdate@ operation.+-- Contains the status of the update.+--+-- /See:/ 'newStartServiceSoftwareUpdateResponse' smart constructor.+data StartServiceSoftwareUpdateResponse = StartServiceSoftwareUpdateResponse'+ { -- | The current status of the OpenSearch Service software update.+ serviceSoftwareOptions :: Prelude.Maybe ServiceSoftwareOptions,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'StartServiceSoftwareUpdateResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'serviceSoftwareOptions', 'startServiceSoftwareUpdateResponse_serviceSoftwareOptions' - The current status of the OpenSearch Service software update.+--+-- 'httpStatus', 'startServiceSoftwareUpdateResponse_httpStatus' - The response's http status code.+newStartServiceSoftwareUpdateResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ StartServiceSoftwareUpdateResponse+newStartServiceSoftwareUpdateResponse pHttpStatus_ =+ StartServiceSoftwareUpdateResponse'+ { serviceSoftwareOptions =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The current status of the OpenSearch Service software update.+startServiceSoftwareUpdateResponse_serviceSoftwareOptions :: Lens.Lens' StartServiceSoftwareUpdateResponse (Prelude.Maybe ServiceSoftwareOptions)+startServiceSoftwareUpdateResponse_serviceSoftwareOptions = Lens.lens (\StartServiceSoftwareUpdateResponse' {serviceSoftwareOptions} -> serviceSoftwareOptions) (\s@StartServiceSoftwareUpdateResponse' {} a -> s {serviceSoftwareOptions = a} :: StartServiceSoftwareUpdateResponse)++-- | The response's http status code.+startServiceSoftwareUpdateResponse_httpStatus :: Lens.Lens' StartServiceSoftwareUpdateResponse Prelude.Int+startServiceSoftwareUpdateResponse_httpStatus = Lens.lens (\StartServiceSoftwareUpdateResponse' {httpStatus} -> httpStatus) (\s@StartServiceSoftwareUpdateResponse' {} a -> s {httpStatus = a} :: StartServiceSoftwareUpdateResponse)++instance+ Prelude.NFData+ StartServiceSoftwareUpdateResponse+ where+ rnf StartServiceSoftwareUpdateResponse' {..} =+ Prelude.rnf serviceSoftwareOptions+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/OpenSearch/Types.hs view
@@ -0,0 +1,1029 @@+{-# 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.OpenSearch.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.OpenSearch.Types+ ( -- * Service Configuration+ defaultService,++ -- * Errors+ _AccessDeniedException,+ _BaseException,+ _ConflictException,+ _DisabledOperationException,+ _InternalException,+ _InvalidPaginationTokenException,+ _InvalidTypeException,+ _LimitExceededException,+ _ResourceAlreadyExistsException,+ _ResourceNotFoundException,+ _ValidationException,++ -- * AutoTuneDesiredState+ AutoTuneDesiredState (..),++ -- * AutoTuneState+ AutoTuneState (..),++ -- * AutoTuneType+ AutoTuneType (..),++ -- * DeploymentStatus+ DeploymentStatus (..),++ -- * DescribePackagesFilterName+ DescribePackagesFilterName (..),++ -- * DomainPackageStatus+ DomainPackageStatus (..),++ -- * EngineType+ EngineType (..),++ -- * InboundConnectionStatusCode+ InboundConnectionStatusCode (..),++ -- * LogType+ LogType (..),++ -- * OpenSearchPartitionInstanceType+ OpenSearchPartitionInstanceType (..),++ -- * OpenSearchWarmPartitionInstanceType+ OpenSearchWarmPartitionInstanceType (..),++ -- * OptionState+ OptionState (..),++ -- * OutboundConnectionStatusCode+ OutboundConnectionStatusCode (..),++ -- * OverallChangeStatus+ OverallChangeStatus (..),++ -- * PackageStatus+ PackageStatus (..),++ -- * PackageType+ PackageType (..),++ -- * PrincipalType+ PrincipalType (..),++ -- * ReservedInstancePaymentOption+ ReservedInstancePaymentOption (..),++ -- * RollbackOnDisable+ RollbackOnDisable (..),++ -- * ScheduledAutoTuneActionType+ ScheduledAutoTuneActionType (..),++ -- * ScheduledAutoTuneSeverityType+ ScheduledAutoTuneSeverityType (..),++ -- * TLSSecurityPolicy+ TLSSecurityPolicy (..),++ -- * TimeUnit+ TimeUnit (..),++ -- * UpgradeStatus+ UpgradeStatus (..),++ -- * UpgradeStep+ UpgradeStep (..),++ -- * VolumeType+ VolumeType (..),++ -- * VpcEndpointErrorCode+ VpcEndpointErrorCode (..),++ -- * VpcEndpointStatus+ VpcEndpointStatus (..),++ -- * AWSDomainInformation+ AWSDomainInformation (..),+ newAWSDomainInformation,+ aWSDomainInformation_ownerId,+ aWSDomainInformation_region,+ aWSDomainInformation_domainName,++ -- * AccessPoliciesStatus+ AccessPoliciesStatus (..),+ newAccessPoliciesStatus,+ accessPoliciesStatus_options,+ accessPoliciesStatus_status,++ -- * AdditionalLimit+ AdditionalLimit (..),+ newAdditionalLimit,+ additionalLimit_limitName,+ additionalLimit_limitValues,++ -- * AdvancedOptionsStatus+ AdvancedOptionsStatus (..),+ newAdvancedOptionsStatus,+ advancedOptionsStatus_options,+ advancedOptionsStatus_status,++ -- * AdvancedSecurityOptions+ AdvancedSecurityOptions (..),+ newAdvancedSecurityOptions,+ advancedSecurityOptions_anonymousAuthDisableDate,+ advancedSecurityOptions_anonymousAuthEnabled,+ advancedSecurityOptions_enabled,+ advancedSecurityOptions_internalUserDatabaseEnabled,+ advancedSecurityOptions_sAMLOptions,++ -- * AdvancedSecurityOptionsInput+ AdvancedSecurityOptionsInput (..),+ newAdvancedSecurityOptionsInput,+ advancedSecurityOptionsInput_anonymousAuthEnabled,+ advancedSecurityOptionsInput_enabled,+ advancedSecurityOptionsInput_internalUserDatabaseEnabled,+ advancedSecurityOptionsInput_masterUserOptions,+ advancedSecurityOptionsInput_sAMLOptions,++ -- * AdvancedSecurityOptionsStatus+ AdvancedSecurityOptionsStatus (..),+ newAdvancedSecurityOptionsStatus,+ advancedSecurityOptionsStatus_options,+ advancedSecurityOptionsStatus_status,++ -- * AuthorizedPrincipal+ AuthorizedPrincipal (..),+ newAuthorizedPrincipal,+ authorizedPrincipal_principal,+ authorizedPrincipal_principalType,++ -- * AutoTune+ AutoTune (..),+ newAutoTune,+ autoTune_autoTuneDetails,+ autoTune_autoTuneType,++ -- * AutoTuneDetails+ AutoTuneDetails (..),+ newAutoTuneDetails,+ autoTuneDetails_scheduledAutoTuneDetails,++ -- * AutoTuneMaintenanceSchedule+ AutoTuneMaintenanceSchedule (..),+ newAutoTuneMaintenanceSchedule,+ autoTuneMaintenanceSchedule_cronExpressionForRecurrence,+ autoTuneMaintenanceSchedule_duration,+ autoTuneMaintenanceSchedule_startAt,++ -- * AutoTuneOptions+ AutoTuneOptions (..),+ newAutoTuneOptions,+ autoTuneOptions_desiredState,+ autoTuneOptions_maintenanceSchedules,+ autoTuneOptions_rollbackOnDisable,++ -- * AutoTuneOptionsInput+ AutoTuneOptionsInput (..),+ newAutoTuneOptionsInput,+ autoTuneOptionsInput_desiredState,+ autoTuneOptionsInput_maintenanceSchedules,++ -- * AutoTuneOptionsOutput+ AutoTuneOptionsOutput (..),+ newAutoTuneOptionsOutput,+ autoTuneOptionsOutput_errorMessage,+ autoTuneOptionsOutput_state,++ -- * AutoTuneOptionsStatus+ AutoTuneOptionsStatus (..),+ newAutoTuneOptionsStatus,+ autoTuneOptionsStatus_options,+ autoTuneOptionsStatus_status,++ -- * AutoTuneStatus+ AutoTuneStatus (..),+ newAutoTuneStatus,+ autoTuneStatus_errorMessage,+ autoTuneStatus_pendingDeletion,+ autoTuneStatus_updateVersion,+ autoTuneStatus_creationDate,+ autoTuneStatus_updateDate,+ autoTuneStatus_state,++ -- * ChangeProgressDetails+ ChangeProgressDetails (..),+ newChangeProgressDetails,+ changeProgressDetails_changeId,+ changeProgressDetails_message,++ -- * ChangeProgressStage+ ChangeProgressStage (..),+ newChangeProgressStage,+ changeProgressStage_description,+ changeProgressStage_lastUpdated,+ changeProgressStage_name,+ changeProgressStage_status,++ -- * ChangeProgressStatusDetails+ ChangeProgressStatusDetails (..),+ newChangeProgressStatusDetails,+ changeProgressStatusDetails_changeId,+ changeProgressStatusDetails_changeProgressStages,+ changeProgressStatusDetails_completedProperties,+ changeProgressStatusDetails_pendingProperties,+ changeProgressStatusDetails_startTime,+ changeProgressStatusDetails_status,+ changeProgressStatusDetails_totalNumberOfStages,++ -- * ClusterConfig+ ClusterConfig (..),+ newClusterConfig,+ clusterConfig_coldStorageOptions,+ clusterConfig_dedicatedMasterCount,+ clusterConfig_dedicatedMasterEnabled,+ clusterConfig_dedicatedMasterType,+ clusterConfig_instanceCount,+ clusterConfig_instanceType,+ clusterConfig_warmCount,+ clusterConfig_warmEnabled,+ clusterConfig_warmType,+ clusterConfig_zoneAwarenessConfig,+ clusterConfig_zoneAwarenessEnabled,++ -- * ClusterConfigStatus+ ClusterConfigStatus (..),+ newClusterConfigStatus,+ clusterConfigStatus_options,+ clusterConfigStatus_status,++ -- * CognitoOptions+ CognitoOptions (..),+ newCognitoOptions,+ cognitoOptions_enabled,+ cognitoOptions_identityPoolId,+ cognitoOptions_roleArn,+ cognitoOptions_userPoolId,++ -- * CognitoOptionsStatus+ CognitoOptionsStatus (..),+ newCognitoOptionsStatus,+ cognitoOptionsStatus_options,+ cognitoOptionsStatus_status,++ -- * ColdStorageOptions+ ColdStorageOptions (..),+ newColdStorageOptions,+ coldStorageOptions_enabled,++ -- * CompatibleVersionsMap+ CompatibleVersionsMap (..),+ newCompatibleVersionsMap,+ compatibleVersionsMap_sourceVersion,+ compatibleVersionsMap_targetVersions,++ -- * DescribePackagesFilter+ DescribePackagesFilter (..),+ newDescribePackagesFilter,+ describePackagesFilter_name,+ describePackagesFilter_value,++ -- * DomainConfig+ DomainConfig (..),+ newDomainConfig,+ domainConfig_accessPolicies,+ domainConfig_advancedOptions,+ domainConfig_advancedSecurityOptions,+ domainConfig_autoTuneOptions,+ domainConfig_changeProgressDetails,+ domainConfig_clusterConfig,+ domainConfig_cognitoOptions,+ domainConfig_domainEndpointOptions,+ domainConfig_eBSOptions,+ domainConfig_encryptionAtRestOptions,+ domainConfig_engineVersion,+ domainConfig_logPublishingOptions,+ domainConfig_nodeToNodeEncryptionOptions,+ domainConfig_snapshotOptions,+ domainConfig_vPCOptions,++ -- * DomainEndpointOptions+ DomainEndpointOptions (..),+ newDomainEndpointOptions,+ domainEndpointOptions_customEndpoint,+ domainEndpointOptions_customEndpointCertificateArn,+ domainEndpointOptions_customEndpointEnabled,+ domainEndpointOptions_enforceHTTPS,+ domainEndpointOptions_tLSSecurityPolicy,++ -- * DomainEndpointOptionsStatus+ DomainEndpointOptionsStatus (..),+ newDomainEndpointOptionsStatus,+ domainEndpointOptionsStatus_options,+ domainEndpointOptionsStatus_status,++ -- * DomainInfo+ DomainInfo (..),+ newDomainInfo,+ domainInfo_domainName,+ domainInfo_engineType,++ -- * DomainInformationContainer+ DomainInformationContainer (..),+ newDomainInformationContainer,+ domainInformationContainer_aWSDomainInformation,++ -- * DomainPackageDetails+ DomainPackageDetails (..),+ newDomainPackageDetails,+ domainPackageDetails_domainName,+ domainPackageDetails_domainPackageStatus,+ domainPackageDetails_errorDetails,+ domainPackageDetails_lastUpdated,+ domainPackageDetails_packageID,+ domainPackageDetails_packageName,+ domainPackageDetails_packageType,+ domainPackageDetails_packageVersion,+ domainPackageDetails_referencePath,++ -- * DomainStatus+ DomainStatus (..),+ newDomainStatus,+ domainStatus_accessPolicies,+ domainStatus_advancedOptions,+ domainStatus_advancedSecurityOptions,+ domainStatus_autoTuneOptions,+ domainStatus_changeProgressDetails,+ domainStatus_cognitoOptions,+ domainStatus_created,+ domainStatus_deleted,+ domainStatus_domainEndpointOptions,+ domainStatus_eBSOptions,+ domainStatus_encryptionAtRestOptions,+ domainStatus_endpoint,+ domainStatus_endpoints,+ domainStatus_engineVersion,+ domainStatus_logPublishingOptions,+ domainStatus_nodeToNodeEncryptionOptions,+ domainStatus_processing,+ domainStatus_serviceSoftwareOptions,+ domainStatus_snapshotOptions,+ domainStatus_upgradeProcessing,+ domainStatus_vPCOptions,+ domainStatus_domainId,+ domainStatus_domainName,+ domainStatus_arn,+ domainStatus_clusterConfig,++ -- * DryRunResults+ DryRunResults (..),+ newDryRunResults,+ dryRunResults_deploymentType,+ dryRunResults_message,++ -- * Duration+ Duration (..),+ newDuration,+ duration_unit,+ duration_value,++ -- * EBSOptions+ EBSOptions (..),+ newEBSOptions,+ eBSOptions_eBSEnabled,+ eBSOptions_iops,+ eBSOptions_throughput,+ eBSOptions_volumeSize,+ eBSOptions_volumeType,++ -- * EBSOptionsStatus+ EBSOptionsStatus (..),+ newEBSOptionsStatus,+ eBSOptionsStatus_options,+ eBSOptionsStatus_status,++ -- * EncryptionAtRestOptions+ EncryptionAtRestOptions (..),+ newEncryptionAtRestOptions,+ encryptionAtRestOptions_enabled,+ encryptionAtRestOptions_kmsKeyId,++ -- * EncryptionAtRestOptionsStatus+ EncryptionAtRestOptionsStatus (..),+ newEncryptionAtRestOptionsStatus,+ encryptionAtRestOptionsStatus_options,+ encryptionAtRestOptionsStatus_status,++ -- * ErrorDetails+ ErrorDetails (..),+ newErrorDetails,+ errorDetails_errorMessage,+ errorDetails_errorType,++ -- * Filter+ Filter (..),+ newFilter,+ filter_name,+ filter_values,++ -- * InboundConnection+ InboundConnection (..),+ newInboundConnection,+ inboundConnection_connectionId,+ inboundConnection_connectionStatus,+ inboundConnection_localDomainInfo,+ inboundConnection_remoteDomainInfo,++ -- * InboundConnectionStatus+ InboundConnectionStatus (..),+ newInboundConnectionStatus,+ inboundConnectionStatus_message,+ inboundConnectionStatus_statusCode,++ -- * InstanceCountLimits+ InstanceCountLimits (..),+ newInstanceCountLimits,+ instanceCountLimits_maximumInstanceCount,+ instanceCountLimits_minimumInstanceCount,++ -- * InstanceLimits+ InstanceLimits (..),+ newInstanceLimits,+ instanceLimits_instanceCountLimits,++ -- * InstanceTypeDetails+ InstanceTypeDetails (..),+ newInstanceTypeDetails,+ instanceTypeDetails_advancedSecurityEnabled,+ instanceTypeDetails_appLogsEnabled,+ instanceTypeDetails_cognitoEnabled,+ instanceTypeDetails_encryptionEnabled,+ instanceTypeDetails_instanceRole,+ instanceTypeDetails_instanceType,+ instanceTypeDetails_warmEnabled,++ -- * Limits+ Limits (..),+ newLimits,+ limits_additionalLimits,+ limits_instanceLimits,+ limits_storageTypes,++ -- * LogPublishingOption+ LogPublishingOption (..),+ newLogPublishingOption,+ logPublishingOption_cloudWatchLogsLogGroupArn,+ logPublishingOption_enabled,++ -- * LogPublishingOptionsStatus+ LogPublishingOptionsStatus (..),+ newLogPublishingOptionsStatus,+ logPublishingOptionsStatus_options,+ logPublishingOptionsStatus_status,++ -- * MasterUserOptions+ MasterUserOptions (..),+ newMasterUserOptions,+ masterUserOptions_masterUserARN,+ masterUserOptions_masterUserName,+ masterUserOptions_masterUserPassword,++ -- * NodeToNodeEncryptionOptions+ NodeToNodeEncryptionOptions (..),+ newNodeToNodeEncryptionOptions,+ nodeToNodeEncryptionOptions_enabled,++ -- * NodeToNodeEncryptionOptionsStatus+ NodeToNodeEncryptionOptionsStatus (..),+ newNodeToNodeEncryptionOptionsStatus,+ nodeToNodeEncryptionOptionsStatus_options,+ nodeToNodeEncryptionOptionsStatus_status,++ -- * OptionStatus+ OptionStatus (..),+ newOptionStatus,+ optionStatus_pendingDeletion,+ optionStatus_updateVersion,+ optionStatus_creationDate,+ optionStatus_updateDate,+ optionStatus_state,++ -- * OutboundConnection+ OutboundConnection (..),+ newOutboundConnection,+ outboundConnection_connectionAlias,+ outboundConnection_connectionId,+ outboundConnection_connectionStatus,+ outboundConnection_localDomainInfo,+ outboundConnection_remoteDomainInfo,++ -- * OutboundConnectionStatus+ OutboundConnectionStatus (..),+ newOutboundConnectionStatus,+ outboundConnectionStatus_message,+ outboundConnectionStatus_statusCode,++ -- * PackageDetails+ PackageDetails (..),+ newPackageDetails,+ packageDetails_availablePackageVersion,+ packageDetails_createdAt,+ packageDetails_errorDetails,+ packageDetails_lastUpdatedAt,+ packageDetails_packageDescription,+ packageDetails_packageID,+ packageDetails_packageName,+ packageDetails_packageStatus,+ packageDetails_packageType,++ -- * PackageSource+ PackageSource (..),+ newPackageSource,+ packageSource_s3BucketName,+ packageSource_s3Key,++ -- * PackageVersionHistory+ PackageVersionHistory (..),+ newPackageVersionHistory,+ packageVersionHistory_commitMessage,+ packageVersionHistory_createdAt,+ packageVersionHistory_packageVersion,++ -- * RecurringCharge+ RecurringCharge (..),+ newRecurringCharge,+ recurringCharge_recurringChargeAmount,+ recurringCharge_recurringChargeFrequency,++ -- * ReservedInstance+ ReservedInstance (..),+ newReservedInstance,+ reservedInstance_billingSubscriptionId,+ reservedInstance_currencyCode,+ reservedInstance_duration,+ reservedInstance_fixedPrice,+ reservedInstance_instanceCount,+ reservedInstance_instanceType,+ reservedInstance_paymentOption,+ reservedInstance_recurringCharges,+ reservedInstance_reservationName,+ reservedInstance_reservedInstanceId,+ reservedInstance_reservedInstanceOfferingId,+ reservedInstance_startTime,+ reservedInstance_state,+ reservedInstance_usagePrice,++ -- * ReservedInstanceOffering+ ReservedInstanceOffering (..),+ newReservedInstanceOffering,+ reservedInstanceOffering_currencyCode,+ reservedInstanceOffering_duration,+ reservedInstanceOffering_fixedPrice,+ reservedInstanceOffering_instanceType,+ reservedInstanceOffering_paymentOption,+ reservedInstanceOffering_recurringCharges,+ reservedInstanceOffering_reservedInstanceOfferingId,+ reservedInstanceOffering_usagePrice,++ -- * SAMLIdp+ SAMLIdp (..),+ newSAMLIdp,+ sAMLIdp_metadataContent,+ sAMLIdp_entityId,++ -- * SAMLOptionsInput+ SAMLOptionsInput (..),+ newSAMLOptionsInput,+ sAMLOptionsInput_enabled,+ sAMLOptionsInput_idp,+ sAMLOptionsInput_masterBackendRole,+ sAMLOptionsInput_masterUserName,+ sAMLOptionsInput_rolesKey,+ sAMLOptionsInput_sessionTimeoutMinutes,+ sAMLOptionsInput_subjectKey,++ -- * SAMLOptionsOutput+ SAMLOptionsOutput (..),+ newSAMLOptionsOutput,+ sAMLOptionsOutput_enabled,+ sAMLOptionsOutput_idp,+ sAMLOptionsOutput_rolesKey,+ sAMLOptionsOutput_sessionTimeoutMinutes,+ sAMLOptionsOutput_subjectKey,++ -- * ScheduledAutoTuneDetails+ ScheduledAutoTuneDetails (..),+ newScheduledAutoTuneDetails,+ scheduledAutoTuneDetails_action,+ scheduledAutoTuneDetails_actionType,+ scheduledAutoTuneDetails_date,+ scheduledAutoTuneDetails_severity,++ -- * ServiceSoftwareOptions+ ServiceSoftwareOptions (..),+ newServiceSoftwareOptions,+ serviceSoftwareOptions_automatedUpdateDate,+ serviceSoftwareOptions_cancellable,+ serviceSoftwareOptions_currentVersion,+ serviceSoftwareOptions_description,+ serviceSoftwareOptions_newVersion,+ serviceSoftwareOptions_optionalDeployment,+ serviceSoftwareOptions_updateAvailable,+ serviceSoftwareOptions_updateStatus,++ -- * SnapshotOptions+ SnapshotOptions (..),+ newSnapshotOptions,+ snapshotOptions_automatedSnapshotStartHour,++ -- * SnapshotOptionsStatus+ SnapshotOptionsStatus (..),+ newSnapshotOptionsStatus,+ snapshotOptionsStatus_options,+ snapshotOptionsStatus_status,++ -- * StorageType+ StorageType (..),+ newStorageType,+ storageType_storageSubTypeName,+ storageType_storageTypeLimits,+ storageType_storageTypeName,++ -- * StorageTypeLimit+ StorageTypeLimit (..),+ newStorageTypeLimit,+ storageTypeLimit_limitName,+ storageTypeLimit_limitValues,++ -- * Tag+ Tag (..),+ newTag,+ tag_key,+ tag_value,++ -- * UpgradeHistory+ UpgradeHistory (..),+ newUpgradeHistory,+ upgradeHistory_startTimestamp,+ upgradeHistory_stepsList,+ upgradeHistory_upgradeName,+ upgradeHistory_upgradeStatus,++ -- * UpgradeStepItem+ UpgradeStepItem (..),+ newUpgradeStepItem,+ upgradeStepItem_issues,+ upgradeStepItem_progressPercent,+ upgradeStepItem_upgradeStep,+ upgradeStepItem_upgradeStepStatus,++ -- * VPCDerivedInfo+ VPCDerivedInfo (..),+ newVPCDerivedInfo,+ vPCDerivedInfo_availabilityZones,+ vPCDerivedInfo_securityGroupIds,+ vPCDerivedInfo_subnetIds,+ vPCDerivedInfo_vPCId,++ -- * VPCDerivedInfoStatus+ VPCDerivedInfoStatus (..),+ newVPCDerivedInfoStatus,+ vPCDerivedInfoStatus_options,+ vPCDerivedInfoStatus_status,++ -- * VPCOptions+ VPCOptions (..),+ newVPCOptions,+ vPCOptions_securityGroupIds,+ vPCOptions_subnetIds,++ -- * VersionStatus+ VersionStatus (..),+ newVersionStatus,+ versionStatus_options,+ versionStatus_status,++ -- * VpcEndpoint+ VpcEndpoint (..),+ newVpcEndpoint,+ vpcEndpoint_domainArn,+ vpcEndpoint_endpoint,+ vpcEndpoint_status,+ vpcEndpoint_vpcEndpointId,+ vpcEndpoint_vpcEndpointOwner,+ vpcEndpoint_vpcOptions,++ -- * VpcEndpointError+ VpcEndpointError (..),+ newVpcEndpointError,+ vpcEndpointError_errorCode,+ vpcEndpointError_errorMessage,+ vpcEndpointError_vpcEndpointId,++ -- * VpcEndpointSummary+ VpcEndpointSummary (..),+ newVpcEndpointSummary,+ vpcEndpointSummary_domainArn,+ vpcEndpointSummary_status,+ vpcEndpointSummary_vpcEndpointId,+ vpcEndpointSummary_vpcEndpointOwner,++ -- * ZoneAwarenessConfig+ ZoneAwarenessConfig (..),+ newZoneAwarenessConfig,+ zoneAwarenessConfig_availabilityZoneCount,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import Amazonka.OpenSearch.Types.AWSDomainInformation+import Amazonka.OpenSearch.Types.AccessPoliciesStatus+import Amazonka.OpenSearch.Types.AdditionalLimit+import Amazonka.OpenSearch.Types.AdvancedOptionsStatus+import Amazonka.OpenSearch.Types.AdvancedSecurityOptions+import Amazonka.OpenSearch.Types.AdvancedSecurityOptionsInput+import Amazonka.OpenSearch.Types.AdvancedSecurityOptionsStatus+import Amazonka.OpenSearch.Types.AuthorizedPrincipal+import Amazonka.OpenSearch.Types.AutoTune+import Amazonka.OpenSearch.Types.AutoTuneDesiredState+import Amazonka.OpenSearch.Types.AutoTuneDetails+import Amazonka.OpenSearch.Types.AutoTuneMaintenanceSchedule+import Amazonka.OpenSearch.Types.AutoTuneOptions+import Amazonka.OpenSearch.Types.AutoTuneOptionsInput+import Amazonka.OpenSearch.Types.AutoTuneOptionsOutput+import Amazonka.OpenSearch.Types.AutoTuneOptionsStatus+import Amazonka.OpenSearch.Types.AutoTuneState+import Amazonka.OpenSearch.Types.AutoTuneStatus+import Amazonka.OpenSearch.Types.AutoTuneType+import Amazonka.OpenSearch.Types.ChangeProgressDetails+import Amazonka.OpenSearch.Types.ChangeProgressStage+import Amazonka.OpenSearch.Types.ChangeProgressStatusDetails+import Amazonka.OpenSearch.Types.ClusterConfig+import Amazonka.OpenSearch.Types.ClusterConfigStatus+import Amazonka.OpenSearch.Types.CognitoOptions+import Amazonka.OpenSearch.Types.CognitoOptionsStatus+import Amazonka.OpenSearch.Types.ColdStorageOptions+import Amazonka.OpenSearch.Types.CompatibleVersionsMap+import Amazonka.OpenSearch.Types.DeploymentStatus+import Amazonka.OpenSearch.Types.DescribePackagesFilter+import Amazonka.OpenSearch.Types.DescribePackagesFilterName+import Amazonka.OpenSearch.Types.DomainConfig+import Amazonka.OpenSearch.Types.DomainEndpointOptions+import Amazonka.OpenSearch.Types.DomainEndpointOptionsStatus+import Amazonka.OpenSearch.Types.DomainInfo+import Amazonka.OpenSearch.Types.DomainInformationContainer+import Amazonka.OpenSearch.Types.DomainPackageDetails+import Amazonka.OpenSearch.Types.DomainPackageStatus+import Amazonka.OpenSearch.Types.DomainStatus+import Amazonka.OpenSearch.Types.DryRunResults+import Amazonka.OpenSearch.Types.Duration+import Amazonka.OpenSearch.Types.EBSOptions+import Amazonka.OpenSearch.Types.EBSOptionsStatus+import Amazonka.OpenSearch.Types.EncryptionAtRestOptions+import Amazonka.OpenSearch.Types.EncryptionAtRestOptionsStatus+import Amazonka.OpenSearch.Types.EngineType+import Amazonka.OpenSearch.Types.ErrorDetails+import Amazonka.OpenSearch.Types.Filter+import Amazonka.OpenSearch.Types.InboundConnection+import Amazonka.OpenSearch.Types.InboundConnectionStatus+import Amazonka.OpenSearch.Types.InboundConnectionStatusCode+import Amazonka.OpenSearch.Types.InstanceCountLimits+import Amazonka.OpenSearch.Types.InstanceLimits+import Amazonka.OpenSearch.Types.InstanceTypeDetails+import Amazonka.OpenSearch.Types.Limits+import Amazonka.OpenSearch.Types.LogPublishingOption+import Amazonka.OpenSearch.Types.LogPublishingOptionsStatus+import Amazonka.OpenSearch.Types.LogType+import Amazonka.OpenSearch.Types.MasterUserOptions+import Amazonka.OpenSearch.Types.NodeToNodeEncryptionOptions+import Amazonka.OpenSearch.Types.NodeToNodeEncryptionOptionsStatus+import Amazonka.OpenSearch.Types.OpenSearchPartitionInstanceType+import Amazonka.OpenSearch.Types.OpenSearchWarmPartitionInstanceType+import Amazonka.OpenSearch.Types.OptionState+import Amazonka.OpenSearch.Types.OptionStatus+import Amazonka.OpenSearch.Types.OutboundConnection+import Amazonka.OpenSearch.Types.OutboundConnectionStatus+import Amazonka.OpenSearch.Types.OutboundConnectionStatusCode+import Amazonka.OpenSearch.Types.OverallChangeStatus+import Amazonka.OpenSearch.Types.PackageDetails+import Amazonka.OpenSearch.Types.PackageSource+import Amazonka.OpenSearch.Types.PackageStatus+import Amazonka.OpenSearch.Types.PackageType+import Amazonka.OpenSearch.Types.PackageVersionHistory+import Amazonka.OpenSearch.Types.PrincipalType+import Amazonka.OpenSearch.Types.RecurringCharge+import Amazonka.OpenSearch.Types.ReservedInstance+import Amazonka.OpenSearch.Types.ReservedInstanceOffering+import Amazonka.OpenSearch.Types.ReservedInstancePaymentOption+import Amazonka.OpenSearch.Types.RollbackOnDisable+import Amazonka.OpenSearch.Types.SAMLIdp+import Amazonka.OpenSearch.Types.SAMLOptionsInput+import Amazonka.OpenSearch.Types.SAMLOptionsOutput+import Amazonka.OpenSearch.Types.ScheduledAutoTuneActionType+import Amazonka.OpenSearch.Types.ScheduledAutoTuneDetails+import Amazonka.OpenSearch.Types.ScheduledAutoTuneSeverityType+import Amazonka.OpenSearch.Types.ServiceSoftwareOptions+import Amazonka.OpenSearch.Types.SnapshotOptions+import Amazonka.OpenSearch.Types.SnapshotOptionsStatus+import Amazonka.OpenSearch.Types.StorageType+import Amazonka.OpenSearch.Types.StorageTypeLimit+import Amazonka.OpenSearch.Types.TLSSecurityPolicy+import Amazonka.OpenSearch.Types.Tag+import Amazonka.OpenSearch.Types.TimeUnit+import Amazonka.OpenSearch.Types.UpgradeHistory+import Amazonka.OpenSearch.Types.UpgradeStatus+import Amazonka.OpenSearch.Types.UpgradeStep+import Amazonka.OpenSearch.Types.UpgradeStepItem+import Amazonka.OpenSearch.Types.VPCDerivedInfo+import Amazonka.OpenSearch.Types.VPCDerivedInfoStatus+import Amazonka.OpenSearch.Types.VPCOptions+import Amazonka.OpenSearch.Types.VersionStatus+import Amazonka.OpenSearch.Types.VolumeType+import Amazonka.OpenSearch.Types.VpcEndpoint+import Amazonka.OpenSearch.Types.VpcEndpointError+import Amazonka.OpenSearch.Types.VpcEndpointErrorCode+import Amazonka.OpenSearch.Types.VpcEndpointStatus+import Amazonka.OpenSearch.Types.VpcEndpointSummary+import Amazonka.OpenSearch.Types.ZoneAwarenessConfig+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Sign.V4 as Sign++-- | API version @2021-01-01@ of the Amazon OpenSearch Service SDK configuration.+defaultService :: Core.Service+defaultService =+ Core.Service+ { Core.abbrev = "OpenSearch",+ Core.signer = Sign.v4,+ Core.endpointPrefix = "es",+ Core.signingName = "es",+ Core.version = "2021-01-01",+ Core.s3AddressingStyle = Core.S3AddressingStyleAuto,+ Core.endpoint = Core.defaultEndpoint defaultService,+ Core.timeout = Prelude.Just 70,+ Core.check = Core.statusSuccess,+ Core.error = Core.parseJSONError "OpenSearch",+ 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++-- | An error occurred because user does not have permissions to access the+-- resource. Returns HTTP status code 403.+_AccessDeniedException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_AccessDeniedException =+ Core._MatchServiceError+ defaultService+ "AccessDeniedException"+ Prelude.. Core.hasStatus 403++-- | An error occurred while processing the request.+_BaseException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_BaseException =+ Core._MatchServiceError+ defaultService+ "BaseException"++-- | An error occurred because the client attempts to remove a resource that+-- is currently in use. Returns HTTP status code 409.+_ConflictException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ConflictException =+ Core._MatchServiceError+ defaultService+ "ConflictException"+ Prelude.. Core.hasStatus 409++-- | An error occured because the client wanted to access a not supported+-- operation. Gives http status code of 409.+_DisabledOperationException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_DisabledOperationException =+ Core._MatchServiceError+ defaultService+ "DisabledOperationException"+ Prelude.. Core.hasStatus 409++-- | The request processing has failed because of an unknown error, exception+-- or failure (the failure is internal to the service) . Gives http status+-- code of 500.+_InternalException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InternalException =+ Core._MatchServiceError+ defaultService+ "InternalException"+ Prelude.. Core.hasStatus 500++-- | The request processing has failed because of invalid pagination token+-- provided by customer. Returns an HTTP status code of 400.+_InvalidPaginationTokenException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InvalidPaginationTokenException =+ Core._MatchServiceError+ defaultService+ "InvalidPaginationTokenException"+ Prelude.. Core.hasStatus 400++-- | An exception for trying to create or access sub-resource that is either+-- invalid or not supported. Gives http status code of 409.+_InvalidTypeException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InvalidTypeException =+ Core._MatchServiceError+ defaultService+ "InvalidTypeException"+ Prelude.. Core.hasStatus 409++-- | An exception for trying to create more than allowed resources or+-- sub-resources. Gives http status code of 409.+_LimitExceededException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_LimitExceededException =+ Core._MatchServiceError+ defaultService+ "LimitExceededException"+ Prelude.. Core.hasStatus 409++-- | An exception for creating a resource that already exists. Gives http+-- status code of 400.+_ResourceAlreadyExistsException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ResourceAlreadyExistsException =+ Core._MatchServiceError+ defaultService+ "ResourceAlreadyExistsException"+ Prelude.. Core.hasStatus 409++-- | An exception for accessing or deleting a resource that does not exist.+-- Gives http status code of 400.+_ResourceNotFoundException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ResourceNotFoundException =+ Core._MatchServiceError+ defaultService+ "ResourceNotFoundException"+ Prelude.. Core.hasStatus 409++-- | An exception for missing \/ invalid input fields. Gives http status code+-- of 400.+_ValidationException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ValidationException =+ Core._MatchServiceError+ defaultService+ "ValidationException"+ Prelude.. Core.hasStatus 400
+ gen/Amazonka/OpenSearch/Types/AWSDomainInformation.hs view
@@ -0,0 +1,108 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.OpenSearch.Types.AWSDomainInformation+-- 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.OpenSearch.Types.AWSDomainInformation where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Information about an Amazon OpenSearch Service domain.+--+-- /See:/ 'newAWSDomainInformation' smart constructor.+data AWSDomainInformation = AWSDomainInformation'+ { -- | The Amazon Web Services account ID of the domain owner.+ ownerId :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Web Services Region in which the domain is located.+ region :: Prelude.Maybe Prelude.Text,+ -- | Name of the domain.+ domainName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AWSDomainInformation' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'ownerId', 'aWSDomainInformation_ownerId' - The Amazon Web Services account ID of the domain owner.+--+-- 'region', 'aWSDomainInformation_region' - The Amazon Web Services Region in which the domain is located.+--+-- 'domainName', 'aWSDomainInformation_domainName' - Name of the domain.+newAWSDomainInformation ::+ -- | 'domainName'+ Prelude.Text ->+ AWSDomainInformation+newAWSDomainInformation pDomainName_ =+ AWSDomainInformation'+ { ownerId = Prelude.Nothing,+ region = Prelude.Nothing,+ domainName = pDomainName_+ }++-- | The Amazon Web Services account ID of the domain owner.+aWSDomainInformation_ownerId :: Lens.Lens' AWSDomainInformation (Prelude.Maybe Prelude.Text)+aWSDomainInformation_ownerId = Lens.lens (\AWSDomainInformation' {ownerId} -> ownerId) (\s@AWSDomainInformation' {} a -> s {ownerId = a} :: AWSDomainInformation)++-- | The Amazon Web Services Region in which the domain is located.+aWSDomainInformation_region :: Lens.Lens' AWSDomainInformation (Prelude.Maybe Prelude.Text)+aWSDomainInformation_region = Lens.lens (\AWSDomainInformation' {region} -> region) (\s@AWSDomainInformation' {} a -> s {region = a} :: AWSDomainInformation)++-- | Name of the domain.+aWSDomainInformation_domainName :: Lens.Lens' AWSDomainInformation Prelude.Text+aWSDomainInformation_domainName = Lens.lens (\AWSDomainInformation' {domainName} -> domainName) (\s@AWSDomainInformation' {} a -> s {domainName = a} :: AWSDomainInformation)++instance Data.FromJSON AWSDomainInformation where+ parseJSON =+ Data.withObject+ "AWSDomainInformation"+ ( \x ->+ AWSDomainInformation'+ Prelude.<$> (x Data..:? "OwnerId")+ Prelude.<*> (x Data..:? "Region")+ Prelude.<*> (x Data..: "DomainName")+ )++instance Prelude.Hashable AWSDomainInformation where+ hashWithSalt _salt AWSDomainInformation' {..} =+ _salt+ `Prelude.hashWithSalt` ownerId+ `Prelude.hashWithSalt` region+ `Prelude.hashWithSalt` domainName++instance Prelude.NFData AWSDomainInformation where+ rnf AWSDomainInformation' {..} =+ Prelude.rnf ownerId+ `Prelude.seq` Prelude.rnf region+ `Prelude.seq` Prelude.rnf domainName++instance Data.ToJSON AWSDomainInformation where+ toJSON AWSDomainInformation' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("OwnerId" Data..=) Prelude.<$> ownerId,+ ("Region" Data..=) Prelude.<$> region,+ Prelude.Just ("DomainName" Data..= domainName)+ ]+ )
+ gen/Amazonka/OpenSearch/Types/AccessPoliciesStatus.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.OpenSearch.Types.AccessPoliciesStatus+-- 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.OpenSearch.Types.AccessPoliciesStatus where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.OptionStatus+import qualified Amazonka.Prelude as Prelude++-- | The configured access rules for the domain\'s search endpoint, and the+-- current status of those rules.+--+-- /See:/ 'newAccessPoliciesStatus' smart constructor.+data AccessPoliciesStatus = AccessPoliciesStatus'+ { -- | The access policy configured for the domain. Access policies can be+ -- resource-based, IP-based, or IAM-based. For more information, see+ -- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/createupdatedomains.html#createdomain-configure-access-policies Configuring access policies>.+ options :: Prelude.Text,+ -- | The status of the access policy for the domain.+ status :: OptionStatus+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AccessPoliciesStatus' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'options', 'accessPoliciesStatus_options' - The access policy configured for the domain. Access policies can be+-- resource-based, IP-based, or IAM-based. For more information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/createupdatedomains.html#createdomain-configure-access-policies Configuring access policies>.+--+-- 'status', 'accessPoliciesStatus_status' - The status of the access policy for the domain.+newAccessPoliciesStatus ::+ -- | 'options'+ Prelude.Text ->+ -- | 'status'+ OptionStatus ->+ AccessPoliciesStatus+newAccessPoliciesStatus pOptions_ pStatus_ =+ AccessPoliciesStatus'+ { options = pOptions_,+ status = pStatus_+ }++-- | The access policy configured for the domain. Access policies can be+-- resource-based, IP-based, or IAM-based. For more information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/createupdatedomains.html#createdomain-configure-access-policies Configuring access policies>.+accessPoliciesStatus_options :: Lens.Lens' AccessPoliciesStatus Prelude.Text+accessPoliciesStatus_options = Lens.lens (\AccessPoliciesStatus' {options} -> options) (\s@AccessPoliciesStatus' {} a -> s {options = a} :: AccessPoliciesStatus)++-- | The status of the access policy for the domain.+accessPoliciesStatus_status :: Lens.Lens' AccessPoliciesStatus OptionStatus+accessPoliciesStatus_status = Lens.lens (\AccessPoliciesStatus' {status} -> status) (\s@AccessPoliciesStatus' {} a -> s {status = a} :: AccessPoliciesStatus)++instance Data.FromJSON AccessPoliciesStatus where+ parseJSON =+ Data.withObject+ "AccessPoliciesStatus"+ ( \x ->+ AccessPoliciesStatus'+ Prelude.<$> (x Data..: "Options")+ Prelude.<*> (x Data..: "Status")+ )++instance Prelude.Hashable AccessPoliciesStatus where+ hashWithSalt _salt AccessPoliciesStatus' {..} =+ _salt+ `Prelude.hashWithSalt` options+ `Prelude.hashWithSalt` status++instance Prelude.NFData AccessPoliciesStatus where+ rnf AccessPoliciesStatus' {..} =+ Prelude.rnf options+ `Prelude.seq` Prelude.rnf status
+ gen/Amazonka/OpenSearch/Types/AdditionalLimit.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.OpenSearch.Types.AdditionalLimit+-- 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.OpenSearch.Types.AdditionalLimit 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++-- | List of limits that are specific to a given instance type.+--+-- /See:/ 'newAdditionalLimit' smart constructor.+data AdditionalLimit = AdditionalLimit'+ { -- | - @MaximumNumberOfDataNodesSupported@ - This attribute only applies to+ -- master nodes and specifies the maximum number of data nodes of a+ -- given instance type a master node can support.+ --+ -- - @MaximumNumberOfDataNodesWithoutMasterNode@ - This attribute only+ -- applies to data nodes and specifies the maximum number of data nodes+ -- of a given instance type can exist without a master node governing+ -- them.+ limitName :: Prelude.Maybe Prelude.Text,+ -- | The values of the additional instance type limits.+ limitValues :: Prelude.Maybe [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AdditionalLimit' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'limitName', 'additionalLimit_limitName' - - @MaximumNumberOfDataNodesSupported@ - This attribute only applies to+-- master nodes and specifies the maximum number of data nodes of a+-- given instance type a master node can support.+--+-- - @MaximumNumberOfDataNodesWithoutMasterNode@ - This attribute only+-- applies to data nodes and specifies the maximum number of data nodes+-- of a given instance type can exist without a master node governing+-- them.+--+-- 'limitValues', 'additionalLimit_limitValues' - The values of the additional instance type limits.+newAdditionalLimit ::+ AdditionalLimit+newAdditionalLimit =+ AdditionalLimit'+ { limitName = Prelude.Nothing,+ limitValues = Prelude.Nothing+ }++-- | - @MaximumNumberOfDataNodesSupported@ - This attribute only applies to+-- master nodes and specifies the maximum number of data nodes of a+-- given instance type a master node can support.+--+-- - @MaximumNumberOfDataNodesWithoutMasterNode@ - This attribute only+-- applies to data nodes and specifies the maximum number of data nodes+-- of a given instance type can exist without a master node governing+-- them.+additionalLimit_limitName :: Lens.Lens' AdditionalLimit (Prelude.Maybe Prelude.Text)+additionalLimit_limitName = Lens.lens (\AdditionalLimit' {limitName} -> limitName) (\s@AdditionalLimit' {} a -> s {limitName = a} :: AdditionalLimit)++-- | The values of the additional instance type limits.+additionalLimit_limitValues :: Lens.Lens' AdditionalLimit (Prelude.Maybe [Prelude.Text])+additionalLimit_limitValues = Lens.lens (\AdditionalLimit' {limitValues} -> limitValues) (\s@AdditionalLimit' {} a -> s {limitValues = a} :: AdditionalLimit) Prelude.. Lens.mapping Lens.coerced++instance Data.FromJSON AdditionalLimit where+ parseJSON =+ Data.withObject+ "AdditionalLimit"+ ( \x ->+ AdditionalLimit'+ Prelude.<$> (x Data..:? "LimitName")+ Prelude.<*> (x Data..:? "LimitValues" Data..!= Prelude.mempty)+ )++instance Prelude.Hashable AdditionalLimit where+ hashWithSalt _salt AdditionalLimit' {..} =+ _salt+ `Prelude.hashWithSalt` limitName+ `Prelude.hashWithSalt` limitValues++instance Prelude.NFData AdditionalLimit where+ rnf AdditionalLimit' {..} =+ Prelude.rnf limitName+ `Prelude.seq` Prelude.rnf limitValues
+ gen/Amazonka/OpenSearch/Types/AdvancedOptionsStatus.hs view
@@ -0,0 +1,114 @@+{-# 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.OpenSearch.Types.AdvancedOptionsStatus+-- 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.OpenSearch.Types.AdvancedOptionsStatus where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.OptionStatus+import qualified Amazonka.Prelude as Prelude++-- | Status of the advanced options for the specified domain. The following+-- options are available:+--+-- - @\"rest.action.multi.allow_explicit_index\": \"true\" | \"false\"@ -+-- Note the use of a string rather than a boolean. Specifies whether+-- explicit references to indexes are allowed inside the body of HTTP+-- requests. If you want to configure access policies for domain+-- sub-resources, such as specific indexes and domain APIs, you must+-- disable this property. Default is true.+--+-- - @\"indices.fielddata.cache.size\": \"80\" @ - Note the use of a+-- string rather than a boolean. Specifies the percentage of heap space+-- allocated to field data. Default is unbounded.+--+-- - @\"indices.query.bool.max_clause_count\": \"1024\"@ - Note the use+-- of a string rather than a boolean. Specifies the maximum number of+-- clauses allowed in a Lucene boolean query. Default is 1,024. Queries+-- with more than the permitted number of clauses result in a+-- @TooManyClauses@ error.+--+-- - @\"override_main_response_version\": \"true\" | \"false\"@ - Note+-- the use of a string rather than a boolean. Specifies whether the+-- domain reports its version as 7.10 to allow Elasticsearch OSS+-- clients and plugins to continue working with it. Default is false+-- when creating a domain and true when upgrading a domain.+--+-- For more information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/createupdatedomains.html#createdomain-configure-advanced-options Advanced cluster parameters>.+--+-- /See:/ 'newAdvancedOptionsStatus' smart constructor.+data AdvancedOptionsStatus = AdvancedOptionsStatus'+ { -- | The status of advanced options for the specified domain.+ options :: Prelude.HashMap Prelude.Text Prelude.Text,+ -- | The status of advanced options for the specified domain.+ status :: OptionStatus+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AdvancedOptionsStatus' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'options', 'advancedOptionsStatus_options' - The status of advanced options for the specified domain.+--+-- 'status', 'advancedOptionsStatus_status' - The status of advanced options for the specified domain.+newAdvancedOptionsStatus ::+ -- | 'status'+ OptionStatus ->+ AdvancedOptionsStatus+newAdvancedOptionsStatus pStatus_ =+ AdvancedOptionsStatus'+ { options = Prelude.mempty,+ status = pStatus_+ }++-- | The status of advanced options for the specified domain.+advancedOptionsStatus_options :: Lens.Lens' AdvancedOptionsStatus (Prelude.HashMap Prelude.Text Prelude.Text)+advancedOptionsStatus_options = Lens.lens (\AdvancedOptionsStatus' {options} -> options) (\s@AdvancedOptionsStatus' {} a -> s {options = a} :: AdvancedOptionsStatus) Prelude.. Lens.coerced++-- | The status of advanced options for the specified domain.+advancedOptionsStatus_status :: Lens.Lens' AdvancedOptionsStatus OptionStatus+advancedOptionsStatus_status = Lens.lens (\AdvancedOptionsStatus' {status} -> status) (\s@AdvancedOptionsStatus' {} a -> s {status = a} :: AdvancedOptionsStatus)++instance Data.FromJSON AdvancedOptionsStatus where+ parseJSON =+ Data.withObject+ "AdvancedOptionsStatus"+ ( \x ->+ AdvancedOptionsStatus'+ Prelude.<$> (x Data..:? "Options" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..: "Status")+ )++instance Prelude.Hashable AdvancedOptionsStatus where+ hashWithSalt _salt AdvancedOptionsStatus' {..} =+ _salt+ `Prelude.hashWithSalt` options+ `Prelude.hashWithSalt` status++instance Prelude.NFData AdvancedOptionsStatus where+ rnf AdvancedOptionsStatus' {..} =+ Prelude.rnf options+ `Prelude.seq` Prelude.rnf status
+ gen/Amazonka/OpenSearch/Types/AdvancedSecurityOptions.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.OpenSearch.Types.AdvancedSecurityOptions+-- 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.OpenSearch.Types.AdvancedSecurityOptions where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.SAMLOptionsOutput+import qualified Amazonka.Prelude as Prelude++-- | Container for fine-grained access control settings.+--+-- /See:/ 'newAdvancedSecurityOptions' smart constructor.+data AdvancedSecurityOptions = AdvancedSecurityOptions'+ { -- | Date and time when the migration period will be disabled. Only necessary+ -- when+ -- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/fgac.html#fgac-enabling-existing enabling fine-grained access control on an existing domain>.+ anonymousAuthDisableDate :: Prelude.Maybe Data.POSIX,+ -- | True if a 30-day migration period is enabled, during which+ -- administrators can create role mappings. Only necessary when+ -- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/fgac.html#fgac-enabling-existing enabling fine-grained access control on an existing domain>.+ anonymousAuthEnabled :: Prelude.Maybe Prelude.Bool,+ -- | True if fine-grained access control is enabled.+ enabled :: Prelude.Maybe Prelude.Bool,+ -- | True if the internal user database is enabled.+ internalUserDatabaseEnabled :: Prelude.Maybe Prelude.Bool,+ -- | Container for information about the SAML configuration for OpenSearch+ -- Dashboards.+ sAMLOptions :: Prelude.Maybe SAMLOptionsOutput+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AdvancedSecurityOptions' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'anonymousAuthDisableDate', 'advancedSecurityOptions_anonymousAuthDisableDate' - Date and time when the migration period will be disabled. Only necessary+-- when+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/fgac.html#fgac-enabling-existing enabling fine-grained access control on an existing domain>.+--+-- 'anonymousAuthEnabled', 'advancedSecurityOptions_anonymousAuthEnabled' - True if a 30-day migration period is enabled, during which+-- administrators can create role mappings. Only necessary when+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/fgac.html#fgac-enabling-existing enabling fine-grained access control on an existing domain>.+--+-- 'enabled', 'advancedSecurityOptions_enabled' - True if fine-grained access control is enabled.+--+-- 'internalUserDatabaseEnabled', 'advancedSecurityOptions_internalUserDatabaseEnabled' - True if the internal user database is enabled.+--+-- 'sAMLOptions', 'advancedSecurityOptions_sAMLOptions' - Container for information about the SAML configuration for OpenSearch+-- Dashboards.+newAdvancedSecurityOptions ::+ AdvancedSecurityOptions+newAdvancedSecurityOptions =+ AdvancedSecurityOptions'+ { anonymousAuthDisableDate =+ Prelude.Nothing,+ anonymousAuthEnabled = Prelude.Nothing,+ enabled = Prelude.Nothing,+ internalUserDatabaseEnabled = Prelude.Nothing,+ sAMLOptions = Prelude.Nothing+ }++-- | Date and time when the migration period will be disabled. Only necessary+-- when+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/fgac.html#fgac-enabling-existing enabling fine-grained access control on an existing domain>.+advancedSecurityOptions_anonymousAuthDisableDate :: Lens.Lens' AdvancedSecurityOptions (Prelude.Maybe Prelude.UTCTime)+advancedSecurityOptions_anonymousAuthDisableDate = Lens.lens (\AdvancedSecurityOptions' {anonymousAuthDisableDate} -> anonymousAuthDisableDate) (\s@AdvancedSecurityOptions' {} a -> s {anonymousAuthDisableDate = a} :: AdvancedSecurityOptions) Prelude.. Lens.mapping Data._Time++-- | True if a 30-day migration period is enabled, during which+-- administrators can create role mappings. Only necessary when+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/fgac.html#fgac-enabling-existing enabling fine-grained access control on an existing domain>.+advancedSecurityOptions_anonymousAuthEnabled :: Lens.Lens' AdvancedSecurityOptions (Prelude.Maybe Prelude.Bool)+advancedSecurityOptions_anonymousAuthEnabled = Lens.lens (\AdvancedSecurityOptions' {anonymousAuthEnabled} -> anonymousAuthEnabled) (\s@AdvancedSecurityOptions' {} a -> s {anonymousAuthEnabled = a} :: AdvancedSecurityOptions)++-- | True if fine-grained access control is enabled.+advancedSecurityOptions_enabled :: Lens.Lens' AdvancedSecurityOptions (Prelude.Maybe Prelude.Bool)+advancedSecurityOptions_enabled = Lens.lens (\AdvancedSecurityOptions' {enabled} -> enabled) (\s@AdvancedSecurityOptions' {} a -> s {enabled = a} :: AdvancedSecurityOptions)++-- | True if the internal user database is enabled.+advancedSecurityOptions_internalUserDatabaseEnabled :: Lens.Lens' AdvancedSecurityOptions (Prelude.Maybe Prelude.Bool)+advancedSecurityOptions_internalUserDatabaseEnabled = Lens.lens (\AdvancedSecurityOptions' {internalUserDatabaseEnabled} -> internalUserDatabaseEnabled) (\s@AdvancedSecurityOptions' {} a -> s {internalUserDatabaseEnabled = a} :: AdvancedSecurityOptions)++-- | Container for information about the SAML configuration for OpenSearch+-- Dashboards.+advancedSecurityOptions_sAMLOptions :: Lens.Lens' AdvancedSecurityOptions (Prelude.Maybe SAMLOptionsOutput)+advancedSecurityOptions_sAMLOptions = Lens.lens (\AdvancedSecurityOptions' {sAMLOptions} -> sAMLOptions) (\s@AdvancedSecurityOptions' {} a -> s {sAMLOptions = a} :: AdvancedSecurityOptions)++instance Data.FromJSON AdvancedSecurityOptions where+ parseJSON =+ Data.withObject+ "AdvancedSecurityOptions"+ ( \x ->+ AdvancedSecurityOptions'+ Prelude.<$> (x Data..:? "AnonymousAuthDisableDate")+ Prelude.<*> (x Data..:? "AnonymousAuthEnabled")+ Prelude.<*> (x Data..:? "Enabled")+ Prelude.<*> (x Data..:? "InternalUserDatabaseEnabled")+ Prelude.<*> (x Data..:? "SAMLOptions")+ )++instance Prelude.Hashable AdvancedSecurityOptions where+ hashWithSalt _salt AdvancedSecurityOptions' {..} =+ _salt+ `Prelude.hashWithSalt` anonymousAuthDisableDate+ `Prelude.hashWithSalt` anonymousAuthEnabled+ `Prelude.hashWithSalt` enabled+ `Prelude.hashWithSalt` internalUserDatabaseEnabled+ `Prelude.hashWithSalt` sAMLOptions++instance Prelude.NFData AdvancedSecurityOptions where+ rnf AdvancedSecurityOptions' {..} =+ Prelude.rnf anonymousAuthDisableDate+ `Prelude.seq` Prelude.rnf anonymousAuthEnabled+ `Prelude.seq` Prelude.rnf enabled+ `Prelude.seq` Prelude.rnf internalUserDatabaseEnabled+ `Prelude.seq` Prelude.rnf sAMLOptions
+ gen/Amazonka/OpenSearch/Types/AdvancedSecurityOptionsInput.hs view
@@ -0,0 +1,139 @@+{-# 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.OpenSearch.Types.AdvancedSecurityOptionsInput+-- 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.OpenSearch.Types.AdvancedSecurityOptionsInput where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.MasterUserOptions+import Amazonka.OpenSearch.Types.SAMLOptionsInput+import qualified Amazonka.Prelude as Prelude++-- | Options for enabling and configuring fine-grained access control. For+-- more information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/fgac.html Fine-grained access control in Amazon OpenSearch Service>.+--+-- /See:/ 'newAdvancedSecurityOptionsInput' smart constructor.+data AdvancedSecurityOptionsInput = AdvancedSecurityOptionsInput'+ { -- | True to enable a 30-day migration period during which administrators can+ -- create role mappings. Only necessary when+ -- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/fgac.html#fgac-enabling-existing enabling fine-grained access control on an existing domain>.+ anonymousAuthEnabled :: Prelude.Maybe Prelude.Bool,+ -- | True to enable fine-grained access control.+ enabled :: Prelude.Maybe Prelude.Bool,+ -- | True to enable the internal user database.+ internalUserDatabaseEnabled :: Prelude.Maybe Prelude.Bool,+ -- | Container for information about the master user.+ masterUserOptions :: Prelude.Maybe MasterUserOptions,+ -- | Container for information about the SAML configuration for OpenSearch+ -- Dashboards.+ sAMLOptions :: Prelude.Maybe SAMLOptionsInput+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AdvancedSecurityOptionsInput' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'anonymousAuthEnabled', 'advancedSecurityOptionsInput_anonymousAuthEnabled' - True to enable a 30-day migration period during which administrators can+-- create role mappings. Only necessary when+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/fgac.html#fgac-enabling-existing enabling fine-grained access control on an existing domain>.+--+-- 'enabled', 'advancedSecurityOptionsInput_enabled' - True to enable fine-grained access control.+--+-- 'internalUserDatabaseEnabled', 'advancedSecurityOptionsInput_internalUserDatabaseEnabled' - True to enable the internal user database.+--+-- 'masterUserOptions', 'advancedSecurityOptionsInput_masterUserOptions' - Container for information about the master user.+--+-- 'sAMLOptions', 'advancedSecurityOptionsInput_sAMLOptions' - Container for information about the SAML configuration for OpenSearch+-- Dashboards.+newAdvancedSecurityOptionsInput ::+ AdvancedSecurityOptionsInput+newAdvancedSecurityOptionsInput =+ AdvancedSecurityOptionsInput'+ { anonymousAuthEnabled =+ Prelude.Nothing,+ enabled = Prelude.Nothing,+ internalUserDatabaseEnabled = Prelude.Nothing,+ masterUserOptions = Prelude.Nothing,+ sAMLOptions = Prelude.Nothing+ }++-- | True to enable a 30-day migration period during which administrators can+-- create role mappings. Only necessary when+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/fgac.html#fgac-enabling-existing enabling fine-grained access control on an existing domain>.+advancedSecurityOptionsInput_anonymousAuthEnabled :: Lens.Lens' AdvancedSecurityOptionsInput (Prelude.Maybe Prelude.Bool)+advancedSecurityOptionsInput_anonymousAuthEnabled = Lens.lens (\AdvancedSecurityOptionsInput' {anonymousAuthEnabled} -> anonymousAuthEnabled) (\s@AdvancedSecurityOptionsInput' {} a -> s {anonymousAuthEnabled = a} :: AdvancedSecurityOptionsInput)++-- | True to enable fine-grained access control.+advancedSecurityOptionsInput_enabled :: Lens.Lens' AdvancedSecurityOptionsInput (Prelude.Maybe Prelude.Bool)+advancedSecurityOptionsInput_enabled = Lens.lens (\AdvancedSecurityOptionsInput' {enabled} -> enabled) (\s@AdvancedSecurityOptionsInput' {} a -> s {enabled = a} :: AdvancedSecurityOptionsInput)++-- | True to enable the internal user database.+advancedSecurityOptionsInput_internalUserDatabaseEnabled :: Lens.Lens' AdvancedSecurityOptionsInput (Prelude.Maybe Prelude.Bool)+advancedSecurityOptionsInput_internalUserDatabaseEnabled = Lens.lens (\AdvancedSecurityOptionsInput' {internalUserDatabaseEnabled} -> internalUserDatabaseEnabled) (\s@AdvancedSecurityOptionsInput' {} a -> s {internalUserDatabaseEnabled = a} :: AdvancedSecurityOptionsInput)++-- | Container for information about the master user.+advancedSecurityOptionsInput_masterUserOptions :: Lens.Lens' AdvancedSecurityOptionsInput (Prelude.Maybe MasterUserOptions)+advancedSecurityOptionsInput_masterUserOptions = Lens.lens (\AdvancedSecurityOptionsInput' {masterUserOptions} -> masterUserOptions) (\s@AdvancedSecurityOptionsInput' {} a -> s {masterUserOptions = a} :: AdvancedSecurityOptionsInput)++-- | Container for information about the SAML configuration for OpenSearch+-- Dashboards.+advancedSecurityOptionsInput_sAMLOptions :: Lens.Lens' AdvancedSecurityOptionsInput (Prelude.Maybe SAMLOptionsInput)+advancedSecurityOptionsInput_sAMLOptions = Lens.lens (\AdvancedSecurityOptionsInput' {sAMLOptions} -> sAMLOptions) (\s@AdvancedSecurityOptionsInput' {} a -> s {sAMLOptions = a} :: AdvancedSecurityOptionsInput)++instance+ Prelude.Hashable+ AdvancedSecurityOptionsInput+ where+ hashWithSalt _salt AdvancedSecurityOptionsInput' {..} =+ _salt+ `Prelude.hashWithSalt` anonymousAuthEnabled+ `Prelude.hashWithSalt` enabled+ `Prelude.hashWithSalt` internalUserDatabaseEnabled+ `Prelude.hashWithSalt` masterUserOptions+ `Prelude.hashWithSalt` sAMLOptions++instance Prelude.NFData AdvancedSecurityOptionsInput where+ rnf AdvancedSecurityOptionsInput' {..} =+ Prelude.rnf anonymousAuthEnabled+ `Prelude.seq` Prelude.rnf enabled+ `Prelude.seq` Prelude.rnf internalUserDatabaseEnabled+ `Prelude.seq` Prelude.rnf masterUserOptions+ `Prelude.seq` Prelude.rnf sAMLOptions++instance Data.ToJSON AdvancedSecurityOptionsInput where+ toJSON AdvancedSecurityOptionsInput' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("AnonymousAuthEnabled" Data..=)+ Prelude.<$> anonymousAuthEnabled,+ ("Enabled" Data..=) Prelude.<$> enabled,+ ("InternalUserDatabaseEnabled" Data..=)+ Prelude.<$> internalUserDatabaseEnabled,+ ("MasterUserOptions" Data..=)+ Prelude.<$> masterUserOptions,+ ("SAMLOptions" Data..=) Prelude.<$> sAMLOptions+ ]+ )
+ gen/Amazonka/OpenSearch/Types/AdvancedSecurityOptionsStatus.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.OpenSearch.Types.AdvancedSecurityOptionsStatus+-- 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.OpenSearch.Types.AdvancedSecurityOptionsStatus where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.AdvancedSecurityOptions+import Amazonka.OpenSearch.Types.OptionStatus+import qualified Amazonka.Prelude as Prelude++-- | The status of fine-grained access control settings for a domain.+--+-- /See:/ 'newAdvancedSecurityOptionsStatus' smart constructor.+data AdvancedSecurityOptionsStatus = AdvancedSecurityOptionsStatus'+ { -- | Container for fine-grained access control settings.+ options :: AdvancedSecurityOptions,+ -- | Status of the fine-grained access control settings for a domain.+ status :: OptionStatus+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AdvancedSecurityOptionsStatus' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'options', 'advancedSecurityOptionsStatus_options' - Container for fine-grained access control settings.+--+-- 'status', 'advancedSecurityOptionsStatus_status' - Status of the fine-grained access control settings for a domain.+newAdvancedSecurityOptionsStatus ::+ -- | 'options'+ AdvancedSecurityOptions ->+ -- | 'status'+ OptionStatus ->+ AdvancedSecurityOptionsStatus+newAdvancedSecurityOptionsStatus pOptions_ pStatus_ =+ AdvancedSecurityOptionsStatus'+ { options = pOptions_,+ status = pStatus_+ }++-- | Container for fine-grained access control settings.+advancedSecurityOptionsStatus_options :: Lens.Lens' AdvancedSecurityOptionsStatus AdvancedSecurityOptions+advancedSecurityOptionsStatus_options = Lens.lens (\AdvancedSecurityOptionsStatus' {options} -> options) (\s@AdvancedSecurityOptionsStatus' {} a -> s {options = a} :: AdvancedSecurityOptionsStatus)++-- | Status of the fine-grained access control settings for a domain.+advancedSecurityOptionsStatus_status :: Lens.Lens' AdvancedSecurityOptionsStatus OptionStatus+advancedSecurityOptionsStatus_status = Lens.lens (\AdvancedSecurityOptionsStatus' {status} -> status) (\s@AdvancedSecurityOptionsStatus' {} a -> s {status = a} :: AdvancedSecurityOptionsStatus)++instance Data.FromJSON AdvancedSecurityOptionsStatus where+ parseJSON =+ Data.withObject+ "AdvancedSecurityOptionsStatus"+ ( \x ->+ AdvancedSecurityOptionsStatus'+ Prelude.<$> (x Data..: "Options")+ Prelude.<*> (x Data..: "Status")+ )++instance+ Prelude.Hashable+ AdvancedSecurityOptionsStatus+ where+ hashWithSalt _salt AdvancedSecurityOptionsStatus' {..} =+ _salt+ `Prelude.hashWithSalt` options+ `Prelude.hashWithSalt` status++instance Prelude.NFData AdvancedSecurityOptionsStatus where+ rnf AdvancedSecurityOptionsStatus' {..} =+ Prelude.rnf options+ `Prelude.seq` Prelude.rnf status
+ gen/Amazonka/OpenSearch/Types/AuthorizedPrincipal.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.OpenSearch.Types.AuthorizedPrincipal+-- 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.OpenSearch.Types.AuthorizedPrincipal where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.PrincipalType+import qualified Amazonka.Prelude as Prelude++-- | Information about an Amazon Web Services account or service that has+-- access to an Amazon OpenSearch Service domain through the use of an+-- interface VPC endpoint.+--+-- /See:/ 'newAuthorizedPrincipal' smart constructor.+data AuthorizedPrincipal = AuthorizedPrincipal'+ { -- | The+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html IAM principal>+ -- that is allowed access to the domain.+ principal :: Prelude.Maybe Prelude.Text,+ -- | The type of principal.+ principalType :: Prelude.Maybe PrincipalType+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AuthorizedPrincipal' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'principal', 'authorizedPrincipal_principal' - The+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html IAM principal>+-- that is allowed access to the domain.+--+-- 'principalType', 'authorizedPrincipal_principalType' - The type of principal.+newAuthorizedPrincipal ::+ AuthorizedPrincipal+newAuthorizedPrincipal =+ AuthorizedPrincipal'+ { principal = Prelude.Nothing,+ principalType = Prelude.Nothing+ }++-- | The+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html IAM principal>+-- that is allowed access to the domain.+authorizedPrincipal_principal :: Lens.Lens' AuthorizedPrincipal (Prelude.Maybe Prelude.Text)+authorizedPrincipal_principal = Lens.lens (\AuthorizedPrincipal' {principal} -> principal) (\s@AuthorizedPrincipal' {} a -> s {principal = a} :: AuthorizedPrincipal)++-- | The type of principal.+authorizedPrincipal_principalType :: Lens.Lens' AuthorizedPrincipal (Prelude.Maybe PrincipalType)+authorizedPrincipal_principalType = Lens.lens (\AuthorizedPrincipal' {principalType} -> principalType) (\s@AuthorizedPrincipal' {} a -> s {principalType = a} :: AuthorizedPrincipal)++instance Data.FromJSON AuthorizedPrincipal where+ parseJSON =+ Data.withObject+ "AuthorizedPrincipal"+ ( \x ->+ AuthorizedPrincipal'+ Prelude.<$> (x Data..:? "Principal")+ Prelude.<*> (x Data..:? "PrincipalType")+ )++instance Prelude.Hashable AuthorizedPrincipal where+ hashWithSalt _salt AuthorizedPrincipal' {..} =+ _salt+ `Prelude.hashWithSalt` principal+ `Prelude.hashWithSalt` principalType++instance Prelude.NFData AuthorizedPrincipal where+ rnf AuthorizedPrincipal' {..} =+ Prelude.rnf principal+ `Prelude.seq` Prelude.rnf principalType
+ gen/Amazonka/OpenSearch/Types/AutoTune.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.OpenSearch.Types.AutoTune+-- 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.OpenSearch.Types.AutoTune where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.AutoTuneDetails+import Amazonka.OpenSearch.Types.AutoTuneType+import qualified Amazonka.Prelude as Prelude++-- | Information about an Auto-Tune action. For more information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/auto-tune.html Auto-Tune for Amazon OpenSearch Service>.+--+-- /See:/ 'newAutoTune' smart constructor.+data AutoTune = AutoTune'+ { -- | Details about an Auto-Tune action.+ autoTuneDetails :: Prelude.Maybe AutoTuneDetails,+ -- | The type of Auto-Tune action.+ autoTuneType :: Prelude.Maybe AutoTuneType+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AutoTune' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'autoTuneDetails', 'autoTune_autoTuneDetails' - Details about an Auto-Tune action.+--+-- 'autoTuneType', 'autoTune_autoTuneType' - The type of Auto-Tune action.+newAutoTune ::+ AutoTune+newAutoTune =+ AutoTune'+ { autoTuneDetails = Prelude.Nothing,+ autoTuneType = Prelude.Nothing+ }++-- | Details about an Auto-Tune action.+autoTune_autoTuneDetails :: Lens.Lens' AutoTune (Prelude.Maybe AutoTuneDetails)+autoTune_autoTuneDetails = Lens.lens (\AutoTune' {autoTuneDetails} -> autoTuneDetails) (\s@AutoTune' {} a -> s {autoTuneDetails = a} :: AutoTune)++-- | The type of Auto-Tune action.+autoTune_autoTuneType :: Lens.Lens' AutoTune (Prelude.Maybe AutoTuneType)+autoTune_autoTuneType = Lens.lens (\AutoTune' {autoTuneType} -> autoTuneType) (\s@AutoTune' {} a -> s {autoTuneType = a} :: AutoTune)++instance Data.FromJSON AutoTune where+ parseJSON =+ Data.withObject+ "AutoTune"+ ( \x ->+ AutoTune'+ Prelude.<$> (x Data..:? "AutoTuneDetails")+ Prelude.<*> (x Data..:? "AutoTuneType")+ )++instance Prelude.Hashable AutoTune where+ hashWithSalt _salt AutoTune' {..} =+ _salt+ `Prelude.hashWithSalt` autoTuneDetails+ `Prelude.hashWithSalt` autoTuneType++instance Prelude.NFData AutoTune where+ rnf AutoTune' {..} =+ Prelude.rnf autoTuneDetails+ `Prelude.seq` Prelude.rnf autoTuneType
+ gen/Amazonka/OpenSearch/Types/AutoTuneDesiredState.hs view
@@ -0,0 +1,72 @@+{-# 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.OpenSearch.Types.AutoTuneDesiredState+-- 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.OpenSearch.Types.AutoTuneDesiredState+ ( AutoTuneDesiredState+ ( ..,+ AutoTuneDesiredState_DISABLED,+ AutoTuneDesiredState_ENABLED+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | The Auto-Tune desired state. Valid values are ENABLED and DISABLED.+newtype AutoTuneDesiredState = AutoTuneDesiredState'+ { fromAutoTuneDesiredState ::+ 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 AutoTuneDesiredState_DISABLED :: AutoTuneDesiredState+pattern AutoTuneDesiredState_DISABLED = AutoTuneDesiredState' "DISABLED"++pattern AutoTuneDesiredState_ENABLED :: AutoTuneDesiredState+pattern AutoTuneDesiredState_ENABLED = AutoTuneDesiredState' "ENABLED"++{-# COMPLETE+ AutoTuneDesiredState_DISABLED,+ AutoTuneDesiredState_ENABLED,+ AutoTuneDesiredState'+ #-}
+ gen/Amazonka/OpenSearch/Types/AutoTuneDetails.hs view
@@ -0,0 +1,76 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.OpenSearch.Types.AutoTuneDetails+-- 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.OpenSearch.Types.AutoTuneDetails where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.ScheduledAutoTuneDetails+import qualified Amazonka.Prelude as Prelude++-- | Specifies details about a scheduled Auto-Tune action. For more+-- information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/auto-tune.html Auto-Tune for Amazon OpenSearch Service>.+--+-- /See:/ 'newAutoTuneDetails' smart constructor.+data AutoTuneDetails = AutoTuneDetails'+ { -- | Container for details about a scheduled Auto-Tune action.+ scheduledAutoTuneDetails :: Prelude.Maybe ScheduledAutoTuneDetails+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AutoTuneDetails' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'scheduledAutoTuneDetails', 'autoTuneDetails_scheduledAutoTuneDetails' - Container for details about a scheduled Auto-Tune action.+newAutoTuneDetails ::+ AutoTuneDetails+newAutoTuneDetails =+ AutoTuneDetails'+ { scheduledAutoTuneDetails =+ Prelude.Nothing+ }++-- | Container for details about a scheduled Auto-Tune action.+autoTuneDetails_scheduledAutoTuneDetails :: Lens.Lens' AutoTuneDetails (Prelude.Maybe ScheduledAutoTuneDetails)+autoTuneDetails_scheduledAutoTuneDetails = Lens.lens (\AutoTuneDetails' {scheduledAutoTuneDetails} -> scheduledAutoTuneDetails) (\s@AutoTuneDetails' {} a -> s {scheduledAutoTuneDetails = a} :: AutoTuneDetails)++instance Data.FromJSON AutoTuneDetails where+ parseJSON =+ Data.withObject+ "AutoTuneDetails"+ ( \x ->+ AutoTuneDetails'+ Prelude.<$> (x Data..:? "ScheduledAutoTuneDetails")+ )++instance Prelude.Hashable AutoTuneDetails where+ hashWithSalt _salt AutoTuneDetails' {..} =+ _salt+ `Prelude.hashWithSalt` scheduledAutoTuneDetails++instance Prelude.NFData AutoTuneDetails where+ rnf AutoTuneDetails' {..} =+ Prelude.rnf scheduledAutoTuneDetails
+ gen/Amazonka/OpenSearch/Types/AutoTuneMaintenanceSchedule.hs view
@@ -0,0 +1,116 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.OpenSearch.Types.AutoTuneMaintenanceSchedule+-- 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.OpenSearch.Types.AutoTuneMaintenanceSchedule where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.Duration+import qualified Amazonka.Prelude as Prelude++-- | The Auto-Tune maintenance schedule. For more information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/auto-tune.html Auto-Tune for Amazon OpenSearch Service>.+--+-- /See:/ 'newAutoTuneMaintenanceSchedule' smart constructor.+data AutoTuneMaintenanceSchedule = AutoTuneMaintenanceSchedule'+ { -- | A cron expression for a recurring maintenance schedule during which+ -- Auto-Tune can deploy changes.+ cronExpressionForRecurrence :: Prelude.Maybe Prelude.Text,+ -- | The duration of the maintenance schedule. For example,+ -- @\"Duration\": {\"Value\": 2, \"Unit\": \"HOURS\"}@.+ duration :: Prelude.Maybe Duration,+ -- | The Epoch timestamp at which the Auto-Tune maintenance schedule starts.+ startAt :: Prelude.Maybe Data.POSIX+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AutoTuneMaintenanceSchedule' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'cronExpressionForRecurrence', 'autoTuneMaintenanceSchedule_cronExpressionForRecurrence' - A cron expression for a recurring maintenance schedule during which+-- Auto-Tune can deploy changes.+--+-- 'duration', 'autoTuneMaintenanceSchedule_duration' - The duration of the maintenance schedule. For example,+-- @\"Duration\": {\"Value\": 2, \"Unit\": \"HOURS\"}@.+--+-- 'startAt', 'autoTuneMaintenanceSchedule_startAt' - The Epoch timestamp at which the Auto-Tune maintenance schedule starts.+newAutoTuneMaintenanceSchedule ::+ AutoTuneMaintenanceSchedule+newAutoTuneMaintenanceSchedule =+ AutoTuneMaintenanceSchedule'+ { cronExpressionForRecurrence =+ Prelude.Nothing,+ duration = Prelude.Nothing,+ startAt = Prelude.Nothing+ }++-- | A cron expression for a recurring maintenance schedule during which+-- Auto-Tune can deploy changes.+autoTuneMaintenanceSchedule_cronExpressionForRecurrence :: Lens.Lens' AutoTuneMaintenanceSchedule (Prelude.Maybe Prelude.Text)+autoTuneMaintenanceSchedule_cronExpressionForRecurrence = Lens.lens (\AutoTuneMaintenanceSchedule' {cronExpressionForRecurrence} -> cronExpressionForRecurrence) (\s@AutoTuneMaintenanceSchedule' {} a -> s {cronExpressionForRecurrence = a} :: AutoTuneMaintenanceSchedule)++-- | The duration of the maintenance schedule. For example,+-- @\"Duration\": {\"Value\": 2, \"Unit\": \"HOURS\"}@.+autoTuneMaintenanceSchedule_duration :: Lens.Lens' AutoTuneMaintenanceSchedule (Prelude.Maybe Duration)+autoTuneMaintenanceSchedule_duration = Lens.lens (\AutoTuneMaintenanceSchedule' {duration} -> duration) (\s@AutoTuneMaintenanceSchedule' {} a -> s {duration = a} :: AutoTuneMaintenanceSchedule)++-- | The Epoch timestamp at which the Auto-Tune maintenance schedule starts.+autoTuneMaintenanceSchedule_startAt :: Lens.Lens' AutoTuneMaintenanceSchedule (Prelude.Maybe Prelude.UTCTime)+autoTuneMaintenanceSchedule_startAt = Lens.lens (\AutoTuneMaintenanceSchedule' {startAt} -> startAt) (\s@AutoTuneMaintenanceSchedule' {} a -> s {startAt = a} :: AutoTuneMaintenanceSchedule) Prelude.. Lens.mapping Data._Time++instance Data.FromJSON AutoTuneMaintenanceSchedule where+ parseJSON =+ Data.withObject+ "AutoTuneMaintenanceSchedule"+ ( \x ->+ AutoTuneMaintenanceSchedule'+ Prelude.<$> (x Data..:? "CronExpressionForRecurrence")+ Prelude.<*> (x Data..:? "Duration")+ Prelude.<*> (x Data..:? "StartAt")+ )++instance Prelude.Hashable AutoTuneMaintenanceSchedule where+ hashWithSalt _salt AutoTuneMaintenanceSchedule' {..} =+ _salt+ `Prelude.hashWithSalt` cronExpressionForRecurrence+ `Prelude.hashWithSalt` duration+ `Prelude.hashWithSalt` startAt++instance Prelude.NFData AutoTuneMaintenanceSchedule where+ rnf AutoTuneMaintenanceSchedule' {..} =+ Prelude.rnf cronExpressionForRecurrence+ `Prelude.seq` Prelude.rnf duration+ `Prelude.seq` Prelude.rnf startAt++instance Data.ToJSON AutoTuneMaintenanceSchedule where+ toJSON AutoTuneMaintenanceSchedule' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("CronExpressionForRecurrence" Data..=)+ Prelude.<$> cronExpressionForRecurrence,+ ("Duration" Data..=) Prelude.<$> duration,+ ("StartAt" Data..=) Prelude.<$> startAt+ ]+ )
+ gen/Amazonka/OpenSearch/Types/AutoTuneOptions.hs view
@@ -0,0 +1,130 @@+{-# 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.OpenSearch.Types.AutoTuneOptions+-- 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.OpenSearch.Types.AutoTuneOptions where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.AutoTuneDesiredState+import Amazonka.OpenSearch.Types.AutoTuneMaintenanceSchedule+import Amazonka.OpenSearch.Types.RollbackOnDisable+import qualified Amazonka.Prelude as Prelude++-- | Auto-Tune settings when updating a domain. For more information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/auto-tune.html Auto-Tune for Amazon OpenSearch Service>.+--+-- /See:/ 'newAutoTuneOptions' smart constructor.+data AutoTuneOptions = AutoTuneOptions'+ { -- | Whether Auto-Tune is enabled or disabled.+ desiredState :: Prelude.Maybe AutoTuneDesiredState,+ -- | A list of maintenance schedules during which Auto-Tune can deploy+ -- changes.+ maintenanceSchedules :: Prelude.Maybe [AutoTuneMaintenanceSchedule],+ -- | When disabling Auto-Tune, specify @NO_ROLLBACK@ to retain all prior+ -- Auto-Tune settings or @DEFAULT_ROLLBACK@ to revert to the OpenSearch+ -- Service defaults. If you specify @DEFAULT_ROLLBACK@, you must include a+ -- @MaintenanceSchedule@ in the request. Otherwise, OpenSearch Service is+ -- unable to perform the rollback.+ rollbackOnDisable :: Prelude.Maybe RollbackOnDisable+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AutoTuneOptions' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'desiredState', 'autoTuneOptions_desiredState' - Whether Auto-Tune is enabled or disabled.+--+-- 'maintenanceSchedules', 'autoTuneOptions_maintenanceSchedules' - A list of maintenance schedules during which Auto-Tune can deploy+-- changes.+--+-- 'rollbackOnDisable', 'autoTuneOptions_rollbackOnDisable' - When disabling Auto-Tune, specify @NO_ROLLBACK@ to retain all prior+-- Auto-Tune settings or @DEFAULT_ROLLBACK@ to revert to the OpenSearch+-- Service defaults. If you specify @DEFAULT_ROLLBACK@, you must include a+-- @MaintenanceSchedule@ in the request. Otherwise, OpenSearch Service is+-- unable to perform the rollback.+newAutoTuneOptions ::+ AutoTuneOptions+newAutoTuneOptions =+ AutoTuneOptions'+ { desiredState = Prelude.Nothing,+ maintenanceSchedules = Prelude.Nothing,+ rollbackOnDisable = Prelude.Nothing+ }++-- | Whether Auto-Tune is enabled or disabled.+autoTuneOptions_desiredState :: Lens.Lens' AutoTuneOptions (Prelude.Maybe AutoTuneDesiredState)+autoTuneOptions_desiredState = Lens.lens (\AutoTuneOptions' {desiredState} -> desiredState) (\s@AutoTuneOptions' {} a -> s {desiredState = a} :: AutoTuneOptions)++-- | A list of maintenance schedules during which Auto-Tune can deploy+-- changes.+autoTuneOptions_maintenanceSchedules :: Lens.Lens' AutoTuneOptions (Prelude.Maybe [AutoTuneMaintenanceSchedule])+autoTuneOptions_maintenanceSchedules = Lens.lens (\AutoTuneOptions' {maintenanceSchedules} -> maintenanceSchedules) (\s@AutoTuneOptions' {} a -> s {maintenanceSchedules = a} :: AutoTuneOptions) Prelude.. Lens.mapping Lens.coerced++-- | When disabling Auto-Tune, specify @NO_ROLLBACK@ to retain all prior+-- Auto-Tune settings or @DEFAULT_ROLLBACK@ to revert to the OpenSearch+-- Service defaults. If you specify @DEFAULT_ROLLBACK@, you must include a+-- @MaintenanceSchedule@ in the request. Otherwise, OpenSearch Service is+-- unable to perform the rollback.+autoTuneOptions_rollbackOnDisable :: Lens.Lens' AutoTuneOptions (Prelude.Maybe RollbackOnDisable)+autoTuneOptions_rollbackOnDisable = Lens.lens (\AutoTuneOptions' {rollbackOnDisable} -> rollbackOnDisable) (\s@AutoTuneOptions' {} a -> s {rollbackOnDisable = a} :: AutoTuneOptions)++instance Data.FromJSON AutoTuneOptions where+ parseJSON =+ Data.withObject+ "AutoTuneOptions"+ ( \x ->+ AutoTuneOptions'+ Prelude.<$> (x Data..:? "DesiredState")+ Prelude.<*> ( x+ Data..:? "MaintenanceSchedules"+ Data..!= Prelude.mempty+ )+ Prelude.<*> (x Data..:? "RollbackOnDisable")+ )++instance Prelude.Hashable AutoTuneOptions where+ hashWithSalt _salt AutoTuneOptions' {..} =+ _salt+ `Prelude.hashWithSalt` desiredState+ `Prelude.hashWithSalt` maintenanceSchedules+ `Prelude.hashWithSalt` rollbackOnDisable++instance Prelude.NFData AutoTuneOptions where+ rnf AutoTuneOptions' {..} =+ Prelude.rnf desiredState+ `Prelude.seq` Prelude.rnf maintenanceSchedules+ `Prelude.seq` Prelude.rnf rollbackOnDisable++instance Data.ToJSON AutoTuneOptions where+ toJSON AutoTuneOptions' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("DesiredState" Data..=) Prelude.<$> desiredState,+ ("MaintenanceSchedules" Data..=)+ Prelude.<$> maintenanceSchedules,+ ("RollbackOnDisable" Data..=)+ Prelude.<$> rollbackOnDisable+ ]+ )
+ gen/Amazonka/OpenSearch/Types/AutoTuneOptionsInput.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.OpenSearch.Types.AutoTuneOptionsInput+-- 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.OpenSearch.Types.AutoTuneOptionsInput where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.AutoTuneDesiredState+import Amazonka.OpenSearch.Types.AutoTuneMaintenanceSchedule+import qualified Amazonka.Prelude as Prelude++-- | Options for configuring Auto-Tune. For more information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/auto-tune.html Auto-Tune for Amazon OpenSearch Service>.+--+-- /See:/ 'newAutoTuneOptionsInput' smart constructor.+data AutoTuneOptionsInput = AutoTuneOptionsInput'+ { -- | Whether Auto-Tune is enabled or disabled.+ desiredState :: Prelude.Maybe AutoTuneDesiredState,+ -- | A list of maintenance schedules during which Auto-Tune can deploy+ -- changes. Maintenance schedules are overwrite, not append. If your+ -- request includes no schedules, the request deletes all existing+ -- schedules. To preserve existing schedules, make a call to+ -- @DescribeDomainConfig@ first and use the @MaintenanceSchedules@ portion+ -- of the response as the basis for this section.+ maintenanceSchedules :: Prelude.Maybe [AutoTuneMaintenanceSchedule]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AutoTuneOptionsInput' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'desiredState', 'autoTuneOptionsInput_desiredState' - Whether Auto-Tune is enabled or disabled.+--+-- 'maintenanceSchedules', 'autoTuneOptionsInput_maintenanceSchedules' - A list of maintenance schedules during which Auto-Tune can deploy+-- changes. Maintenance schedules are overwrite, not append. If your+-- request includes no schedules, the request deletes all existing+-- schedules. To preserve existing schedules, make a call to+-- @DescribeDomainConfig@ first and use the @MaintenanceSchedules@ portion+-- of the response as the basis for this section.+newAutoTuneOptionsInput ::+ AutoTuneOptionsInput+newAutoTuneOptionsInput =+ AutoTuneOptionsInput'+ { desiredState =+ Prelude.Nothing,+ maintenanceSchedules = Prelude.Nothing+ }++-- | Whether Auto-Tune is enabled or disabled.+autoTuneOptionsInput_desiredState :: Lens.Lens' AutoTuneOptionsInput (Prelude.Maybe AutoTuneDesiredState)+autoTuneOptionsInput_desiredState = Lens.lens (\AutoTuneOptionsInput' {desiredState} -> desiredState) (\s@AutoTuneOptionsInput' {} a -> s {desiredState = a} :: AutoTuneOptionsInput)++-- | A list of maintenance schedules during which Auto-Tune can deploy+-- changes. Maintenance schedules are overwrite, not append. If your+-- request includes no schedules, the request deletes all existing+-- schedules. To preserve existing schedules, make a call to+-- @DescribeDomainConfig@ first and use the @MaintenanceSchedules@ portion+-- of the response as the basis for this section.+autoTuneOptionsInput_maintenanceSchedules :: Lens.Lens' AutoTuneOptionsInput (Prelude.Maybe [AutoTuneMaintenanceSchedule])+autoTuneOptionsInput_maintenanceSchedules = Lens.lens (\AutoTuneOptionsInput' {maintenanceSchedules} -> maintenanceSchedules) (\s@AutoTuneOptionsInput' {} a -> s {maintenanceSchedules = a} :: AutoTuneOptionsInput) Prelude.. Lens.mapping Lens.coerced++instance Prelude.Hashable AutoTuneOptionsInput where+ hashWithSalt _salt AutoTuneOptionsInput' {..} =+ _salt+ `Prelude.hashWithSalt` desiredState+ `Prelude.hashWithSalt` maintenanceSchedules++instance Prelude.NFData AutoTuneOptionsInput where+ rnf AutoTuneOptionsInput' {..} =+ Prelude.rnf desiredState+ `Prelude.seq` Prelude.rnf maintenanceSchedules++instance Data.ToJSON AutoTuneOptionsInput where+ toJSON AutoTuneOptionsInput' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("DesiredState" Data..=) Prelude.<$> desiredState,+ ("MaintenanceSchedules" Data..=)+ Prelude.<$> maintenanceSchedules+ ]+ )
+ gen/Amazonka/OpenSearch/Types/AutoTuneOptionsOutput.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.OpenSearch.Types.AutoTuneOptionsOutput+-- 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.OpenSearch.Types.AutoTuneOptionsOutput where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.AutoTuneState+import qualified Amazonka.Prelude as Prelude++-- | The Auto-Tune settings for a domain, displayed when enabling or+-- disabling Auto-Tune.+--+-- /See:/ 'newAutoTuneOptionsOutput' smart constructor.+data AutoTuneOptionsOutput = AutoTuneOptionsOutput'+ { -- | Any errors that occurred while enabling or disabling Auto-Tune.+ errorMessage :: Prelude.Maybe Prelude.Text,+ -- | The current state of Auto-Tune on the domain.+ state :: Prelude.Maybe AutoTuneState+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AutoTuneOptionsOutput' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'errorMessage', 'autoTuneOptionsOutput_errorMessage' - Any errors that occurred while enabling or disabling Auto-Tune.+--+-- 'state', 'autoTuneOptionsOutput_state' - The current state of Auto-Tune on the domain.+newAutoTuneOptionsOutput ::+ AutoTuneOptionsOutput+newAutoTuneOptionsOutput =+ AutoTuneOptionsOutput'+ { errorMessage =+ Prelude.Nothing,+ state = Prelude.Nothing+ }++-- | Any errors that occurred while enabling or disabling Auto-Tune.+autoTuneOptionsOutput_errorMessage :: Lens.Lens' AutoTuneOptionsOutput (Prelude.Maybe Prelude.Text)+autoTuneOptionsOutput_errorMessage = Lens.lens (\AutoTuneOptionsOutput' {errorMessage} -> errorMessage) (\s@AutoTuneOptionsOutput' {} a -> s {errorMessage = a} :: AutoTuneOptionsOutput)++-- | The current state of Auto-Tune on the domain.+autoTuneOptionsOutput_state :: Lens.Lens' AutoTuneOptionsOutput (Prelude.Maybe AutoTuneState)+autoTuneOptionsOutput_state = Lens.lens (\AutoTuneOptionsOutput' {state} -> state) (\s@AutoTuneOptionsOutput' {} a -> s {state = a} :: AutoTuneOptionsOutput)++instance Data.FromJSON AutoTuneOptionsOutput where+ parseJSON =+ Data.withObject+ "AutoTuneOptionsOutput"+ ( \x ->+ AutoTuneOptionsOutput'+ Prelude.<$> (x Data..:? "ErrorMessage")+ Prelude.<*> (x Data..:? "State")+ )++instance Prelude.Hashable AutoTuneOptionsOutput where+ hashWithSalt _salt AutoTuneOptionsOutput' {..} =+ _salt+ `Prelude.hashWithSalt` errorMessage+ `Prelude.hashWithSalt` state++instance Prelude.NFData AutoTuneOptionsOutput where+ rnf AutoTuneOptionsOutput' {..} =+ Prelude.rnf errorMessage+ `Prelude.seq` Prelude.rnf state
+ gen/Amazonka/OpenSearch/Types/AutoTuneOptionsStatus.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.OpenSearch.Types.AutoTuneOptionsStatus+-- 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.OpenSearch.Types.AutoTuneOptionsStatus where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.AutoTuneOptions+import Amazonka.OpenSearch.Types.AutoTuneStatus+import qualified Amazonka.Prelude as Prelude++-- | The Auto-Tune status for the domain.+--+-- /See:/ 'newAutoTuneOptionsStatus' smart constructor.+data AutoTuneOptionsStatus = AutoTuneOptionsStatus'+ { -- | Auto-Tune settings for updating a domain.+ options :: Prelude.Maybe AutoTuneOptions,+ -- | The current status of Auto-Tune for a domain.+ status :: Prelude.Maybe AutoTuneStatus+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AutoTuneOptionsStatus' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'options', 'autoTuneOptionsStatus_options' - Auto-Tune settings for updating a domain.+--+-- 'status', 'autoTuneOptionsStatus_status' - The current status of Auto-Tune for a domain.+newAutoTuneOptionsStatus ::+ AutoTuneOptionsStatus+newAutoTuneOptionsStatus =+ AutoTuneOptionsStatus'+ { options = Prelude.Nothing,+ status = Prelude.Nothing+ }++-- | Auto-Tune settings for updating a domain.+autoTuneOptionsStatus_options :: Lens.Lens' AutoTuneOptionsStatus (Prelude.Maybe AutoTuneOptions)+autoTuneOptionsStatus_options = Lens.lens (\AutoTuneOptionsStatus' {options} -> options) (\s@AutoTuneOptionsStatus' {} a -> s {options = a} :: AutoTuneOptionsStatus)++-- | The current status of Auto-Tune for a domain.+autoTuneOptionsStatus_status :: Lens.Lens' AutoTuneOptionsStatus (Prelude.Maybe AutoTuneStatus)+autoTuneOptionsStatus_status = Lens.lens (\AutoTuneOptionsStatus' {status} -> status) (\s@AutoTuneOptionsStatus' {} a -> s {status = a} :: AutoTuneOptionsStatus)++instance Data.FromJSON AutoTuneOptionsStatus where+ parseJSON =+ Data.withObject+ "AutoTuneOptionsStatus"+ ( \x ->+ AutoTuneOptionsStatus'+ Prelude.<$> (x Data..:? "Options")+ Prelude.<*> (x Data..:? "Status")+ )++instance Prelude.Hashable AutoTuneOptionsStatus where+ hashWithSalt _salt AutoTuneOptionsStatus' {..} =+ _salt+ `Prelude.hashWithSalt` options+ `Prelude.hashWithSalt` status++instance Prelude.NFData AutoTuneOptionsStatus where+ rnf AutoTuneOptionsStatus' {..} =+ Prelude.rnf options+ `Prelude.seq` Prelude.rnf status
+ gen/Amazonka/OpenSearch/Types/AutoTuneState.hs view
@@ -0,0 +1,108 @@+{-# 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.OpenSearch.Types.AutoTuneState+-- 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.OpenSearch.Types.AutoTuneState+ ( AutoTuneState+ ( ..,+ AutoTuneState_DISABLED,+ AutoTuneState_DISABLED_AND_ROLLBACK_COMPLETE,+ AutoTuneState_DISABLED_AND_ROLLBACK_ERROR,+ AutoTuneState_DISABLED_AND_ROLLBACK_IN_PROGRESS,+ AutoTuneState_DISABLED_AND_ROLLBACK_SCHEDULED,+ AutoTuneState_DISABLE_IN_PROGRESS,+ AutoTuneState_ENABLED,+ AutoTuneState_ENABLE_IN_PROGRESS,+ AutoTuneState_ERROR+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | The Auto-Tune state for the domain. For valid states see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/auto-tune.html Auto-Tune for Amazon OpenSearch Service>.+newtype AutoTuneState = AutoTuneState'+ { fromAutoTuneState ::+ 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 AutoTuneState_DISABLED :: AutoTuneState+pattern AutoTuneState_DISABLED = AutoTuneState' "DISABLED"++pattern AutoTuneState_DISABLED_AND_ROLLBACK_COMPLETE :: AutoTuneState+pattern AutoTuneState_DISABLED_AND_ROLLBACK_COMPLETE = AutoTuneState' "DISABLED_AND_ROLLBACK_COMPLETE"++pattern AutoTuneState_DISABLED_AND_ROLLBACK_ERROR :: AutoTuneState+pattern AutoTuneState_DISABLED_AND_ROLLBACK_ERROR = AutoTuneState' "DISABLED_AND_ROLLBACK_ERROR"++pattern AutoTuneState_DISABLED_AND_ROLLBACK_IN_PROGRESS :: AutoTuneState+pattern AutoTuneState_DISABLED_AND_ROLLBACK_IN_PROGRESS = AutoTuneState' "DISABLED_AND_ROLLBACK_IN_PROGRESS"++pattern AutoTuneState_DISABLED_AND_ROLLBACK_SCHEDULED :: AutoTuneState+pattern AutoTuneState_DISABLED_AND_ROLLBACK_SCHEDULED = AutoTuneState' "DISABLED_AND_ROLLBACK_SCHEDULED"++pattern AutoTuneState_DISABLE_IN_PROGRESS :: AutoTuneState+pattern AutoTuneState_DISABLE_IN_PROGRESS = AutoTuneState' "DISABLE_IN_PROGRESS"++pattern AutoTuneState_ENABLED :: AutoTuneState+pattern AutoTuneState_ENABLED = AutoTuneState' "ENABLED"++pattern AutoTuneState_ENABLE_IN_PROGRESS :: AutoTuneState+pattern AutoTuneState_ENABLE_IN_PROGRESS = AutoTuneState' "ENABLE_IN_PROGRESS"++pattern AutoTuneState_ERROR :: AutoTuneState+pattern AutoTuneState_ERROR = AutoTuneState' "ERROR"++{-# COMPLETE+ AutoTuneState_DISABLED,+ AutoTuneState_DISABLED_AND_ROLLBACK_COMPLETE,+ AutoTuneState_DISABLED_AND_ROLLBACK_ERROR,+ AutoTuneState_DISABLED_AND_ROLLBACK_IN_PROGRESS,+ AutoTuneState_DISABLED_AND_ROLLBACK_SCHEDULED,+ AutoTuneState_DISABLE_IN_PROGRESS,+ AutoTuneState_ENABLED,+ AutoTuneState_ENABLE_IN_PROGRESS,+ AutoTuneState_ERROR,+ AutoTuneState'+ #-}
+ gen/Amazonka/OpenSearch/Types/AutoTuneStatus.hs view
@@ -0,0 +1,144 @@+{-# 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.OpenSearch.Types.AutoTuneStatus+-- 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.OpenSearch.Types.AutoTuneStatus where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.AutoTuneState+import qualified Amazonka.Prelude as Prelude++-- | The current status of Auto-Tune for the domain. For more information,+-- see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/auto-tune.html Auto-Tune for Amazon OpenSearch Service>.+--+-- /See:/ 'newAutoTuneStatus' smart constructor.+data AutoTuneStatus = AutoTuneStatus'+ { -- | Any errors that occurred while enabling or disabling Auto-Tune.+ errorMessage :: Prelude.Maybe Prelude.Text,+ -- | Indicates whether the domain is being deleted.+ pendingDeletion :: Prelude.Maybe Prelude.Bool,+ -- | The latest version of the Auto-Tune options.+ updateVersion :: Prelude.Maybe Prelude.Natural,+ -- | Date and time when Auto-Tune was enabled for the domain.+ creationDate :: Data.POSIX,+ -- | Date and time when the Auto-Tune options were last updated for the+ -- domain.+ updateDate :: Data.POSIX,+ -- | The current state of Auto-Tune on the domain.+ state :: AutoTuneState+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AutoTuneStatus' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'errorMessage', 'autoTuneStatus_errorMessage' - Any errors that occurred while enabling or disabling Auto-Tune.+--+-- 'pendingDeletion', 'autoTuneStatus_pendingDeletion' - Indicates whether the domain is being deleted.+--+-- 'updateVersion', 'autoTuneStatus_updateVersion' - The latest version of the Auto-Tune options.+--+-- 'creationDate', 'autoTuneStatus_creationDate' - Date and time when Auto-Tune was enabled for the domain.+--+-- 'updateDate', 'autoTuneStatus_updateDate' - Date and time when the Auto-Tune options were last updated for the+-- domain.+--+-- 'state', 'autoTuneStatus_state' - The current state of Auto-Tune on the domain.+newAutoTuneStatus ::+ -- | 'creationDate'+ Prelude.UTCTime ->+ -- | 'updateDate'+ Prelude.UTCTime ->+ -- | 'state'+ AutoTuneState ->+ AutoTuneStatus+newAutoTuneStatus pCreationDate_ pUpdateDate_ pState_ =+ AutoTuneStatus'+ { errorMessage = Prelude.Nothing,+ pendingDeletion = Prelude.Nothing,+ updateVersion = Prelude.Nothing,+ creationDate = Data._Time Lens.# pCreationDate_,+ updateDate = Data._Time Lens.# pUpdateDate_,+ state = pState_+ }++-- | Any errors that occurred while enabling or disabling Auto-Tune.+autoTuneStatus_errorMessage :: Lens.Lens' AutoTuneStatus (Prelude.Maybe Prelude.Text)+autoTuneStatus_errorMessage = Lens.lens (\AutoTuneStatus' {errorMessage} -> errorMessage) (\s@AutoTuneStatus' {} a -> s {errorMessage = a} :: AutoTuneStatus)++-- | Indicates whether the domain is being deleted.+autoTuneStatus_pendingDeletion :: Lens.Lens' AutoTuneStatus (Prelude.Maybe Prelude.Bool)+autoTuneStatus_pendingDeletion = Lens.lens (\AutoTuneStatus' {pendingDeletion} -> pendingDeletion) (\s@AutoTuneStatus' {} a -> s {pendingDeletion = a} :: AutoTuneStatus)++-- | The latest version of the Auto-Tune options.+autoTuneStatus_updateVersion :: Lens.Lens' AutoTuneStatus (Prelude.Maybe Prelude.Natural)+autoTuneStatus_updateVersion = Lens.lens (\AutoTuneStatus' {updateVersion} -> updateVersion) (\s@AutoTuneStatus' {} a -> s {updateVersion = a} :: AutoTuneStatus)++-- | Date and time when Auto-Tune was enabled for the domain.+autoTuneStatus_creationDate :: Lens.Lens' AutoTuneStatus Prelude.UTCTime+autoTuneStatus_creationDate = Lens.lens (\AutoTuneStatus' {creationDate} -> creationDate) (\s@AutoTuneStatus' {} a -> s {creationDate = a} :: AutoTuneStatus) Prelude.. Data._Time++-- | Date and time when the Auto-Tune options were last updated for the+-- domain.+autoTuneStatus_updateDate :: Lens.Lens' AutoTuneStatus Prelude.UTCTime+autoTuneStatus_updateDate = Lens.lens (\AutoTuneStatus' {updateDate} -> updateDate) (\s@AutoTuneStatus' {} a -> s {updateDate = a} :: AutoTuneStatus) Prelude.. Data._Time++-- | The current state of Auto-Tune on the domain.+autoTuneStatus_state :: Lens.Lens' AutoTuneStatus AutoTuneState+autoTuneStatus_state = Lens.lens (\AutoTuneStatus' {state} -> state) (\s@AutoTuneStatus' {} a -> s {state = a} :: AutoTuneStatus)++instance Data.FromJSON AutoTuneStatus where+ parseJSON =+ Data.withObject+ "AutoTuneStatus"+ ( \x ->+ AutoTuneStatus'+ Prelude.<$> (x Data..:? "ErrorMessage")+ Prelude.<*> (x Data..:? "PendingDeletion")+ Prelude.<*> (x Data..:? "UpdateVersion")+ Prelude.<*> (x Data..: "CreationDate")+ Prelude.<*> (x Data..: "UpdateDate")+ Prelude.<*> (x Data..: "State")+ )++instance Prelude.Hashable AutoTuneStatus where+ hashWithSalt _salt AutoTuneStatus' {..} =+ _salt+ `Prelude.hashWithSalt` errorMessage+ `Prelude.hashWithSalt` pendingDeletion+ `Prelude.hashWithSalt` updateVersion+ `Prelude.hashWithSalt` creationDate+ `Prelude.hashWithSalt` updateDate+ `Prelude.hashWithSalt` state++instance Prelude.NFData AutoTuneStatus where+ rnf AutoTuneStatus' {..} =+ Prelude.rnf errorMessage+ `Prelude.seq` Prelude.rnf pendingDeletion+ `Prelude.seq` Prelude.rnf updateVersion+ `Prelude.seq` Prelude.rnf creationDate+ `Prelude.seq` Prelude.rnf updateDate+ `Prelude.seq` Prelude.rnf state
+ gen/Amazonka/OpenSearch/Types/AutoTuneType.hs view
@@ -0,0 +1,67 @@+{-# 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.OpenSearch.Types.AutoTuneType+-- 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.OpenSearch.Types.AutoTuneType+ ( AutoTuneType+ ( ..,+ AutoTuneType_SCHEDULED_ACTION+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Specifies the Auto-Tune type. Valid value is SCHEDULED_ACTION.+newtype AutoTuneType = AutoTuneType'+ { fromAutoTuneType ::+ 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 AutoTuneType_SCHEDULED_ACTION :: AutoTuneType+pattern AutoTuneType_SCHEDULED_ACTION = AutoTuneType' "SCHEDULED_ACTION"++{-# COMPLETE+ AutoTuneType_SCHEDULED_ACTION,+ AutoTuneType'+ #-}
+ gen/Amazonka/OpenSearch/Types/ChangeProgressDetails.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.OpenSearch.Types.ChangeProgressDetails+-- 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.OpenSearch.Types.ChangeProgressDetails 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++-- | Container for information about a configuration change happening on a+-- domain.+--+-- /See:/ 'newChangeProgressDetails' smart constructor.+data ChangeProgressDetails = ChangeProgressDetails'+ { -- | The ID of the configuration change.+ changeId :: Prelude.Maybe Prelude.Text,+ -- | A message corresponding to the status of the configuration change.+ message :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ChangeProgressDetails' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'changeId', 'changeProgressDetails_changeId' - The ID of the configuration change.+--+-- 'message', 'changeProgressDetails_message' - A message corresponding to the status of the configuration change.+newChangeProgressDetails ::+ ChangeProgressDetails+newChangeProgressDetails =+ ChangeProgressDetails'+ { changeId = Prelude.Nothing,+ message = Prelude.Nothing+ }++-- | The ID of the configuration change.+changeProgressDetails_changeId :: Lens.Lens' ChangeProgressDetails (Prelude.Maybe Prelude.Text)+changeProgressDetails_changeId = Lens.lens (\ChangeProgressDetails' {changeId} -> changeId) (\s@ChangeProgressDetails' {} a -> s {changeId = a} :: ChangeProgressDetails)++-- | A message corresponding to the status of the configuration change.+changeProgressDetails_message :: Lens.Lens' ChangeProgressDetails (Prelude.Maybe Prelude.Text)+changeProgressDetails_message = Lens.lens (\ChangeProgressDetails' {message} -> message) (\s@ChangeProgressDetails' {} a -> s {message = a} :: ChangeProgressDetails)++instance Data.FromJSON ChangeProgressDetails where+ parseJSON =+ Data.withObject+ "ChangeProgressDetails"+ ( \x ->+ ChangeProgressDetails'+ Prelude.<$> (x Data..:? "ChangeId")+ Prelude.<*> (x Data..:? "Message")+ )++instance Prelude.Hashable ChangeProgressDetails where+ hashWithSalt _salt ChangeProgressDetails' {..} =+ _salt+ `Prelude.hashWithSalt` changeId+ `Prelude.hashWithSalt` message++instance Prelude.NFData ChangeProgressDetails where+ rnf ChangeProgressDetails' {..} =+ Prelude.rnf changeId+ `Prelude.seq` Prelude.rnf message
+ gen/Amazonka/OpenSearch/Types/ChangeProgressStage.hs view
@@ -0,0 +1,108 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.OpenSearch.Types.ChangeProgressStage+-- 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.OpenSearch.Types.ChangeProgressStage 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++-- | Progress details for each stage of a domain update.+--+-- /See:/ 'newChangeProgressStage' smart constructor.+data ChangeProgressStage = ChangeProgressStage'+ { -- | The description of the stage.+ description :: Prelude.Maybe Prelude.Text,+ -- | The most recent updated timestamp of the stage.+ lastUpdated :: Prelude.Maybe Data.POSIX,+ -- | The name of the stage.+ name :: Prelude.Maybe Prelude.Text,+ -- | The status of the stage.+ status :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ChangeProgressStage' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'changeProgressStage_description' - The description of the stage.+--+-- 'lastUpdated', 'changeProgressStage_lastUpdated' - The most recent updated timestamp of the stage.+--+-- 'name', 'changeProgressStage_name' - The name of the stage.+--+-- 'status', 'changeProgressStage_status' - The status of the stage.+newChangeProgressStage ::+ ChangeProgressStage+newChangeProgressStage =+ ChangeProgressStage'+ { description = Prelude.Nothing,+ lastUpdated = Prelude.Nothing,+ name = Prelude.Nothing,+ status = Prelude.Nothing+ }++-- | The description of the stage.+changeProgressStage_description :: Lens.Lens' ChangeProgressStage (Prelude.Maybe Prelude.Text)+changeProgressStage_description = Lens.lens (\ChangeProgressStage' {description} -> description) (\s@ChangeProgressStage' {} a -> s {description = a} :: ChangeProgressStage)++-- | The most recent updated timestamp of the stage.+changeProgressStage_lastUpdated :: Lens.Lens' ChangeProgressStage (Prelude.Maybe Prelude.UTCTime)+changeProgressStage_lastUpdated = Lens.lens (\ChangeProgressStage' {lastUpdated} -> lastUpdated) (\s@ChangeProgressStage' {} a -> s {lastUpdated = a} :: ChangeProgressStage) Prelude.. Lens.mapping Data._Time++-- | The name of the stage.+changeProgressStage_name :: Lens.Lens' ChangeProgressStage (Prelude.Maybe Prelude.Text)+changeProgressStage_name = Lens.lens (\ChangeProgressStage' {name} -> name) (\s@ChangeProgressStage' {} a -> s {name = a} :: ChangeProgressStage)++-- | The status of the stage.+changeProgressStage_status :: Lens.Lens' ChangeProgressStage (Prelude.Maybe Prelude.Text)+changeProgressStage_status = Lens.lens (\ChangeProgressStage' {status} -> status) (\s@ChangeProgressStage' {} a -> s {status = a} :: ChangeProgressStage)++instance Data.FromJSON ChangeProgressStage where+ parseJSON =+ Data.withObject+ "ChangeProgressStage"+ ( \x ->+ ChangeProgressStage'+ Prelude.<$> (x Data..:? "Description")+ Prelude.<*> (x Data..:? "LastUpdated")+ Prelude.<*> (x Data..:? "Name")+ Prelude.<*> (x Data..:? "Status")+ )++instance Prelude.Hashable ChangeProgressStage where+ hashWithSalt _salt ChangeProgressStage' {..} =+ _salt+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` lastUpdated+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` status++instance Prelude.NFData ChangeProgressStage where+ rnf ChangeProgressStage' {..} =+ Prelude.rnf description+ `Prelude.seq` Prelude.rnf lastUpdated+ `Prelude.seq` Prelude.rnf name+ `Prelude.seq` Prelude.rnf status
+ gen/Amazonka/OpenSearch/Types/ChangeProgressStatusDetails.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.OpenSearch.Types.ChangeProgressStatusDetails+-- 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.OpenSearch.Types.ChangeProgressStatusDetails where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.ChangeProgressStage+import Amazonka.OpenSearch.Types.OverallChangeStatus+import qualified Amazonka.Prelude as Prelude++-- | The progress details of a specific domain configuration change.+--+-- /See:/ 'newChangeProgressStatusDetails' smart constructor.+data ChangeProgressStatusDetails = ChangeProgressStatusDetails'+ { -- | The unique change identifier associated with a specific domain+ -- configuration change.+ changeId :: Prelude.Maybe Prelude.Text,+ -- | The specific stages that the domain is going through to perform the+ -- configuration change.+ changeProgressStages :: Prelude.Maybe [ChangeProgressStage],+ -- | The list of properties in the domain configuration change that have+ -- completed.+ completedProperties :: Prelude.Maybe [Prelude.Text],+ -- | The list of properties in the domain configuration change that are still+ -- pending.+ pendingProperties :: Prelude.Maybe [Prelude.Text],+ -- | The time at which the configuration change is made on the domain.+ startTime :: Prelude.Maybe Data.POSIX,+ -- | The overall status of the domain configuration change.+ status :: Prelude.Maybe OverallChangeStatus,+ -- | The total number of stages required for the configuration change.+ totalNumberOfStages :: Prelude.Maybe Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ChangeProgressStatusDetails' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'changeId', 'changeProgressStatusDetails_changeId' - The unique change identifier associated with a specific domain+-- configuration change.+--+-- 'changeProgressStages', 'changeProgressStatusDetails_changeProgressStages' - The specific stages that the domain is going through to perform the+-- configuration change.+--+-- 'completedProperties', 'changeProgressStatusDetails_completedProperties' - The list of properties in the domain configuration change that have+-- completed.+--+-- 'pendingProperties', 'changeProgressStatusDetails_pendingProperties' - The list of properties in the domain configuration change that are still+-- pending.+--+-- 'startTime', 'changeProgressStatusDetails_startTime' - The time at which the configuration change is made on the domain.+--+-- 'status', 'changeProgressStatusDetails_status' - The overall status of the domain configuration change.+--+-- 'totalNumberOfStages', 'changeProgressStatusDetails_totalNumberOfStages' - The total number of stages required for the configuration change.+newChangeProgressStatusDetails ::+ ChangeProgressStatusDetails+newChangeProgressStatusDetails =+ ChangeProgressStatusDetails'+ { changeId =+ Prelude.Nothing,+ changeProgressStages = Prelude.Nothing,+ completedProperties = Prelude.Nothing,+ pendingProperties = Prelude.Nothing,+ startTime = Prelude.Nothing,+ status = Prelude.Nothing,+ totalNumberOfStages = Prelude.Nothing+ }++-- | The unique change identifier associated with a specific domain+-- configuration change.+changeProgressStatusDetails_changeId :: Lens.Lens' ChangeProgressStatusDetails (Prelude.Maybe Prelude.Text)+changeProgressStatusDetails_changeId = Lens.lens (\ChangeProgressStatusDetails' {changeId} -> changeId) (\s@ChangeProgressStatusDetails' {} a -> s {changeId = a} :: ChangeProgressStatusDetails)++-- | The specific stages that the domain is going through to perform the+-- configuration change.+changeProgressStatusDetails_changeProgressStages :: Lens.Lens' ChangeProgressStatusDetails (Prelude.Maybe [ChangeProgressStage])+changeProgressStatusDetails_changeProgressStages = Lens.lens (\ChangeProgressStatusDetails' {changeProgressStages} -> changeProgressStages) (\s@ChangeProgressStatusDetails' {} a -> s {changeProgressStages = a} :: ChangeProgressStatusDetails) Prelude.. Lens.mapping Lens.coerced++-- | The list of properties in the domain configuration change that have+-- completed.+changeProgressStatusDetails_completedProperties :: Lens.Lens' ChangeProgressStatusDetails (Prelude.Maybe [Prelude.Text])+changeProgressStatusDetails_completedProperties = Lens.lens (\ChangeProgressStatusDetails' {completedProperties} -> completedProperties) (\s@ChangeProgressStatusDetails' {} a -> s {completedProperties = a} :: ChangeProgressStatusDetails) Prelude.. Lens.mapping Lens.coerced++-- | The list of properties in the domain configuration change that are still+-- pending.+changeProgressStatusDetails_pendingProperties :: Lens.Lens' ChangeProgressStatusDetails (Prelude.Maybe [Prelude.Text])+changeProgressStatusDetails_pendingProperties = Lens.lens (\ChangeProgressStatusDetails' {pendingProperties} -> pendingProperties) (\s@ChangeProgressStatusDetails' {} a -> s {pendingProperties = a} :: ChangeProgressStatusDetails) Prelude.. Lens.mapping Lens.coerced++-- | The time at which the configuration change is made on the domain.+changeProgressStatusDetails_startTime :: Lens.Lens' ChangeProgressStatusDetails (Prelude.Maybe Prelude.UTCTime)+changeProgressStatusDetails_startTime = Lens.lens (\ChangeProgressStatusDetails' {startTime} -> startTime) (\s@ChangeProgressStatusDetails' {} a -> s {startTime = a} :: ChangeProgressStatusDetails) Prelude.. Lens.mapping Data._Time++-- | The overall status of the domain configuration change.+changeProgressStatusDetails_status :: Lens.Lens' ChangeProgressStatusDetails (Prelude.Maybe OverallChangeStatus)+changeProgressStatusDetails_status = Lens.lens (\ChangeProgressStatusDetails' {status} -> status) (\s@ChangeProgressStatusDetails' {} a -> s {status = a} :: ChangeProgressStatusDetails)++-- | The total number of stages required for the configuration change.+changeProgressStatusDetails_totalNumberOfStages :: Lens.Lens' ChangeProgressStatusDetails (Prelude.Maybe Prelude.Int)+changeProgressStatusDetails_totalNumberOfStages = Lens.lens (\ChangeProgressStatusDetails' {totalNumberOfStages} -> totalNumberOfStages) (\s@ChangeProgressStatusDetails' {} a -> s {totalNumberOfStages = a} :: ChangeProgressStatusDetails)++instance Data.FromJSON ChangeProgressStatusDetails where+ parseJSON =+ Data.withObject+ "ChangeProgressStatusDetails"+ ( \x ->+ ChangeProgressStatusDetails'+ Prelude.<$> (x Data..:? "ChangeId")+ Prelude.<*> ( x+ Data..:? "ChangeProgressStages"+ Data..!= Prelude.mempty+ )+ Prelude.<*> ( x+ Data..:? "CompletedProperties"+ Data..!= Prelude.mempty+ )+ Prelude.<*> ( x+ Data..:? "PendingProperties"+ Data..!= Prelude.mempty+ )+ Prelude.<*> (x Data..:? "StartTime")+ Prelude.<*> (x Data..:? "Status")+ Prelude.<*> (x Data..:? "TotalNumberOfStages")+ )++instance Prelude.Hashable ChangeProgressStatusDetails where+ hashWithSalt _salt ChangeProgressStatusDetails' {..} =+ _salt+ `Prelude.hashWithSalt` changeId+ `Prelude.hashWithSalt` changeProgressStages+ `Prelude.hashWithSalt` completedProperties+ `Prelude.hashWithSalt` pendingProperties+ `Prelude.hashWithSalt` startTime+ `Prelude.hashWithSalt` status+ `Prelude.hashWithSalt` totalNumberOfStages++instance Prelude.NFData ChangeProgressStatusDetails where+ rnf ChangeProgressStatusDetails' {..} =+ Prelude.rnf changeId+ `Prelude.seq` Prelude.rnf changeProgressStages+ `Prelude.seq` Prelude.rnf completedProperties+ `Prelude.seq` Prelude.rnf pendingProperties+ `Prelude.seq` Prelude.rnf startTime+ `Prelude.seq` Prelude.rnf status+ `Prelude.seq` Prelude.rnf totalNumberOfStages
+ gen/Amazonka/OpenSearch/Types/ClusterConfig.hs view
@@ -0,0 +1,247 @@+{-# 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.OpenSearch.Types.ClusterConfig+-- 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.OpenSearch.Types.ClusterConfig where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.ColdStorageOptions+import Amazonka.OpenSearch.Types.OpenSearchPartitionInstanceType+import Amazonka.OpenSearch.Types.OpenSearchWarmPartitionInstanceType+import Amazonka.OpenSearch.Types.ZoneAwarenessConfig+import qualified Amazonka.Prelude as Prelude++-- | Container for the cluster configuration of an OpenSearch Service domain.+-- For more information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/createupdatedomains.html Creating and managing Amazon OpenSearch Service domains>.+--+-- /See:/ 'newClusterConfig' smart constructor.+data ClusterConfig = ClusterConfig'+ { -- | Container for cold storage configuration options.+ coldStorageOptions :: Prelude.Maybe ColdStorageOptions,+ -- | Number of dedicated master nodes in the cluster. This number must be+ -- greater than 1, otherwise you receive a validation exception.+ dedicatedMasterCount :: Prelude.Maybe Prelude.Int,+ -- | Indicates whether dedicated master nodes are enabled for the+ -- cluster.@True@ if the cluster will use a dedicated master node.@False@+ -- if the cluster will not.+ dedicatedMasterEnabled :: Prelude.Maybe Prelude.Bool,+ -- | OpenSearch Service instance type of the dedicated master nodes in the+ -- cluster.+ dedicatedMasterType :: Prelude.Maybe OpenSearchPartitionInstanceType,+ -- | Number of dedicated master nodes in the cluster. This number must be+ -- greater than 1, otherwise you receive a validation exception.+ instanceCount :: Prelude.Maybe Prelude.Int,+ -- | Instance type of data nodes in the cluster.+ instanceType :: Prelude.Maybe OpenSearchPartitionInstanceType,+ -- | The number of warm nodes in the cluster.+ warmCount :: Prelude.Maybe Prelude.Int,+ -- | Whether to enable warm storage for the cluster.+ warmEnabled :: Prelude.Maybe Prelude.Bool,+ -- | The instance type for the cluster\'s warm nodes.+ warmType :: Prelude.Maybe OpenSearchWarmPartitionInstanceType,+ -- | Container for zone awareness configuration options. Only required if+ -- @ZoneAwarenessEnabled@ is @true@.+ zoneAwarenessConfig :: Prelude.Maybe ZoneAwarenessConfig,+ -- | Indicates whether multiple Availability Zones are enabled. For more+ -- information, see+ -- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/managedomains-multiaz.html Configuring a multi-AZ domain in Amazon OpenSearch Service>.+ zoneAwarenessEnabled :: Prelude.Maybe Prelude.Bool+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ClusterConfig' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'coldStorageOptions', 'clusterConfig_coldStorageOptions' - Container for cold storage configuration options.+--+-- 'dedicatedMasterCount', 'clusterConfig_dedicatedMasterCount' - Number of dedicated master nodes in the cluster. This number must be+-- greater than 1, otherwise you receive a validation exception.+--+-- 'dedicatedMasterEnabled', 'clusterConfig_dedicatedMasterEnabled' - Indicates whether dedicated master nodes are enabled for the+-- cluster.@True@ if the cluster will use a dedicated master node.@False@+-- if the cluster will not.+--+-- 'dedicatedMasterType', 'clusterConfig_dedicatedMasterType' - OpenSearch Service instance type of the dedicated master nodes in the+-- cluster.+--+-- 'instanceCount', 'clusterConfig_instanceCount' - Number of dedicated master nodes in the cluster. This number must be+-- greater than 1, otherwise you receive a validation exception.+--+-- 'instanceType', 'clusterConfig_instanceType' - Instance type of data nodes in the cluster.+--+-- 'warmCount', 'clusterConfig_warmCount' - The number of warm nodes in the cluster.+--+-- 'warmEnabled', 'clusterConfig_warmEnabled' - Whether to enable warm storage for the cluster.+--+-- 'warmType', 'clusterConfig_warmType' - The instance type for the cluster\'s warm nodes.+--+-- 'zoneAwarenessConfig', 'clusterConfig_zoneAwarenessConfig' - Container for zone awareness configuration options. Only required if+-- @ZoneAwarenessEnabled@ is @true@.+--+-- 'zoneAwarenessEnabled', 'clusterConfig_zoneAwarenessEnabled' - Indicates whether multiple Availability Zones are enabled. For more+-- information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/managedomains-multiaz.html Configuring a multi-AZ domain in Amazon OpenSearch Service>.+newClusterConfig ::+ ClusterConfig+newClusterConfig =+ ClusterConfig'+ { coldStorageOptions =+ Prelude.Nothing,+ dedicatedMasterCount = Prelude.Nothing,+ dedicatedMasterEnabled = Prelude.Nothing,+ dedicatedMasterType = Prelude.Nothing,+ instanceCount = Prelude.Nothing,+ instanceType = Prelude.Nothing,+ warmCount = Prelude.Nothing,+ warmEnabled = Prelude.Nothing,+ warmType = Prelude.Nothing,+ zoneAwarenessConfig = Prelude.Nothing,+ zoneAwarenessEnabled = Prelude.Nothing+ }++-- | Container for cold storage configuration options.+clusterConfig_coldStorageOptions :: Lens.Lens' ClusterConfig (Prelude.Maybe ColdStorageOptions)+clusterConfig_coldStorageOptions = Lens.lens (\ClusterConfig' {coldStorageOptions} -> coldStorageOptions) (\s@ClusterConfig' {} a -> s {coldStorageOptions = a} :: ClusterConfig)++-- | Number of dedicated master nodes in the cluster. This number must be+-- greater than 1, otherwise you receive a validation exception.+clusterConfig_dedicatedMasterCount :: Lens.Lens' ClusterConfig (Prelude.Maybe Prelude.Int)+clusterConfig_dedicatedMasterCount = Lens.lens (\ClusterConfig' {dedicatedMasterCount} -> dedicatedMasterCount) (\s@ClusterConfig' {} a -> s {dedicatedMasterCount = a} :: ClusterConfig)++-- | Indicates whether dedicated master nodes are enabled for the+-- cluster.@True@ if the cluster will use a dedicated master node.@False@+-- if the cluster will not.+clusterConfig_dedicatedMasterEnabled :: Lens.Lens' ClusterConfig (Prelude.Maybe Prelude.Bool)+clusterConfig_dedicatedMasterEnabled = Lens.lens (\ClusterConfig' {dedicatedMasterEnabled} -> dedicatedMasterEnabled) (\s@ClusterConfig' {} a -> s {dedicatedMasterEnabled = a} :: ClusterConfig)++-- | OpenSearch Service instance type of the dedicated master nodes in the+-- cluster.+clusterConfig_dedicatedMasterType :: Lens.Lens' ClusterConfig (Prelude.Maybe OpenSearchPartitionInstanceType)+clusterConfig_dedicatedMasterType = Lens.lens (\ClusterConfig' {dedicatedMasterType} -> dedicatedMasterType) (\s@ClusterConfig' {} a -> s {dedicatedMasterType = a} :: ClusterConfig)++-- | Number of dedicated master nodes in the cluster. This number must be+-- greater than 1, otherwise you receive a validation exception.+clusterConfig_instanceCount :: Lens.Lens' ClusterConfig (Prelude.Maybe Prelude.Int)+clusterConfig_instanceCount = Lens.lens (\ClusterConfig' {instanceCount} -> instanceCount) (\s@ClusterConfig' {} a -> s {instanceCount = a} :: ClusterConfig)++-- | Instance type of data nodes in the cluster.+clusterConfig_instanceType :: Lens.Lens' ClusterConfig (Prelude.Maybe OpenSearchPartitionInstanceType)+clusterConfig_instanceType = Lens.lens (\ClusterConfig' {instanceType} -> instanceType) (\s@ClusterConfig' {} a -> s {instanceType = a} :: ClusterConfig)++-- | The number of warm nodes in the cluster.+clusterConfig_warmCount :: Lens.Lens' ClusterConfig (Prelude.Maybe Prelude.Int)+clusterConfig_warmCount = Lens.lens (\ClusterConfig' {warmCount} -> warmCount) (\s@ClusterConfig' {} a -> s {warmCount = a} :: ClusterConfig)++-- | Whether to enable warm storage for the cluster.+clusterConfig_warmEnabled :: Lens.Lens' ClusterConfig (Prelude.Maybe Prelude.Bool)+clusterConfig_warmEnabled = Lens.lens (\ClusterConfig' {warmEnabled} -> warmEnabled) (\s@ClusterConfig' {} a -> s {warmEnabled = a} :: ClusterConfig)++-- | The instance type for the cluster\'s warm nodes.+clusterConfig_warmType :: Lens.Lens' ClusterConfig (Prelude.Maybe OpenSearchWarmPartitionInstanceType)+clusterConfig_warmType = Lens.lens (\ClusterConfig' {warmType} -> warmType) (\s@ClusterConfig' {} a -> s {warmType = a} :: ClusterConfig)++-- | Container for zone awareness configuration options. Only required if+-- @ZoneAwarenessEnabled@ is @true@.+clusterConfig_zoneAwarenessConfig :: Lens.Lens' ClusterConfig (Prelude.Maybe ZoneAwarenessConfig)+clusterConfig_zoneAwarenessConfig = Lens.lens (\ClusterConfig' {zoneAwarenessConfig} -> zoneAwarenessConfig) (\s@ClusterConfig' {} a -> s {zoneAwarenessConfig = a} :: ClusterConfig)++-- | Indicates whether multiple Availability Zones are enabled. For more+-- information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/managedomains-multiaz.html Configuring a multi-AZ domain in Amazon OpenSearch Service>.+clusterConfig_zoneAwarenessEnabled :: Lens.Lens' ClusterConfig (Prelude.Maybe Prelude.Bool)+clusterConfig_zoneAwarenessEnabled = Lens.lens (\ClusterConfig' {zoneAwarenessEnabled} -> zoneAwarenessEnabled) (\s@ClusterConfig' {} a -> s {zoneAwarenessEnabled = a} :: ClusterConfig)++instance Data.FromJSON ClusterConfig where+ parseJSON =+ Data.withObject+ "ClusterConfig"+ ( \x ->+ ClusterConfig'+ Prelude.<$> (x Data..:? "ColdStorageOptions")+ Prelude.<*> (x Data..:? "DedicatedMasterCount")+ Prelude.<*> (x Data..:? "DedicatedMasterEnabled")+ Prelude.<*> (x Data..:? "DedicatedMasterType")+ Prelude.<*> (x Data..:? "InstanceCount")+ Prelude.<*> (x Data..:? "InstanceType")+ Prelude.<*> (x Data..:? "WarmCount")+ Prelude.<*> (x Data..:? "WarmEnabled")+ Prelude.<*> (x Data..:? "WarmType")+ Prelude.<*> (x Data..:? "ZoneAwarenessConfig")+ Prelude.<*> (x Data..:? "ZoneAwarenessEnabled")+ )++instance Prelude.Hashable ClusterConfig where+ hashWithSalt _salt ClusterConfig' {..} =+ _salt+ `Prelude.hashWithSalt` coldStorageOptions+ `Prelude.hashWithSalt` dedicatedMasterCount+ `Prelude.hashWithSalt` dedicatedMasterEnabled+ `Prelude.hashWithSalt` dedicatedMasterType+ `Prelude.hashWithSalt` instanceCount+ `Prelude.hashWithSalt` instanceType+ `Prelude.hashWithSalt` warmCount+ `Prelude.hashWithSalt` warmEnabled+ `Prelude.hashWithSalt` warmType+ `Prelude.hashWithSalt` zoneAwarenessConfig+ `Prelude.hashWithSalt` zoneAwarenessEnabled++instance Prelude.NFData ClusterConfig where+ rnf ClusterConfig' {..} =+ Prelude.rnf coldStorageOptions+ `Prelude.seq` Prelude.rnf dedicatedMasterCount+ `Prelude.seq` Prelude.rnf dedicatedMasterEnabled+ `Prelude.seq` Prelude.rnf dedicatedMasterType+ `Prelude.seq` Prelude.rnf instanceCount+ `Prelude.seq` Prelude.rnf instanceType+ `Prelude.seq` Prelude.rnf warmCount+ `Prelude.seq` Prelude.rnf warmEnabled+ `Prelude.seq` Prelude.rnf warmType+ `Prelude.seq` Prelude.rnf zoneAwarenessConfig+ `Prelude.seq` Prelude.rnf zoneAwarenessEnabled++instance Data.ToJSON ClusterConfig where+ toJSON ClusterConfig' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("ColdStorageOptions" Data..=)+ Prelude.<$> coldStorageOptions,+ ("DedicatedMasterCount" Data..=)+ Prelude.<$> dedicatedMasterCount,+ ("DedicatedMasterEnabled" Data..=)+ Prelude.<$> dedicatedMasterEnabled,+ ("DedicatedMasterType" Data..=)+ Prelude.<$> dedicatedMasterType,+ ("InstanceCount" Data..=) Prelude.<$> instanceCount,+ ("InstanceType" Data..=) Prelude.<$> instanceType,+ ("WarmCount" Data..=) Prelude.<$> warmCount,+ ("WarmEnabled" Data..=) Prelude.<$> warmEnabled,+ ("WarmType" Data..=) Prelude.<$> warmType,+ ("ZoneAwarenessConfig" Data..=)+ Prelude.<$> zoneAwarenessConfig,+ ("ZoneAwarenessEnabled" Data..=)+ Prelude.<$> zoneAwarenessEnabled+ ]+ )
+ gen/Amazonka/OpenSearch/Types/ClusterConfigStatus.hs view
@@ -0,0 +1,90 @@+{-# 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.OpenSearch.Types.ClusterConfigStatus+-- 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.OpenSearch.Types.ClusterConfigStatus where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.ClusterConfig+import Amazonka.OpenSearch.Types.OptionStatus+import qualified Amazonka.Prelude as Prelude++-- | The cluster configuration status for a domain.+--+-- /See:/ 'newClusterConfigStatus' smart constructor.+data ClusterConfigStatus = ClusterConfigStatus'+ { -- | Cluster configuration options for the specified domain.+ options :: ClusterConfig,+ -- | The status of cluster configuration options for the specified domain.+ status :: OptionStatus+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ClusterConfigStatus' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'options', 'clusterConfigStatus_options' - Cluster configuration options for the specified domain.+--+-- 'status', 'clusterConfigStatus_status' - The status of cluster configuration options for the specified domain.+newClusterConfigStatus ::+ -- | 'options'+ ClusterConfig ->+ -- | 'status'+ OptionStatus ->+ ClusterConfigStatus+newClusterConfigStatus pOptions_ pStatus_ =+ ClusterConfigStatus'+ { options = pOptions_,+ status = pStatus_+ }++-- | Cluster configuration options for the specified domain.+clusterConfigStatus_options :: Lens.Lens' ClusterConfigStatus ClusterConfig+clusterConfigStatus_options = Lens.lens (\ClusterConfigStatus' {options} -> options) (\s@ClusterConfigStatus' {} a -> s {options = a} :: ClusterConfigStatus)++-- | The status of cluster configuration options for the specified domain.+clusterConfigStatus_status :: Lens.Lens' ClusterConfigStatus OptionStatus+clusterConfigStatus_status = Lens.lens (\ClusterConfigStatus' {status} -> status) (\s@ClusterConfigStatus' {} a -> s {status = a} :: ClusterConfigStatus)++instance Data.FromJSON ClusterConfigStatus where+ parseJSON =+ Data.withObject+ "ClusterConfigStatus"+ ( \x ->+ ClusterConfigStatus'+ Prelude.<$> (x Data..: "Options")+ Prelude.<*> (x Data..: "Status")+ )++instance Prelude.Hashable ClusterConfigStatus where+ hashWithSalt _salt ClusterConfigStatus' {..} =+ _salt+ `Prelude.hashWithSalt` options+ `Prelude.hashWithSalt` status++instance Prelude.NFData ClusterConfigStatus where+ rnf ClusterConfigStatus' {..} =+ Prelude.rnf options+ `Prelude.seq` Prelude.rnf status
+ gen/Amazonka/OpenSearch/Types/CognitoOptions.hs view
@@ -0,0 +1,134 @@+{-# 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.OpenSearch.Types.CognitoOptions+-- 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.OpenSearch.Types.CognitoOptions 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++-- | Container for the parameters required to enable Cognito authentication+-- for an OpenSearch Service domain. For more information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/cognito-auth.html Configuring Amazon Cognito authentication for OpenSearch Dashboards>.+--+-- /See:/ 'newCognitoOptions' smart constructor.+data CognitoOptions = CognitoOptions'+ { -- | Whether to enable or disable Amazon Cognito authentication for+ -- OpenSearch Dashboards.+ enabled :: Prelude.Maybe Prelude.Bool,+ -- | The Amazon Cognito identity pool ID that you want OpenSearch Service to+ -- use for OpenSearch Dashboards authentication.+ identityPoolId :: Prelude.Maybe Prelude.Text,+ -- | The @AmazonOpenSearchServiceCognitoAccess@ role that allows OpenSearch+ -- Service to configure your user pool and identity pool.+ roleArn :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Cognito user pool ID that you want OpenSearch Service to use+ -- for OpenSearch Dashboards authentication.+ userPoolId :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CognitoOptions' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'enabled', 'cognitoOptions_enabled' - Whether to enable or disable Amazon Cognito authentication for+-- OpenSearch Dashboards.+--+-- 'identityPoolId', 'cognitoOptions_identityPoolId' - The Amazon Cognito identity pool ID that you want OpenSearch Service to+-- use for OpenSearch Dashboards authentication.+--+-- 'roleArn', 'cognitoOptions_roleArn' - The @AmazonOpenSearchServiceCognitoAccess@ role that allows OpenSearch+-- Service to configure your user pool and identity pool.+--+-- 'userPoolId', 'cognitoOptions_userPoolId' - The Amazon Cognito user pool ID that you want OpenSearch Service to use+-- for OpenSearch Dashboards authentication.+newCognitoOptions ::+ CognitoOptions+newCognitoOptions =+ CognitoOptions'+ { enabled = Prelude.Nothing,+ identityPoolId = Prelude.Nothing,+ roleArn = Prelude.Nothing,+ userPoolId = Prelude.Nothing+ }++-- | Whether to enable or disable Amazon Cognito authentication for+-- OpenSearch Dashboards.+cognitoOptions_enabled :: Lens.Lens' CognitoOptions (Prelude.Maybe Prelude.Bool)+cognitoOptions_enabled = Lens.lens (\CognitoOptions' {enabled} -> enabled) (\s@CognitoOptions' {} a -> s {enabled = a} :: CognitoOptions)++-- | The Amazon Cognito identity pool ID that you want OpenSearch Service to+-- use for OpenSearch Dashboards authentication.+cognitoOptions_identityPoolId :: Lens.Lens' CognitoOptions (Prelude.Maybe Prelude.Text)+cognitoOptions_identityPoolId = Lens.lens (\CognitoOptions' {identityPoolId} -> identityPoolId) (\s@CognitoOptions' {} a -> s {identityPoolId = a} :: CognitoOptions)++-- | The @AmazonOpenSearchServiceCognitoAccess@ role that allows OpenSearch+-- Service to configure your user pool and identity pool.+cognitoOptions_roleArn :: Lens.Lens' CognitoOptions (Prelude.Maybe Prelude.Text)+cognitoOptions_roleArn = Lens.lens (\CognitoOptions' {roleArn} -> roleArn) (\s@CognitoOptions' {} a -> s {roleArn = a} :: CognitoOptions)++-- | The Amazon Cognito user pool ID that you want OpenSearch Service to use+-- for OpenSearch Dashboards authentication.+cognitoOptions_userPoolId :: Lens.Lens' CognitoOptions (Prelude.Maybe Prelude.Text)+cognitoOptions_userPoolId = Lens.lens (\CognitoOptions' {userPoolId} -> userPoolId) (\s@CognitoOptions' {} a -> s {userPoolId = a} :: CognitoOptions)++instance Data.FromJSON CognitoOptions where+ parseJSON =+ Data.withObject+ "CognitoOptions"+ ( \x ->+ CognitoOptions'+ Prelude.<$> (x Data..:? "Enabled")+ Prelude.<*> (x Data..:? "IdentityPoolId")+ Prelude.<*> (x Data..:? "RoleArn")+ Prelude.<*> (x Data..:? "UserPoolId")+ )++instance Prelude.Hashable CognitoOptions where+ hashWithSalt _salt CognitoOptions' {..} =+ _salt+ `Prelude.hashWithSalt` enabled+ `Prelude.hashWithSalt` identityPoolId+ `Prelude.hashWithSalt` roleArn+ `Prelude.hashWithSalt` userPoolId++instance Prelude.NFData CognitoOptions where+ rnf CognitoOptions' {..} =+ Prelude.rnf enabled+ `Prelude.seq` Prelude.rnf identityPoolId+ `Prelude.seq` Prelude.rnf roleArn+ `Prelude.seq` Prelude.rnf userPoolId++instance Data.ToJSON CognitoOptions where+ toJSON CognitoOptions' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("Enabled" Data..=) Prelude.<$> enabled,+ ("IdentityPoolId" Data..=)+ Prelude.<$> identityPoolId,+ ("RoleArn" Data..=) Prelude.<$> roleArn,+ ("UserPoolId" Data..=) Prelude.<$> userPoolId+ ]+ )
+ gen/Amazonka/OpenSearch/Types/CognitoOptionsStatus.hs view
@@ -0,0 +1,90 @@+{-# 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.OpenSearch.Types.CognitoOptionsStatus+-- 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.OpenSearch.Types.CognitoOptionsStatus where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.CognitoOptions+import Amazonka.OpenSearch.Types.OptionStatus+import qualified Amazonka.Prelude as Prelude++-- | The status of the Cognito options for the specified domain.+--+-- /See:/ 'newCognitoOptionsStatus' smart constructor.+data CognitoOptionsStatus = CognitoOptionsStatus'+ { -- | Cognito options for the specified domain.+ options :: CognitoOptions,+ -- | The status of the Cognito options for the specified domain.+ status :: OptionStatus+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CognitoOptionsStatus' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'options', 'cognitoOptionsStatus_options' - Cognito options for the specified domain.+--+-- 'status', 'cognitoOptionsStatus_status' - The status of the Cognito options for the specified domain.+newCognitoOptionsStatus ::+ -- | 'options'+ CognitoOptions ->+ -- | 'status'+ OptionStatus ->+ CognitoOptionsStatus+newCognitoOptionsStatus pOptions_ pStatus_ =+ CognitoOptionsStatus'+ { options = pOptions_,+ status = pStatus_+ }++-- | Cognito options for the specified domain.+cognitoOptionsStatus_options :: Lens.Lens' CognitoOptionsStatus CognitoOptions+cognitoOptionsStatus_options = Lens.lens (\CognitoOptionsStatus' {options} -> options) (\s@CognitoOptionsStatus' {} a -> s {options = a} :: CognitoOptionsStatus)++-- | The status of the Cognito options for the specified domain.+cognitoOptionsStatus_status :: Lens.Lens' CognitoOptionsStatus OptionStatus+cognitoOptionsStatus_status = Lens.lens (\CognitoOptionsStatus' {status} -> status) (\s@CognitoOptionsStatus' {} a -> s {status = a} :: CognitoOptionsStatus)++instance Data.FromJSON CognitoOptionsStatus where+ parseJSON =+ Data.withObject+ "CognitoOptionsStatus"+ ( \x ->+ CognitoOptionsStatus'+ Prelude.<$> (x Data..: "Options")+ Prelude.<*> (x Data..: "Status")+ )++instance Prelude.Hashable CognitoOptionsStatus where+ hashWithSalt _salt CognitoOptionsStatus' {..} =+ _salt+ `Prelude.hashWithSalt` options+ `Prelude.hashWithSalt` status++instance Prelude.NFData CognitoOptionsStatus where+ rnf CognitoOptionsStatus' {..} =+ Prelude.rnf options+ `Prelude.seq` Prelude.rnf status
+ gen/Amazonka/OpenSearch/Types/ColdStorageOptions.hs view
@@ -0,0 +1,79 @@+{-# 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.OpenSearch.Types.ColdStorageOptions+-- 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.OpenSearch.Types.ColdStorageOptions 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++-- | Container for the parameters required to enable cold storage for an+-- OpenSearch Service domain. For more information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/cold-storage.html Cold storage for Amazon OpenSearch Service>.+--+-- /See:/ 'newColdStorageOptions' smart constructor.+data ColdStorageOptions = ColdStorageOptions'+ { -- | Whether to enable or disable cold storage on the domain.+ enabled :: Prelude.Bool+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ColdStorageOptions' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'enabled', 'coldStorageOptions_enabled' - Whether to enable or disable cold storage on the domain.+newColdStorageOptions ::+ -- | 'enabled'+ Prelude.Bool ->+ ColdStorageOptions+newColdStorageOptions pEnabled_ =+ ColdStorageOptions' {enabled = pEnabled_}++-- | Whether to enable or disable cold storage on the domain.+coldStorageOptions_enabled :: Lens.Lens' ColdStorageOptions Prelude.Bool+coldStorageOptions_enabled = Lens.lens (\ColdStorageOptions' {enabled} -> enabled) (\s@ColdStorageOptions' {} a -> s {enabled = a} :: ColdStorageOptions)++instance Data.FromJSON ColdStorageOptions where+ parseJSON =+ Data.withObject+ "ColdStorageOptions"+ ( \x ->+ ColdStorageOptions'+ Prelude.<$> (x Data..: "Enabled")+ )++instance Prelude.Hashable ColdStorageOptions where+ hashWithSalt _salt ColdStorageOptions' {..} =+ _salt `Prelude.hashWithSalt` enabled++instance Prelude.NFData ColdStorageOptions where+ rnf ColdStorageOptions' {..} = Prelude.rnf enabled++instance Data.ToJSON ColdStorageOptions where+ toJSON ColdStorageOptions' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("Enabled" Data..= enabled)]+ )
+ gen/Amazonka/OpenSearch/Types/CompatibleVersionsMap.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.OpenSearch.Types.CompatibleVersionsMap+-- 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.OpenSearch.Types.CompatibleVersionsMap 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++-- | A map of OpenSearch or Elasticsearch versions and the versions you can+-- upgrade them to.+--+-- /See:/ 'newCompatibleVersionsMap' smart constructor.+data CompatibleVersionsMap = CompatibleVersionsMap'+ { -- | The current version that the OpenSearch Service domain is running.+ sourceVersion :: Prelude.Maybe Prelude.Text,+ -- | The possible versions that you can upgrade the domain to.+ targetVersions :: Prelude.Maybe [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CompatibleVersionsMap' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'sourceVersion', 'compatibleVersionsMap_sourceVersion' - The current version that the OpenSearch Service domain is running.+--+-- 'targetVersions', 'compatibleVersionsMap_targetVersions' - The possible versions that you can upgrade the domain to.+newCompatibleVersionsMap ::+ CompatibleVersionsMap+newCompatibleVersionsMap =+ CompatibleVersionsMap'+ { sourceVersion =+ Prelude.Nothing,+ targetVersions = Prelude.Nothing+ }++-- | The current version that the OpenSearch Service domain is running.+compatibleVersionsMap_sourceVersion :: Lens.Lens' CompatibleVersionsMap (Prelude.Maybe Prelude.Text)+compatibleVersionsMap_sourceVersion = Lens.lens (\CompatibleVersionsMap' {sourceVersion} -> sourceVersion) (\s@CompatibleVersionsMap' {} a -> s {sourceVersion = a} :: CompatibleVersionsMap)++-- | The possible versions that you can upgrade the domain to.+compatibleVersionsMap_targetVersions :: Lens.Lens' CompatibleVersionsMap (Prelude.Maybe [Prelude.Text])+compatibleVersionsMap_targetVersions = Lens.lens (\CompatibleVersionsMap' {targetVersions} -> targetVersions) (\s@CompatibleVersionsMap' {} a -> s {targetVersions = a} :: CompatibleVersionsMap) Prelude.. Lens.mapping Lens.coerced++instance Data.FromJSON CompatibleVersionsMap where+ parseJSON =+ Data.withObject+ "CompatibleVersionsMap"+ ( \x ->+ CompatibleVersionsMap'+ Prelude.<$> (x Data..:? "SourceVersion")+ Prelude.<*> ( x+ Data..:? "TargetVersions"+ Data..!= Prelude.mempty+ )+ )++instance Prelude.Hashable CompatibleVersionsMap where+ hashWithSalt _salt CompatibleVersionsMap' {..} =+ _salt+ `Prelude.hashWithSalt` sourceVersion+ `Prelude.hashWithSalt` targetVersions++instance Prelude.NFData CompatibleVersionsMap where+ rnf CompatibleVersionsMap' {..} =+ Prelude.rnf sourceVersion+ `Prelude.seq` Prelude.rnf targetVersions
+ gen/Amazonka/OpenSearch/Types/DeploymentStatus.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.OpenSearch.Types.DeploymentStatus+-- 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.OpenSearch.Types.DeploymentStatus+ ( DeploymentStatus+ ( ..,+ DeploymentStatus_COMPLETED,+ DeploymentStatus_ELIGIBLE,+ DeploymentStatus_IN_PROGRESS,+ DeploymentStatus_NOT_ELIGIBLE,+ DeploymentStatus_PENDING_UPDATE+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype DeploymentStatus = DeploymentStatus'+ { fromDeploymentStatus ::+ 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 DeploymentStatus_COMPLETED :: DeploymentStatus+pattern DeploymentStatus_COMPLETED = DeploymentStatus' "COMPLETED"++pattern DeploymentStatus_ELIGIBLE :: DeploymentStatus+pattern DeploymentStatus_ELIGIBLE = DeploymentStatus' "ELIGIBLE"++pattern DeploymentStatus_IN_PROGRESS :: DeploymentStatus+pattern DeploymentStatus_IN_PROGRESS = DeploymentStatus' "IN_PROGRESS"++pattern DeploymentStatus_NOT_ELIGIBLE :: DeploymentStatus+pattern DeploymentStatus_NOT_ELIGIBLE = DeploymentStatus' "NOT_ELIGIBLE"++pattern DeploymentStatus_PENDING_UPDATE :: DeploymentStatus+pattern DeploymentStatus_PENDING_UPDATE = DeploymentStatus' "PENDING_UPDATE"++{-# COMPLETE+ DeploymentStatus_COMPLETED,+ DeploymentStatus_ELIGIBLE,+ DeploymentStatus_IN_PROGRESS,+ DeploymentStatus_NOT_ELIGIBLE,+ DeploymentStatus_PENDING_UPDATE,+ DeploymentStatus'+ #-}
+ gen/Amazonka/OpenSearch/Types/DescribePackagesFilter.hs view
@@ -0,0 +1,83 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.OpenSearch.Types.DescribePackagesFilter+-- 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.OpenSearch.Types.DescribePackagesFilter where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.DescribePackagesFilterName+import qualified Amazonka.Prelude as Prelude++-- | A filter to apply to the @DescribePackage@ response.+--+-- /See:/ 'newDescribePackagesFilter' smart constructor.+data DescribePackagesFilter = DescribePackagesFilter'+ { -- | Any field from @PackageDetails@.+ name :: Prelude.Maybe DescribePackagesFilterName,+ -- | A list of values for the specified filter field.+ value :: Prelude.Maybe [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DescribePackagesFilter' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'describePackagesFilter_name' - Any field from @PackageDetails@.+--+-- 'value', 'describePackagesFilter_value' - A list of values for the specified filter field.+newDescribePackagesFilter ::+ DescribePackagesFilter+newDescribePackagesFilter =+ DescribePackagesFilter'+ { name = Prelude.Nothing,+ value = Prelude.Nothing+ }++-- | Any field from @PackageDetails@.+describePackagesFilter_name :: Lens.Lens' DescribePackagesFilter (Prelude.Maybe DescribePackagesFilterName)+describePackagesFilter_name = Lens.lens (\DescribePackagesFilter' {name} -> name) (\s@DescribePackagesFilter' {} a -> s {name = a} :: DescribePackagesFilter)++-- | A list of values for the specified filter field.+describePackagesFilter_value :: Lens.Lens' DescribePackagesFilter (Prelude.Maybe [Prelude.Text])+describePackagesFilter_value = Lens.lens (\DescribePackagesFilter' {value} -> value) (\s@DescribePackagesFilter' {} a -> s {value = a} :: DescribePackagesFilter) Prelude.. Lens.mapping Lens.coerced++instance Prelude.Hashable DescribePackagesFilter where+ hashWithSalt _salt DescribePackagesFilter' {..} =+ _salt+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` value++instance Prelude.NFData DescribePackagesFilter where+ rnf DescribePackagesFilter' {..} =+ Prelude.rnf name `Prelude.seq` Prelude.rnf value++instance Data.ToJSON DescribePackagesFilter where+ toJSON DescribePackagesFilter' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("Name" Data..=) Prelude.<$> name,+ ("Value" Data..=) Prelude.<$> value+ ]+ )
+ gen/Amazonka/OpenSearch/Types/DescribePackagesFilterName.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.OpenSearch.Types.DescribePackagesFilterName+-- 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.OpenSearch.Types.DescribePackagesFilterName+ ( DescribePackagesFilterName+ ( ..,+ DescribePackagesFilterName_PackageID,+ DescribePackagesFilterName_PackageName,+ DescribePackagesFilterName_PackageStatus+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype DescribePackagesFilterName = DescribePackagesFilterName'+ { fromDescribePackagesFilterName ::+ 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 DescribePackagesFilterName_PackageID :: DescribePackagesFilterName+pattern DescribePackagesFilterName_PackageID = DescribePackagesFilterName' "PackageID"++pattern DescribePackagesFilterName_PackageName :: DescribePackagesFilterName+pattern DescribePackagesFilterName_PackageName = DescribePackagesFilterName' "PackageName"++pattern DescribePackagesFilterName_PackageStatus :: DescribePackagesFilterName+pattern DescribePackagesFilterName_PackageStatus = DescribePackagesFilterName' "PackageStatus"++{-# COMPLETE+ DescribePackagesFilterName_PackageID,+ DescribePackagesFilterName_PackageName,+ DescribePackagesFilterName_PackageStatus,+ DescribePackagesFilterName'+ #-}
+ gen/Amazonka/OpenSearch/Types/DomainConfig.hs view
@@ -0,0 +1,273 @@+{-# 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.OpenSearch.Types.DomainConfig+-- 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.OpenSearch.Types.DomainConfig where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.AccessPoliciesStatus+import Amazonka.OpenSearch.Types.AdvancedOptionsStatus+import Amazonka.OpenSearch.Types.AdvancedSecurityOptionsStatus+import Amazonka.OpenSearch.Types.AutoTuneOptionsStatus+import Amazonka.OpenSearch.Types.ChangeProgressDetails+import Amazonka.OpenSearch.Types.ClusterConfigStatus+import Amazonka.OpenSearch.Types.CognitoOptionsStatus+import Amazonka.OpenSearch.Types.DomainEndpointOptionsStatus+import Amazonka.OpenSearch.Types.EBSOptionsStatus+import Amazonka.OpenSearch.Types.EncryptionAtRestOptionsStatus+import Amazonka.OpenSearch.Types.LogPublishingOptionsStatus+import Amazonka.OpenSearch.Types.NodeToNodeEncryptionOptionsStatus+import Amazonka.OpenSearch.Types.SnapshotOptionsStatus+import Amazonka.OpenSearch.Types.VPCDerivedInfoStatus+import Amazonka.OpenSearch.Types.VersionStatus+import qualified Amazonka.Prelude as Prelude++-- | Container for the configuration of an OpenSearch Service domain.+--+-- /See:/ 'newDomainConfig' smart constructor.+data DomainConfig = DomainConfig'+ { -- | Specifies the access policies for the domain.+ accessPolicies :: Prelude.Maybe AccessPoliciesStatus,+ -- | Key-value pairs to specify advanced configuration options. For more+ -- information, see+ -- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/createupdatedomains.html#createdomain-configure-advanced-options Advanced options>.+ advancedOptions :: Prelude.Maybe AdvancedOptionsStatus,+ -- | Container for fine-grained access control settings for the domain.+ advancedSecurityOptions :: Prelude.Maybe AdvancedSecurityOptionsStatus,+ -- | Container for Auto-Tune settings for the domain.+ autoTuneOptions :: Prelude.Maybe AutoTuneOptionsStatus,+ -- | Container for information about the progress of an existing+ -- configuration change.+ changeProgressDetails :: Prelude.Maybe ChangeProgressDetails,+ -- | Container for the cluster configuration of a the domain.+ clusterConfig :: Prelude.Maybe ClusterConfigStatus,+ -- | Container for Amazon Cognito options for the domain.+ cognitoOptions :: Prelude.Maybe CognitoOptionsStatus,+ -- | Additional options for the domain endpoint, such as whether to require+ -- HTTPS for all traffic.+ domainEndpointOptions :: Prelude.Maybe DomainEndpointOptionsStatus,+ -- | Container for EBS options configured for an OpenSearch Service domain.+ eBSOptions :: Prelude.Maybe EBSOptionsStatus,+ -- | Key-value pairs to enable encryption at rest.+ encryptionAtRestOptions :: Prelude.Maybe EncryptionAtRestOptionsStatus,+ -- | The OpenSearch or Elasticsearch version that the domain is running.+ engineVersion :: Prelude.Maybe VersionStatus,+ -- | Key-value pairs to configure slow log publishing.+ logPublishingOptions :: Prelude.Maybe LogPublishingOptionsStatus,+ -- | Whether node-to-node encryption is enabled or disabled.+ nodeToNodeEncryptionOptions :: Prelude.Maybe NodeToNodeEncryptionOptionsStatus,+ -- | DEPRECATED. Container for parameters required to configure automated+ -- snapshots of domain indexes.+ snapshotOptions :: Prelude.Maybe SnapshotOptionsStatus,+ -- | The current VPC options for the domain and the status of any updates to+ -- their configuration.+ vPCOptions :: Prelude.Maybe VPCDerivedInfoStatus+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DomainConfig' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'accessPolicies', 'domainConfig_accessPolicies' - Specifies the access policies for the domain.+--+-- 'advancedOptions', 'domainConfig_advancedOptions' - Key-value pairs to specify advanced configuration options. For more+-- information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/createupdatedomains.html#createdomain-configure-advanced-options Advanced options>.+--+-- 'advancedSecurityOptions', 'domainConfig_advancedSecurityOptions' - Container for fine-grained access control settings for the domain.+--+-- 'autoTuneOptions', 'domainConfig_autoTuneOptions' - Container for Auto-Tune settings for the domain.+--+-- 'changeProgressDetails', 'domainConfig_changeProgressDetails' - Container for information about the progress of an existing+-- configuration change.+--+-- 'clusterConfig', 'domainConfig_clusterConfig' - Container for the cluster configuration of a the domain.+--+-- 'cognitoOptions', 'domainConfig_cognitoOptions' - Container for Amazon Cognito options for the domain.+--+-- 'domainEndpointOptions', 'domainConfig_domainEndpointOptions' - Additional options for the domain endpoint, such as whether to require+-- HTTPS for all traffic.+--+-- 'eBSOptions', 'domainConfig_eBSOptions' - Container for EBS options configured for an OpenSearch Service domain.+--+-- 'encryptionAtRestOptions', 'domainConfig_encryptionAtRestOptions' - Key-value pairs to enable encryption at rest.+--+-- 'engineVersion', 'domainConfig_engineVersion' - The OpenSearch or Elasticsearch version that the domain is running.+--+-- 'logPublishingOptions', 'domainConfig_logPublishingOptions' - Key-value pairs to configure slow log publishing.+--+-- 'nodeToNodeEncryptionOptions', 'domainConfig_nodeToNodeEncryptionOptions' - Whether node-to-node encryption is enabled or disabled.+--+-- 'snapshotOptions', 'domainConfig_snapshotOptions' - DEPRECATED. Container for parameters required to configure automated+-- snapshots of domain indexes.+--+-- 'vPCOptions', 'domainConfig_vPCOptions' - The current VPC options for the domain and the status of any updates to+-- their configuration.+newDomainConfig ::+ DomainConfig+newDomainConfig =+ DomainConfig'+ { accessPolicies = Prelude.Nothing,+ advancedOptions = Prelude.Nothing,+ advancedSecurityOptions = Prelude.Nothing,+ autoTuneOptions = Prelude.Nothing,+ changeProgressDetails = Prelude.Nothing,+ clusterConfig = Prelude.Nothing,+ cognitoOptions = Prelude.Nothing,+ domainEndpointOptions = Prelude.Nothing,+ eBSOptions = Prelude.Nothing,+ encryptionAtRestOptions = Prelude.Nothing,+ engineVersion = Prelude.Nothing,+ logPublishingOptions = Prelude.Nothing,+ nodeToNodeEncryptionOptions = Prelude.Nothing,+ snapshotOptions = Prelude.Nothing,+ vPCOptions = Prelude.Nothing+ }++-- | Specifies the access policies for the domain.+domainConfig_accessPolicies :: Lens.Lens' DomainConfig (Prelude.Maybe AccessPoliciesStatus)+domainConfig_accessPolicies = Lens.lens (\DomainConfig' {accessPolicies} -> accessPolicies) (\s@DomainConfig' {} a -> s {accessPolicies = a} :: DomainConfig)++-- | Key-value pairs to specify advanced configuration options. For more+-- information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/createupdatedomains.html#createdomain-configure-advanced-options Advanced options>.+domainConfig_advancedOptions :: Lens.Lens' DomainConfig (Prelude.Maybe AdvancedOptionsStatus)+domainConfig_advancedOptions = Lens.lens (\DomainConfig' {advancedOptions} -> advancedOptions) (\s@DomainConfig' {} a -> s {advancedOptions = a} :: DomainConfig)++-- | Container for fine-grained access control settings for the domain.+domainConfig_advancedSecurityOptions :: Lens.Lens' DomainConfig (Prelude.Maybe AdvancedSecurityOptionsStatus)+domainConfig_advancedSecurityOptions = Lens.lens (\DomainConfig' {advancedSecurityOptions} -> advancedSecurityOptions) (\s@DomainConfig' {} a -> s {advancedSecurityOptions = a} :: DomainConfig)++-- | Container for Auto-Tune settings for the domain.+domainConfig_autoTuneOptions :: Lens.Lens' DomainConfig (Prelude.Maybe AutoTuneOptionsStatus)+domainConfig_autoTuneOptions = Lens.lens (\DomainConfig' {autoTuneOptions} -> autoTuneOptions) (\s@DomainConfig' {} a -> s {autoTuneOptions = a} :: DomainConfig)++-- | Container for information about the progress of an existing+-- configuration change.+domainConfig_changeProgressDetails :: Lens.Lens' DomainConfig (Prelude.Maybe ChangeProgressDetails)+domainConfig_changeProgressDetails = Lens.lens (\DomainConfig' {changeProgressDetails} -> changeProgressDetails) (\s@DomainConfig' {} a -> s {changeProgressDetails = a} :: DomainConfig)++-- | Container for the cluster configuration of a the domain.+domainConfig_clusterConfig :: Lens.Lens' DomainConfig (Prelude.Maybe ClusterConfigStatus)+domainConfig_clusterConfig = Lens.lens (\DomainConfig' {clusterConfig} -> clusterConfig) (\s@DomainConfig' {} a -> s {clusterConfig = a} :: DomainConfig)++-- | Container for Amazon Cognito options for the domain.+domainConfig_cognitoOptions :: Lens.Lens' DomainConfig (Prelude.Maybe CognitoOptionsStatus)+domainConfig_cognitoOptions = Lens.lens (\DomainConfig' {cognitoOptions} -> cognitoOptions) (\s@DomainConfig' {} a -> s {cognitoOptions = a} :: DomainConfig)++-- | Additional options for the domain endpoint, such as whether to require+-- HTTPS for all traffic.+domainConfig_domainEndpointOptions :: Lens.Lens' DomainConfig (Prelude.Maybe DomainEndpointOptionsStatus)+domainConfig_domainEndpointOptions = Lens.lens (\DomainConfig' {domainEndpointOptions} -> domainEndpointOptions) (\s@DomainConfig' {} a -> s {domainEndpointOptions = a} :: DomainConfig)++-- | Container for EBS options configured for an OpenSearch Service domain.+domainConfig_eBSOptions :: Lens.Lens' DomainConfig (Prelude.Maybe EBSOptionsStatus)+domainConfig_eBSOptions = Lens.lens (\DomainConfig' {eBSOptions} -> eBSOptions) (\s@DomainConfig' {} a -> s {eBSOptions = a} :: DomainConfig)++-- | Key-value pairs to enable encryption at rest.+domainConfig_encryptionAtRestOptions :: Lens.Lens' DomainConfig (Prelude.Maybe EncryptionAtRestOptionsStatus)+domainConfig_encryptionAtRestOptions = Lens.lens (\DomainConfig' {encryptionAtRestOptions} -> encryptionAtRestOptions) (\s@DomainConfig' {} a -> s {encryptionAtRestOptions = a} :: DomainConfig)++-- | The OpenSearch or Elasticsearch version that the domain is running.+domainConfig_engineVersion :: Lens.Lens' DomainConfig (Prelude.Maybe VersionStatus)+domainConfig_engineVersion = Lens.lens (\DomainConfig' {engineVersion} -> engineVersion) (\s@DomainConfig' {} a -> s {engineVersion = a} :: DomainConfig)++-- | Key-value pairs to configure slow log publishing.+domainConfig_logPublishingOptions :: Lens.Lens' DomainConfig (Prelude.Maybe LogPublishingOptionsStatus)+domainConfig_logPublishingOptions = Lens.lens (\DomainConfig' {logPublishingOptions} -> logPublishingOptions) (\s@DomainConfig' {} a -> s {logPublishingOptions = a} :: DomainConfig)++-- | Whether node-to-node encryption is enabled or disabled.+domainConfig_nodeToNodeEncryptionOptions :: Lens.Lens' DomainConfig (Prelude.Maybe NodeToNodeEncryptionOptionsStatus)+domainConfig_nodeToNodeEncryptionOptions = Lens.lens (\DomainConfig' {nodeToNodeEncryptionOptions} -> nodeToNodeEncryptionOptions) (\s@DomainConfig' {} a -> s {nodeToNodeEncryptionOptions = a} :: DomainConfig)++-- | DEPRECATED. Container for parameters required to configure automated+-- snapshots of domain indexes.+domainConfig_snapshotOptions :: Lens.Lens' DomainConfig (Prelude.Maybe SnapshotOptionsStatus)+domainConfig_snapshotOptions = Lens.lens (\DomainConfig' {snapshotOptions} -> snapshotOptions) (\s@DomainConfig' {} a -> s {snapshotOptions = a} :: DomainConfig)++-- | The current VPC options for the domain and the status of any updates to+-- their configuration.+domainConfig_vPCOptions :: Lens.Lens' DomainConfig (Prelude.Maybe VPCDerivedInfoStatus)+domainConfig_vPCOptions = Lens.lens (\DomainConfig' {vPCOptions} -> vPCOptions) (\s@DomainConfig' {} a -> s {vPCOptions = a} :: DomainConfig)++instance Data.FromJSON DomainConfig where+ parseJSON =+ Data.withObject+ "DomainConfig"+ ( \x ->+ DomainConfig'+ Prelude.<$> (x Data..:? "AccessPolicies")+ Prelude.<*> (x Data..:? "AdvancedOptions")+ Prelude.<*> (x Data..:? "AdvancedSecurityOptions")+ Prelude.<*> (x Data..:? "AutoTuneOptions")+ Prelude.<*> (x Data..:? "ChangeProgressDetails")+ Prelude.<*> (x Data..:? "ClusterConfig")+ Prelude.<*> (x Data..:? "CognitoOptions")+ Prelude.<*> (x Data..:? "DomainEndpointOptions")+ Prelude.<*> (x Data..:? "EBSOptions")+ Prelude.<*> (x Data..:? "EncryptionAtRestOptions")+ Prelude.<*> (x Data..:? "EngineVersion")+ Prelude.<*> (x Data..:? "LogPublishingOptions")+ Prelude.<*> (x Data..:? "NodeToNodeEncryptionOptions")+ Prelude.<*> (x Data..:? "SnapshotOptions")+ Prelude.<*> (x Data..:? "VPCOptions")+ )++instance Prelude.Hashable DomainConfig where+ hashWithSalt _salt DomainConfig' {..} =+ _salt+ `Prelude.hashWithSalt` accessPolicies+ `Prelude.hashWithSalt` advancedOptions+ `Prelude.hashWithSalt` advancedSecurityOptions+ `Prelude.hashWithSalt` autoTuneOptions+ `Prelude.hashWithSalt` changeProgressDetails+ `Prelude.hashWithSalt` clusterConfig+ `Prelude.hashWithSalt` cognitoOptions+ `Prelude.hashWithSalt` domainEndpointOptions+ `Prelude.hashWithSalt` eBSOptions+ `Prelude.hashWithSalt` encryptionAtRestOptions+ `Prelude.hashWithSalt` engineVersion+ `Prelude.hashWithSalt` logPublishingOptions+ `Prelude.hashWithSalt` nodeToNodeEncryptionOptions+ `Prelude.hashWithSalt` snapshotOptions+ `Prelude.hashWithSalt` vPCOptions++instance Prelude.NFData DomainConfig where+ rnf DomainConfig' {..} =+ Prelude.rnf accessPolicies+ `Prelude.seq` Prelude.rnf advancedOptions+ `Prelude.seq` Prelude.rnf advancedSecurityOptions+ `Prelude.seq` Prelude.rnf autoTuneOptions+ `Prelude.seq` Prelude.rnf changeProgressDetails+ `Prelude.seq` Prelude.rnf clusterConfig+ `Prelude.seq` Prelude.rnf cognitoOptions+ `Prelude.seq` Prelude.rnf domainEndpointOptions+ `Prelude.seq` Prelude.rnf eBSOptions+ `Prelude.seq` Prelude.rnf encryptionAtRestOptions+ `Prelude.seq` Prelude.rnf engineVersion+ `Prelude.seq` Prelude.rnf logPublishingOptions+ `Prelude.seq` Prelude.rnf nodeToNodeEncryptionOptions+ `Prelude.seq` Prelude.rnf snapshotOptions+ `Prelude.seq` Prelude.rnf vPCOptions
+ gen/Amazonka/OpenSearch/Types/DomainEndpointOptions.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.OpenSearch.Types.DomainEndpointOptions+-- 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.OpenSearch.Types.DomainEndpointOptions where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.TLSSecurityPolicy+import qualified Amazonka.Prelude as Prelude++-- | Options to configure a custom endpoint for an OpenSearch Service domain.+--+-- /See:/ 'newDomainEndpointOptions' smart constructor.+data DomainEndpointOptions = DomainEndpointOptions'+ { -- | The fully qualified URL for the custom endpoint.+ customEndpoint :: Prelude.Maybe Prelude.Text,+ -- | The ARN for your security certificate, managed in Amazon Web Services+ -- Certificate Manager (ACM).+ customEndpointCertificateArn :: Prelude.Maybe Prelude.Text,+ -- | Whether to enable a custom endpoint for the domain.+ customEndpointEnabled :: Prelude.Maybe Prelude.Bool,+ -- | True to require that all traffic to the domain arrive over HTTPS.+ enforceHTTPS :: Prelude.Maybe Prelude.Bool,+ -- | Specify the TLS security policy to apply to the HTTPS endpoint of the+ -- domain.+ --+ -- Can be one of the following values:+ --+ -- - __Policy-Min-TLS-1-0-2019-07:__ TLS security policy which supports+ -- TLS version 1.0 and higher.+ --+ -- - __Policy-Min-TLS-1-2-2019-07:__ TLS security policy which supports+ -- only TLS version 1.2+ tLSSecurityPolicy :: Prelude.Maybe TLSSecurityPolicy+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DomainEndpointOptions' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'customEndpoint', 'domainEndpointOptions_customEndpoint' - The fully qualified URL for the custom endpoint.+--+-- 'customEndpointCertificateArn', 'domainEndpointOptions_customEndpointCertificateArn' - The ARN for your security certificate, managed in Amazon Web Services+-- Certificate Manager (ACM).+--+-- 'customEndpointEnabled', 'domainEndpointOptions_customEndpointEnabled' - Whether to enable a custom endpoint for the domain.+--+-- 'enforceHTTPS', 'domainEndpointOptions_enforceHTTPS' - True to require that all traffic to the domain arrive over HTTPS.+--+-- 'tLSSecurityPolicy', 'domainEndpointOptions_tLSSecurityPolicy' - Specify the TLS security policy to apply to the HTTPS endpoint of the+-- domain.+--+-- Can be one of the following values:+--+-- - __Policy-Min-TLS-1-0-2019-07:__ TLS security policy which supports+-- TLS version 1.0 and higher.+--+-- - __Policy-Min-TLS-1-2-2019-07:__ TLS security policy which supports+-- only TLS version 1.2+newDomainEndpointOptions ::+ DomainEndpointOptions+newDomainEndpointOptions =+ DomainEndpointOptions'+ { customEndpoint =+ Prelude.Nothing,+ customEndpointCertificateArn = Prelude.Nothing,+ customEndpointEnabled = Prelude.Nothing,+ enforceHTTPS = Prelude.Nothing,+ tLSSecurityPolicy = Prelude.Nothing+ }++-- | The fully qualified URL for the custom endpoint.+domainEndpointOptions_customEndpoint :: Lens.Lens' DomainEndpointOptions (Prelude.Maybe Prelude.Text)+domainEndpointOptions_customEndpoint = Lens.lens (\DomainEndpointOptions' {customEndpoint} -> customEndpoint) (\s@DomainEndpointOptions' {} a -> s {customEndpoint = a} :: DomainEndpointOptions)++-- | The ARN for your security certificate, managed in Amazon Web Services+-- Certificate Manager (ACM).+domainEndpointOptions_customEndpointCertificateArn :: Lens.Lens' DomainEndpointOptions (Prelude.Maybe Prelude.Text)+domainEndpointOptions_customEndpointCertificateArn = Lens.lens (\DomainEndpointOptions' {customEndpointCertificateArn} -> customEndpointCertificateArn) (\s@DomainEndpointOptions' {} a -> s {customEndpointCertificateArn = a} :: DomainEndpointOptions)++-- | Whether to enable a custom endpoint for the domain.+domainEndpointOptions_customEndpointEnabled :: Lens.Lens' DomainEndpointOptions (Prelude.Maybe Prelude.Bool)+domainEndpointOptions_customEndpointEnabled = Lens.lens (\DomainEndpointOptions' {customEndpointEnabled} -> customEndpointEnabled) (\s@DomainEndpointOptions' {} a -> s {customEndpointEnabled = a} :: DomainEndpointOptions)++-- | True to require that all traffic to the domain arrive over HTTPS.+domainEndpointOptions_enforceHTTPS :: Lens.Lens' DomainEndpointOptions (Prelude.Maybe Prelude.Bool)+domainEndpointOptions_enforceHTTPS = Lens.lens (\DomainEndpointOptions' {enforceHTTPS} -> enforceHTTPS) (\s@DomainEndpointOptions' {} a -> s {enforceHTTPS = a} :: DomainEndpointOptions)++-- | Specify the TLS security policy to apply to the HTTPS endpoint of the+-- domain.+--+-- Can be one of the following values:+--+-- - __Policy-Min-TLS-1-0-2019-07:__ TLS security policy which supports+-- TLS version 1.0 and higher.+--+-- - __Policy-Min-TLS-1-2-2019-07:__ TLS security policy which supports+-- only TLS version 1.2+domainEndpointOptions_tLSSecurityPolicy :: Lens.Lens' DomainEndpointOptions (Prelude.Maybe TLSSecurityPolicy)+domainEndpointOptions_tLSSecurityPolicy = Lens.lens (\DomainEndpointOptions' {tLSSecurityPolicy} -> tLSSecurityPolicy) (\s@DomainEndpointOptions' {} a -> s {tLSSecurityPolicy = a} :: DomainEndpointOptions)++instance Data.FromJSON DomainEndpointOptions where+ parseJSON =+ Data.withObject+ "DomainEndpointOptions"+ ( \x ->+ DomainEndpointOptions'+ Prelude.<$> (x Data..:? "CustomEndpoint")+ Prelude.<*> (x Data..:? "CustomEndpointCertificateArn")+ Prelude.<*> (x Data..:? "CustomEndpointEnabled")+ Prelude.<*> (x Data..:? "EnforceHTTPS")+ Prelude.<*> (x Data..:? "TLSSecurityPolicy")+ )++instance Prelude.Hashable DomainEndpointOptions where+ hashWithSalt _salt DomainEndpointOptions' {..} =+ _salt+ `Prelude.hashWithSalt` customEndpoint+ `Prelude.hashWithSalt` customEndpointCertificateArn+ `Prelude.hashWithSalt` customEndpointEnabled+ `Prelude.hashWithSalt` enforceHTTPS+ `Prelude.hashWithSalt` tLSSecurityPolicy++instance Prelude.NFData DomainEndpointOptions where+ rnf DomainEndpointOptions' {..} =+ Prelude.rnf customEndpoint+ `Prelude.seq` Prelude.rnf customEndpointCertificateArn+ `Prelude.seq` Prelude.rnf customEndpointEnabled+ `Prelude.seq` Prelude.rnf enforceHTTPS+ `Prelude.seq` Prelude.rnf tLSSecurityPolicy++instance Data.ToJSON DomainEndpointOptions where+ toJSON DomainEndpointOptions' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("CustomEndpoint" Data..=)+ Prelude.<$> customEndpoint,+ ("CustomEndpointCertificateArn" Data..=)+ Prelude.<$> customEndpointCertificateArn,+ ("CustomEndpointEnabled" Data..=)+ Prelude.<$> customEndpointEnabled,+ ("EnforceHTTPS" Data..=) Prelude.<$> enforceHTTPS,+ ("TLSSecurityPolicy" Data..=)+ Prelude.<$> tLSSecurityPolicy+ ]+ )
+ gen/Amazonka/OpenSearch/Types/DomainEndpointOptionsStatus.hs view
@@ -0,0 +1,90 @@+{-# 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.OpenSearch.Types.DomainEndpointOptionsStatus+-- 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.OpenSearch.Types.DomainEndpointOptionsStatus where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.DomainEndpointOptions+import Amazonka.OpenSearch.Types.OptionStatus+import qualified Amazonka.Prelude as Prelude++-- | The configured endpoint options for a domain and their current status.+--+-- /See:/ 'newDomainEndpointOptionsStatus' smart constructor.+data DomainEndpointOptionsStatus = DomainEndpointOptionsStatus'+ { -- | Options to configure the endpoint for a domain.+ options :: DomainEndpointOptions,+ -- | The status of the endpoint options for a domain.+ status :: OptionStatus+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DomainEndpointOptionsStatus' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'options', 'domainEndpointOptionsStatus_options' - Options to configure the endpoint for a domain.+--+-- 'status', 'domainEndpointOptionsStatus_status' - The status of the endpoint options for a domain.+newDomainEndpointOptionsStatus ::+ -- | 'options'+ DomainEndpointOptions ->+ -- | 'status'+ OptionStatus ->+ DomainEndpointOptionsStatus+newDomainEndpointOptionsStatus pOptions_ pStatus_ =+ DomainEndpointOptionsStatus'+ { options = pOptions_,+ status = pStatus_+ }++-- | Options to configure the endpoint for a domain.+domainEndpointOptionsStatus_options :: Lens.Lens' DomainEndpointOptionsStatus DomainEndpointOptions+domainEndpointOptionsStatus_options = Lens.lens (\DomainEndpointOptionsStatus' {options} -> options) (\s@DomainEndpointOptionsStatus' {} a -> s {options = a} :: DomainEndpointOptionsStatus)++-- | The status of the endpoint options for a domain.+domainEndpointOptionsStatus_status :: Lens.Lens' DomainEndpointOptionsStatus OptionStatus+domainEndpointOptionsStatus_status = Lens.lens (\DomainEndpointOptionsStatus' {status} -> status) (\s@DomainEndpointOptionsStatus' {} a -> s {status = a} :: DomainEndpointOptionsStatus)++instance Data.FromJSON DomainEndpointOptionsStatus where+ parseJSON =+ Data.withObject+ "DomainEndpointOptionsStatus"+ ( \x ->+ DomainEndpointOptionsStatus'+ Prelude.<$> (x Data..: "Options")+ Prelude.<*> (x Data..: "Status")+ )++instance Prelude.Hashable DomainEndpointOptionsStatus where+ hashWithSalt _salt DomainEndpointOptionsStatus' {..} =+ _salt+ `Prelude.hashWithSalt` options+ `Prelude.hashWithSalt` status++instance Prelude.NFData DomainEndpointOptionsStatus where+ rnf DomainEndpointOptionsStatus' {..} =+ Prelude.rnf options+ `Prelude.seq` Prelude.rnf status
+ gen/Amazonka/OpenSearch/Types/DomainInfo.hs view
@@ -0,0 +1,91 @@+{-# 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.OpenSearch.Types.DomainInfo+-- 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.OpenSearch.Types.DomainInfo where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.EngineType+import qualified Amazonka.Prelude as Prelude++-- | Information about an OpenSearch Service domain.+--+-- /See:/ 'newDomainInfo' smart constructor.+data DomainInfo = DomainInfo'+ { -- | Name of the domain.+ domainName :: Prelude.Maybe Prelude.Text,+ -- | The type of search engine that the domain is running.@OpenSearch@ for an+ -- OpenSearch engine, or @Elasticsearch@ for a legacy Elasticsearch OSS+ -- engine.+ engineType :: Prelude.Maybe EngineType+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DomainInfo' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domainName', 'domainInfo_domainName' - Name of the domain.+--+-- 'engineType', 'domainInfo_engineType' - The type of search engine that the domain is running.@OpenSearch@ for an+-- OpenSearch engine, or @Elasticsearch@ for a legacy Elasticsearch OSS+-- engine.+newDomainInfo ::+ DomainInfo+newDomainInfo =+ DomainInfo'+ { domainName = Prelude.Nothing,+ engineType = Prelude.Nothing+ }++-- | Name of the domain.+domainInfo_domainName :: Lens.Lens' DomainInfo (Prelude.Maybe Prelude.Text)+domainInfo_domainName = Lens.lens (\DomainInfo' {domainName} -> domainName) (\s@DomainInfo' {} a -> s {domainName = a} :: DomainInfo)++-- | The type of search engine that the domain is running.@OpenSearch@ for an+-- OpenSearch engine, or @Elasticsearch@ for a legacy Elasticsearch OSS+-- engine.+domainInfo_engineType :: Lens.Lens' DomainInfo (Prelude.Maybe EngineType)+domainInfo_engineType = Lens.lens (\DomainInfo' {engineType} -> engineType) (\s@DomainInfo' {} a -> s {engineType = a} :: DomainInfo)++instance Data.FromJSON DomainInfo where+ parseJSON =+ Data.withObject+ "DomainInfo"+ ( \x ->+ DomainInfo'+ Prelude.<$> (x Data..:? "DomainName")+ Prelude.<*> (x Data..:? "EngineType")+ )++instance Prelude.Hashable DomainInfo where+ hashWithSalt _salt DomainInfo' {..} =+ _salt+ `Prelude.hashWithSalt` domainName+ `Prelude.hashWithSalt` engineType++instance Prelude.NFData DomainInfo where+ rnf DomainInfo' {..} =+ Prelude.rnf domainName+ `Prelude.seq` Prelude.rnf engineType
+ gen/Amazonka/OpenSearch/Types/DomainInformationContainer.hs view
@@ -0,0 +1,82 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.OpenSearch.Types.DomainInformationContainer+-- 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.OpenSearch.Types.DomainInformationContainer where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.AWSDomainInformation+import qualified Amazonka.Prelude as Prelude++-- | Container for information about an OpenSearch Service domain.+--+-- /See:/ 'newDomainInformationContainer' smart constructor.+data DomainInformationContainer = DomainInformationContainer'+ { -- | Information about an Amazon OpenSearch Service domain.+ aWSDomainInformation :: Prelude.Maybe AWSDomainInformation+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DomainInformationContainer' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'aWSDomainInformation', 'domainInformationContainer_aWSDomainInformation' - Information about an Amazon OpenSearch Service domain.+newDomainInformationContainer ::+ DomainInformationContainer+newDomainInformationContainer =+ DomainInformationContainer'+ { aWSDomainInformation =+ Prelude.Nothing+ }++-- | Information about an Amazon OpenSearch Service domain.+domainInformationContainer_aWSDomainInformation :: Lens.Lens' DomainInformationContainer (Prelude.Maybe AWSDomainInformation)+domainInformationContainer_aWSDomainInformation = Lens.lens (\DomainInformationContainer' {aWSDomainInformation} -> aWSDomainInformation) (\s@DomainInformationContainer' {} a -> s {aWSDomainInformation = a} :: DomainInformationContainer)++instance Data.FromJSON DomainInformationContainer where+ parseJSON =+ Data.withObject+ "DomainInformationContainer"+ ( \x ->+ DomainInformationContainer'+ Prelude.<$> (x Data..:? "AWSDomainInformation")+ )++instance Prelude.Hashable DomainInformationContainer where+ hashWithSalt _salt DomainInformationContainer' {..} =+ _salt `Prelude.hashWithSalt` aWSDomainInformation++instance Prelude.NFData DomainInformationContainer where+ rnf DomainInformationContainer' {..} =+ Prelude.rnf aWSDomainInformation++instance Data.ToJSON DomainInformationContainer where+ toJSON DomainInformationContainer' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("AWSDomainInformation" Data..=)+ Prelude.<$> aWSDomainInformation+ ]+ )
+ gen/Amazonka/OpenSearch/Types/DomainPackageDetails.hs view
@@ -0,0 +1,179 @@+{-# 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.OpenSearch.Types.DomainPackageDetails+-- 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.OpenSearch.Types.DomainPackageDetails where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.DomainPackageStatus+import Amazonka.OpenSearch.Types.ErrorDetails+import Amazonka.OpenSearch.Types.PackageType+import qualified Amazonka.Prelude as Prelude++-- | Information about a package that is associated with a domain. For more+-- information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/custom-packages.html Custom packages for Amazon OpenSearch Service>.+--+-- /See:/ 'newDomainPackageDetails' smart constructor.+data DomainPackageDetails = DomainPackageDetails'+ { -- | Name of the domain that the package is associated with.+ domainName :: Prelude.Maybe Prelude.Text,+ -- | State of the association.+ domainPackageStatus :: Prelude.Maybe DomainPackageStatus,+ -- | Additional information if the package is in an error state. Null+ -- otherwise.+ errorDetails :: Prelude.Maybe ErrorDetails,+ -- | Timestamp of the most recent update to the package association status.+ lastUpdated :: Prelude.Maybe Data.POSIX,+ -- | Internal ID of the package.+ packageID :: Prelude.Maybe Prelude.Text,+ -- | User-specified name of the package.+ packageName :: Prelude.Maybe Prelude.Text,+ -- | The type of package.+ packageType :: Prelude.Maybe PackageType,+ -- | The current version of the package.+ packageVersion :: Prelude.Maybe Prelude.Text,+ -- | Denotes the location of the package on the OpenSearch Service cluster+ -- nodes. It\'s the same as @synonym_path@ for dictionary files.+ referencePath :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DomainPackageDetails' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domainName', 'domainPackageDetails_domainName' - Name of the domain that the package is associated with.+--+-- 'domainPackageStatus', 'domainPackageDetails_domainPackageStatus' - State of the association.+--+-- 'errorDetails', 'domainPackageDetails_errorDetails' - Additional information if the package is in an error state. Null+-- otherwise.+--+-- 'lastUpdated', 'domainPackageDetails_lastUpdated' - Timestamp of the most recent update to the package association status.+--+-- 'packageID', 'domainPackageDetails_packageID' - Internal ID of the package.+--+-- 'packageName', 'domainPackageDetails_packageName' - User-specified name of the package.+--+-- 'packageType', 'domainPackageDetails_packageType' - The type of package.+--+-- 'packageVersion', 'domainPackageDetails_packageVersion' - The current version of the package.+--+-- 'referencePath', 'domainPackageDetails_referencePath' - Denotes the location of the package on the OpenSearch Service cluster+-- nodes. It\'s the same as @synonym_path@ for dictionary files.+newDomainPackageDetails ::+ DomainPackageDetails+newDomainPackageDetails =+ DomainPackageDetails'+ { domainName = Prelude.Nothing,+ domainPackageStatus = Prelude.Nothing,+ errorDetails = Prelude.Nothing,+ lastUpdated = Prelude.Nothing,+ packageID = Prelude.Nothing,+ packageName = Prelude.Nothing,+ packageType = Prelude.Nothing,+ packageVersion = Prelude.Nothing,+ referencePath = Prelude.Nothing+ }++-- | Name of the domain that the package is associated with.+domainPackageDetails_domainName :: Lens.Lens' DomainPackageDetails (Prelude.Maybe Prelude.Text)+domainPackageDetails_domainName = Lens.lens (\DomainPackageDetails' {domainName} -> domainName) (\s@DomainPackageDetails' {} a -> s {domainName = a} :: DomainPackageDetails)++-- | State of the association.+domainPackageDetails_domainPackageStatus :: Lens.Lens' DomainPackageDetails (Prelude.Maybe DomainPackageStatus)+domainPackageDetails_domainPackageStatus = Lens.lens (\DomainPackageDetails' {domainPackageStatus} -> domainPackageStatus) (\s@DomainPackageDetails' {} a -> s {domainPackageStatus = a} :: DomainPackageDetails)++-- | Additional information if the package is in an error state. Null+-- otherwise.+domainPackageDetails_errorDetails :: Lens.Lens' DomainPackageDetails (Prelude.Maybe ErrorDetails)+domainPackageDetails_errorDetails = Lens.lens (\DomainPackageDetails' {errorDetails} -> errorDetails) (\s@DomainPackageDetails' {} a -> s {errorDetails = a} :: DomainPackageDetails)++-- | Timestamp of the most recent update to the package association status.+domainPackageDetails_lastUpdated :: Lens.Lens' DomainPackageDetails (Prelude.Maybe Prelude.UTCTime)+domainPackageDetails_lastUpdated = Lens.lens (\DomainPackageDetails' {lastUpdated} -> lastUpdated) (\s@DomainPackageDetails' {} a -> s {lastUpdated = a} :: DomainPackageDetails) Prelude.. Lens.mapping Data._Time++-- | Internal ID of the package.+domainPackageDetails_packageID :: Lens.Lens' DomainPackageDetails (Prelude.Maybe Prelude.Text)+domainPackageDetails_packageID = Lens.lens (\DomainPackageDetails' {packageID} -> packageID) (\s@DomainPackageDetails' {} a -> s {packageID = a} :: DomainPackageDetails)++-- | User-specified name of the package.+domainPackageDetails_packageName :: Lens.Lens' DomainPackageDetails (Prelude.Maybe Prelude.Text)+domainPackageDetails_packageName = Lens.lens (\DomainPackageDetails' {packageName} -> packageName) (\s@DomainPackageDetails' {} a -> s {packageName = a} :: DomainPackageDetails)++-- | The type of package.+domainPackageDetails_packageType :: Lens.Lens' DomainPackageDetails (Prelude.Maybe PackageType)+domainPackageDetails_packageType = Lens.lens (\DomainPackageDetails' {packageType} -> packageType) (\s@DomainPackageDetails' {} a -> s {packageType = a} :: DomainPackageDetails)++-- | The current version of the package.+domainPackageDetails_packageVersion :: Lens.Lens' DomainPackageDetails (Prelude.Maybe Prelude.Text)+domainPackageDetails_packageVersion = Lens.lens (\DomainPackageDetails' {packageVersion} -> packageVersion) (\s@DomainPackageDetails' {} a -> s {packageVersion = a} :: DomainPackageDetails)++-- | Denotes the location of the package on the OpenSearch Service cluster+-- nodes. It\'s the same as @synonym_path@ for dictionary files.+domainPackageDetails_referencePath :: Lens.Lens' DomainPackageDetails (Prelude.Maybe Prelude.Text)+domainPackageDetails_referencePath = Lens.lens (\DomainPackageDetails' {referencePath} -> referencePath) (\s@DomainPackageDetails' {} a -> s {referencePath = a} :: DomainPackageDetails)++instance Data.FromJSON DomainPackageDetails where+ parseJSON =+ Data.withObject+ "DomainPackageDetails"+ ( \x ->+ DomainPackageDetails'+ Prelude.<$> (x Data..:? "DomainName")+ Prelude.<*> (x Data..:? "DomainPackageStatus")+ Prelude.<*> (x Data..:? "ErrorDetails")+ Prelude.<*> (x Data..:? "LastUpdated")+ Prelude.<*> (x Data..:? "PackageID")+ Prelude.<*> (x Data..:? "PackageName")+ Prelude.<*> (x Data..:? "PackageType")+ Prelude.<*> (x Data..:? "PackageVersion")+ Prelude.<*> (x Data..:? "ReferencePath")+ )++instance Prelude.Hashable DomainPackageDetails where+ hashWithSalt _salt DomainPackageDetails' {..} =+ _salt+ `Prelude.hashWithSalt` domainName+ `Prelude.hashWithSalt` domainPackageStatus+ `Prelude.hashWithSalt` errorDetails+ `Prelude.hashWithSalt` lastUpdated+ `Prelude.hashWithSalt` packageID+ `Prelude.hashWithSalt` packageName+ `Prelude.hashWithSalt` packageType+ `Prelude.hashWithSalt` packageVersion+ `Prelude.hashWithSalt` referencePath++instance Prelude.NFData DomainPackageDetails where+ rnf DomainPackageDetails' {..} =+ Prelude.rnf domainName+ `Prelude.seq` Prelude.rnf domainPackageStatus+ `Prelude.seq` Prelude.rnf errorDetails+ `Prelude.seq` Prelude.rnf lastUpdated+ `Prelude.seq` Prelude.rnf packageID+ `Prelude.seq` Prelude.rnf packageName+ `Prelude.seq` Prelude.rnf packageType+ `Prelude.seq` Prelude.rnf packageVersion+ `Prelude.seq` Prelude.rnf referencePath
+ gen/Amazonka/OpenSearch/Types/DomainPackageStatus.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.OpenSearch.Types.DomainPackageStatus+-- 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.OpenSearch.Types.DomainPackageStatus+ ( DomainPackageStatus+ ( ..,+ DomainPackageStatus_ACTIVE,+ DomainPackageStatus_ASSOCIATING,+ DomainPackageStatus_ASSOCIATION_FAILED,+ DomainPackageStatus_DISSOCIATING,+ DomainPackageStatus_DISSOCIATION_FAILED+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype DomainPackageStatus = DomainPackageStatus'+ { fromDomainPackageStatus ::+ 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 DomainPackageStatus_ACTIVE :: DomainPackageStatus+pattern DomainPackageStatus_ACTIVE = DomainPackageStatus' "ACTIVE"++pattern DomainPackageStatus_ASSOCIATING :: DomainPackageStatus+pattern DomainPackageStatus_ASSOCIATING = DomainPackageStatus' "ASSOCIATING"++pattern DomainPackageStatus_ASSOCIATION_FAILED :: DomainPackageStatus+pattern DomainPackageStatus_ASSOCIATION_FAILED = DomainPackageStatus' "ASSOCIATION_FAILED"++pattern DomainPackageStatus_DISSOCIATING :: DomainPackageStatus+pattern DomainPackageStatus_DISSOCIATING = DomainPackageStatus' "DISSOCIATING"++pattern DomainPackageStatus_DISSOCIATION_FAILED :: DomainPackageStatus+pattern DomainPackageStatus_DISSOCIATION_FAILED = DomainPackageStatus' "DISSOCIATION_FAILED"++{-# COMPLETE+ DomainPackageStatus_ACTIVE,+ DomainPackageStatus_ASSOCIATING,+ DomainPackageStatus_ASSOCIATION_FAILED,+ DomainPackageStatus_DISSOCIATING,+ DomainPackageStatus_DISSOCIATION_FAILED,+ DomainPackageStatus'+ #-}
+ gen/Amazonka/OpenSearch/Types/DomainStatus.hs view
@@ -0,0 +1,445 @@+{-# 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.OpenSearch.Types.DomainStatus+-- 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.OpenSearch.Types.DomainStatus where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.AdvancedSecurityOptions+import Amazonka.OpenSearch.Types.AutoTuneOptionsOutput+import Amazonka.OpenSearch.Types.ChangeProgressDetails+import Amazonka.OpenSearch.Types.ClusterConfig+import Amazonka.OpenSearch.Types.CognitoOptions+import Amazonka.OpenSearch.Types.DomainEndpointOptions+import Amazonka.OpenSearch.Types.EBSOptions+import Amazonka.OpenSearch.Types.EncryptionAtRestOptions+import Amazonka.OpenSearch.Types.LogPublishingOption+import Amazonka.OpenSearch.Types.LogType+import Amazonka.OpenSearch.Types.NodeToNodeEncryptionOptions+import Amazonka.OpenSearch.Types.ServiceSoftwareOptions+import Amazonka.OpenSearch.Types.SnapshotOptions+import Amazonka.OpenSearch.Types.VPCDerivedInfo+import qualified Amazonka.Prelude as Prelude++-- | The current status of an OpenSearch Service domain.+--+-- /See:/ 'newDomainStatus' smart constructor.+data DomainStatus = DomainStatus'+ { -- | Identity and Access Management (IAM) policy document specifying the+ -- access policies for the domain.+ accessPolicies :: Prelude.Maybe Prelude.Text,+ -- | Key-value pairs that specify advanced configuration options.+ advancedOptions :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | Settings for fine-grained access control.+ advancedSecurityOptions :: Prelude.Maybe AdvancedSecurityOptions,+ -- | Auto-Tune settings for the domain.+ autoTuneOptions :: Prelude.Maybe AutoTuneOptionsOutput,+ -- | Information about a configuration change happening on the domain.+ changeProgressDetails :: Prelude.Maybe ChangeProgressDetails,+ -- | Key-value pairs to configure Amazon Cognito authentication for+ -- OpenSearch Dashboards.+ cognitoOptions :: Prelude.Maybe CognitoOptions,+ -- | Creation status of an OpenSearch Service domain. True if domain creation+ -- is complete. False if domain creation is still in progress.+ created :: Prelude.Maybe Prelude.Bool,+ -- | Deletion status of an OpenSearch Service domain. True if domain deletion+ -- is complete. False if domain deletion is still in progress. Once+ -- deletion is complete, the status of the domain is no longer returned.+ deleted :: Prelude.Maybe Prelude.Bool,+ -- | Additional options for the domain endpoint, such as whether to require+ -- HTTPS for all traffic.+ domainEndpointOptions :: Prelude.Maybe DomainEndpointOptions,+ -- | Container for EBS-based storage settings for the domain.+ eBSOptions :: Prelude.Maybe EBSOptions,+ -- | Encryption at rest settings for the domain.+ encryptionAtRestOptions :: Prelude.Maybe EncryptionAtRestOptions,+ -- | Domain-specific endpoint used to submit index, search, and data upload+ -- requests to the domain.+ endpoint :: Prelude.Maybe Prelude.Text,+ -- | The key-value pair that exists if the OpenSearch Service domain uses VPC+ -- endpoints.. Example @key, value@:+ -- @\'vpc\',\'vpc-endpoint-h2dsd34efgyghrtguk5gt6j2foh4.us-east-1.es.amazonaws.com\'@.+ endpoints :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | Version of OpenSearch or Elasticsearch that the domain is running, in+ -- the format @Elasticsearch_X.Y@ or @OpenSearch_X.Y@.+ engineVersion :: Prelude.Maybe Prelude.Text,+ -- | Log publishing options for the domain.+ logPublishingOptions :: Prelude.Maybe (Prelude.HashMap LogType LogPublishingOption),+ -- | Whether node-to-node encryption is enabled or disabled.+ nodeToNodeEncryptionOptions :: Prelude.Maybe NodeToNodeEncryptionOptions,+ -- | The status of the domain configuration. True if OpenSearch Service is+ -- processing configuration changes. False if the configuration is active.+ processing :: Prelude.Maybe Prelude.Bool,+ -- | The current status of the domain\'s service software.+ serviceSoftwareOptions :: Prelude.Maybe ServiceSoftwareOptions,+ -- | DEPRECATED. Container for parameters required to configure automated+ -- snapshots of domain indexes.+ snapshotOptions :: Prelude.Maybe SnapshotOptions,+ -- | The status of a domain version upgrade to a new version of OpenSearch or+ -- Elasticsearch. True if OpenSearch Service is in the process of a version+ -- upgrade. False if the configuration is active.+ upgradeProcessing :: Prelude.Maybe Prelude.Bool,+ -- | The VPC configuration for the domain.+ vPCOptions :: Prelude.Maybe VPCDerivedInfo,+ -- | Unique identifier for the domain.+ domainId :: Prelude.Text,+ -- | Name of the domain. Domain names are unique across all domains owned by+ -- the same account within an Amazon Web Services Region.+ domainName :: Prelude.Text,+ -- | The Amazon Resource Name (ARN) of the domain. For more information, see+ -- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html IAM identifiers>+ -- in the /AWS Identity and Access Management User Guide/.+ arn :: Prelude.Text,+ -- | Container for the cluster configuration of the domain.+ clusterConfig :: ClusterConfig+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DomainStatus' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'accessPolicies', 'domainStatus_accessPolicies' - Identity and Access Management (IAM) policy document specifying the+-- access policies for the domain.+--+-- 'advancedOptions', 'domainStatus_advancedOptions' - Key-value pairs that specify advanced configuration options.+--+-- 'advancedSecurityOptions', 'domainStatus_advancedSecurityOptions' - Settings for fine-grained access control.+--+-- 'autoTuneOptions', 'domainStatus_autoTuneOptions' - Auto-Tune settings for the domain.+--+-- 'changeProgressDetails', 'domainStatus_changeProgressDetails' - Information about a configuration change happening on the domain.+--+-- 'cognitoOptions', 'domainStatus_cognitoOptions' - Key-value pairs to configure Amazon Cognito authentication for+-- OpenSearch Dashboards.+--+-- 'created', 'domainStatus_created' - Creation status of an OpenSearch Service domain. True if domain creation+-- is complete. False if domain creation is still in progress.+--+-- 'deleted', 'domainStatus_deleted' - Deletion status of an OpenSearch Service domain. True if domain deletion+-- is complete. False if domain deletion is still in progress. Once+-- deletion is complete, the status of the domain is no longer returned.+--+-- 'domainEndpointOptions', 'domainStatus_domainEndpointOptions' - Additional options for the domain endpoint, such as whether to require+-- HTTPS for all traffic.+--+-- 'eBSOptions', 'domainStatus_eBSOptions' - Container for EBS-based storage settings for the domain.+--+-- 'encryptionAtRestOptions', 'domainStatus_encryptionAtRestOptions' - Encryption at rest settings for the domain.+--+-- 'endpoint', 'domainStatus_endpoint' - Domain-specific endpoint used to submit index, search, and data upload+-- requests to the domain.+--+-- 'endpoints', 'domainStatus_endpoints' - The key-value pair that exists if the OpenSearch Service domain uses VPC+-- endpoints.. Example @key, value@:+-- @\'vpc\',\'vpc-endpoint-h2dsd34efgyghrtguk5gt6j2foh4.us-east-1.es.amazonaws.com\'@.+--+-- 'engineVersion', 'domainStatus_engineVersion' - Version of OpenSearch or Elasticsearch that the domain is running, in+-- the format @Elasticsearch_X.Y@ or @OpenSearch_X.Y@.+--+-- 'logPublishingOptions', 'domainStatus_logPublishingOptions' - Log publishing options for the domain.+--+-- 'nodeToNodeEncryptionOptions', 'domainStatus_nodeToNodeEncryptionOptions' - Whether node-to-node encryption is enabled or disabled.+--+-- 'processing', 'domainStatus_processing' - The status of the domain configuration. True if OpenSearch Service is+-- processing configuration changes. False if the configuration is active.+--+-- 'serviceSoftwareOptions', 'domainStatus_serviceSoftwareOptions' - The current status of the domain\'s service software.+--+-- 'snapshotOptions', 'domainStatus_snapshotOptions' - DEPRECATED. Container for parameters required to configure automated+-- snapshots of domain indexes.+--+-- 'upgradeProcessing', 'domainStatus_upgradeProcessing' - The status of a domain version upgrade to a new version of OpenSearch or+-- Elasticsearch. True if OpenSearch Service is in the process of a version+-- upgrade. False if the configuration is active.+--+-- 'vPCOptions', 'domainStatus_vPCOptions' - The VPC configuration for the domain.+--+-- 'domainId', 'domainStatus_domainId' - Unique identifier for the domain.+--+-- 'domainName', 'domainStatus_domainName' - Name of the domain. Domain names are unique across all domains owned by+-- the same account within an Amazon Web Services Region.+--+-- 'arn', 'domainStatus_arn' - The Amazon Resource Name (ARN) of the domain. For more information, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html IAM identifiers>+-- in the /AWS Identity and Access Management User Guide/.+--+-- 'clusterConfig', 'domainStatus_clusterConfig' - Container for the cluster configuration of the domain.+newDomainStatus ::+ -- | 'domainId'+ Prelude.Text ->+ -- | 'domainName'+ Prelude.Text ->+ -- | 'arn'+ Prelude.Text ->+ -- | 'clusterConfig'+ ClusterConfig ->+ DomainStatus+newDomainStatus+ pDomainId_+ pDomainName_+ pARN_+ pClusterConfig_ =+ DomainStatus'+ { accessPolicies = Prelude.Nothing,+ advancedOptions = Prelude.Nothing,+ advancedSecurityOptions = Prelude.Nothing,+ autoTuneOptions = Prelude.Nothing,+ changeProgressDetails = Prelude.Nothing,+ cognitoOptions = Prelude.Nothing,+ created = Prelude.Nothing,+ deleted = Prelude.Nothing,+ domainEndpointOptions = Prelude.Nothing,+ eBSOptions = Prelude.Nothing,+ encryptionAtRestOptions = Prelude.Nothing,+ endpoint = Prelude.Nothing,+ endpoints = Prelude.Nothing,+ engineVersion = Prelude.Nothing,+ logPublishingOptions = Prelude.Nothing,+ nodeToNodeEncryptionOptions = Prelude.Nothing,+ processing = Prelude.Nothing,+ serviceSoftwareOptions = Prelude.Nothing,+ snapshotOptions = Prelude.Nothing,+ upgradeProcessing = Prelude.Nothing,+ vPCOptions = Prelude.Nothing,+ domainId = pDomainId_,+ domainName = pDomainName_,+ arn = pARN_,+ clusterConfig = pClusterConfig_+ }++-- | Identity and Access Management (IAM) policy document specifying the+-- access policies for the domain.+domainStatus_accessPolicies :: Lens.Lens' DomainStatus (Prelude.Maybe Prelude.Text)+domainStatus_accessPolicies = Lens.lens (\DomainStatus' {accessPolicies} -> accessPolicies) (\s@DomainStatus' {} a -> s {accessPolicies = a} :: DomainStatus)++-- | Key-value pairs that specify advanced configuration options.+domainStatus_advancedOptions :: Lens.Lens' DomainStatus (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+domainStatus_advancedOptions = Lens.lens (\DomainStatus' {advancedOptions} -> advancedOptions) (\s@DomainStatus' {} a -> s {advancedOptions = a} :: DomainStatus) Prelude.. Lens.mapping Lens.coerced++-- | Settings for fine-grained access control.+domainStatus_advancedSecurityOptions :: Lens.Lens' DomainStatus (Prelude.Maybe AdvancedSecurityOptions)+domainStatus_advancedSecurityOptions = Lens.lens (\DomainStatus' {advancedSecurityOptions} -> advancedSecurityOptions) (\s@DomainStatus' {} a -> s {advancedSecurityOptions = a} :: DomainStatus)++-- | Auto-Tune settings for the domain.+domainStatus_autoTuneOptions :: Lens.Lens' DomainStatus (Prelude.Maybe AutoTuneOptionsOutput)+domainStatus_autoTuneOptions = Lens.lens (\DomainStatus' {autoTuneOptions} -> autoTuneOptions) (\s@DomainStatus' {} a -> s {autoTuneOptions = a} :: DomainStatus)++-- | Information about a configuration change happening on the domain.+domainStatus_changeProgressDetails :: Lens.Lens' DomainStatus (Prelude.Maybe ChangeProgressDetails)+domainStatus_changeProgressDetails = Lens.lens (\DomainStatus' {changeProgressDetails} -> changeProgressDetails) (\s@DomainStatus' {} a -> s {changeProgressDetails = a} :: DomainStatus)++-- | Key-value pairs to configure Amazon Cognito authentication for+-- OpenSearch Dashboards.+domainStatus_cognitoOptions :: Lens.Lens' DomainStatus (Prelude.Maybe CognitoOptions)+domainStatus_cognitoOptions = Lens.lens (\DomainStatus' {cognitoOptions} -> cognitoOptions) (\s@DomainStatus' {} a -> s {cognitoOptions = a} :: DomainStatus)++-- | Creation status of an OpenSearch Service domain. True if domain creation+-- is complete. False if domain creation is still in progress.+domainStatus_created :: Lens.Lens' DomainStatus (Prelude.Maybe Prelude.Bool)+domainStatus_created = Lens.lens (\DomainStatus' {created} -> created) (\s@DomainStatus' {} a -> s {created = a} :: DomainStatus)++-- | Deletion status of an OpenSearch Service domain. True if domain deletion+-- is complete. False if domain deletion is still in progress. Once+-- deletion is complete, the status of the domain is no longer returned.+domainStatus_deleted :: Lens.Lens' DomainStatus (Prelude.Maybe Prelude.Bool)+domainStatus_deleted = Lens.lens (\DomainStatus' {deleted} -> deleted) (\s@DomainStatus' {} a -> s {deleted = a} :: DomainStatus)++-- | Additional options for the domain endpoint, such as whether to require+-- HTTPS for all traffic.+domainStatus_domainEndpointOptions :: Lens.Lens' DomainStatus (Prelude.Maybe DomainEndpointOptions)+domainStatus_domainEndpointOptions = Lens.lens (\DomainStatus' {domainEndpointOptions} -> domainEndpointOptions) (\s@DomainStatus' {} a -> s {domainEndpointOptions = a} :: DomainStatus)++-- | Container for EBS-based storage settings for the domain.+domainStatus_eBSOptions :: Lens.Lens' DomainStatus (Prelude.Maybe EBSOptions)+domainStatus_eBSOptions = Lens.lens (\DomainStatus' {eBSOptions} -> eBSOptions) (\s@DomainStatus' {} a -> s {eBSOptions = a} :: DomainStatus)++-- | Encryption at rest settings for the domain.+domainStatus_encryptionAtRestOptions :: Lens.Lens' DomainStatus (Prelude.Maybe EncryptionAtRestOptions)+domainStatus_encryptionAtRestOptions = Lens.lens (\DomainStatus' {encryptionAtRestOptions} -> encryptionAtRestOptions) (\s@DomainStatus' {} a -> s {encryptionAtRestOptions = a} :: DomainStatus)++-- | Domain-specific endpoint used to submit index, search, and data upload+-- requests to the domain.+domainStatus_endpoint :: Lens.Lens' DomainStatus (Prelude.Maybe Prelude.Text)+domainStatus_endpoint = Lens.lens (\DomainStatus' {endpoint} -> endpoint) (\s@DomainStatus' {} a -> s {endpoint = a} :: DomainStatus)++-- | The key-value pair that exists if the OpenSearch Service domain uses VPC+-- endpoints.. Example @key, value@:+-- @\'vpc\',\'vpc-endpoint-h2dsd34efgyghrtguk5gt6j2foh4.us-east-1.es.amazonaws.com\'@.+domainStatus_endpoints :: Lens.Lens' DomainStatus (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+domainStatus_endpoints = Lens.lens (\DomainStatus' {endpoints} -> endpoints) (\s@DomainStatus' {} a -> s {endpoints = a} :: DomainStatus) Prelude.. Lens.mapping Lens.coerced++-- | Version of OpenSearch or Elasticsearch that the domain is running, in+-- the format @Elasticsearch_X.Y@ or @OpenSearch_X.Y@.+domainStatus_engineVersion :: Lens.Lens' DomainStatus (Prelude.Maybe Prelude.Text)+domainStatus_engineVersion = Lens.lens (\DomainStatus' {engineVersion} -> engineVersion) (\s@DomainStatus' {} a -> s {engineVersion = a} :: DomainStatus)++-- | Log publishing options for the domain.+domainStatus_logPublishingOptions :: Lens.Lens' DomainStatus (Prelude.Maybe (Prelude.HashMap LogType LogPublishingOption))+domainStatus_logPublishingOptions = Lens.lens (\DomainStatus' {logPublishingOptions} -> logPublishingOptions) (\s@DomainStatus' {} a -> s {logPublishingOptions = a} :: DomainStatus) Prelude.. Lens.mapping Lens.coerced++-- | Whether node-to-node encryption is enabled or disabled.+domainStatus_nodeToNodeEncryptionOptions :: Lens.Lens' DomainStatus (Prelude.Maybe NodeToNodeEncryptionOptions)+domainStatus_nodeToNodeEncryptionOptions = Lens.lens (\DomainStatus' {nodeToNodeEncryptionOptions} -> nodeToNodeEncryptionOptions) (\s@DomainStatus' {} a -> s {nodeToNodeEncryptionOptions = a} :: DomainStatus)++-- | The status of the domain configuration. True if OpenSearch Service is+-- processing configuration changes. False if the configuration is active.+domainStatus_processing :: Lens.Lens' DomainStatus (Prelude.Maybe Prelude.Bool)+domainStatus_processing = Lens.lens (\DomainStatus' {processing} -> processing) (\s@DomainStatus' {} a -> s {processing = a} :: DomainStatus)++-- | The current status of the domain\'s service software.+domainStatus_serviceSoftwareOptions :: Lens.Lens' DomainStatus (Prelude.Maybe ServiceSoftwareOptions)+domainStatus_serviceSoftwareOptions = Lens.lens (\DomainStatus' {serviceSoftwareOptions} -> serviceSoftwareOptions) (\s@DomainStatus' {} a -> s {serviceSoftwareOptions = a} :: DomainStatus)++-- | DEPRECATED. Container for parameters required to configure automated+-- snapshots of domain indexes.+domainStatus_snapshotOptions :: Lens.Lens' DomainStatus (Prelude.Maybe SnapshotOptions)+domainStatus_snapshotOptions = Lens.lens (\DomainStatus' {snapshotOptions} -> snapshotOptions) (\s@DomainStatus' {} a -> s {snapshotOptions = a} :: DomainStatus)++-- | The status of a domain version upgrade to a new version of OpenSearch or+-- Elasticsearch. True if OpenSearch Service is in the process of a version+-- upgrade. False if the configuration is active.+domainStatus_upgradeProcessing :: Lens.Lens' DomainStatus (Prelude.Maybe Prelude.Bool)+domainStatus_upgradeProcessing = Lens.lens (\DomainStatus' {upgradeProcessing} -> upgradeProcessing) (\s@DomainStatus' {} a -> s {upgradeProcessing = a} :: DomainStatus)++-- | The VPC configuration for the domain.+domainStatus_vPCOptions :: Lens.Lens' DomainStatus (Prelude.Maybe VPCDerivedInfo)+domainStatus_vPCOptions = Lens.lens (\DomainStatus' {vPCOptions} -> vPCOptions) (\s@DomainStatus' {} a -> s {vPCOptions = a} :: DomainStatus)++-- | Unique identifier for the domain.+domainStatus_domainId :: Lens.Lens' DomainStatus Prelude.Text+domainStatus_domainId = Lens.lens (\DomainStatus' {domainId} -> domainId) (\s@DomainStatus' {} a -> s {domainId = a} :: DomainStatus)++-- | Name of the domain. Domain names are unique across all domains owned by+-- the same account within an Amazon Web Services Region.+domainStatus_domainName :: Lens.Lens' DomainStatus Prelude.Text+domainStatus_domainName = Lens.lens (\DomainStatus' {domainName} -> domainName) (\s@DomainStatus' {} a -> s {domainName = a} :: DomainStatus)++-- | The Amazon Resource Name (ARN) of the domain. For more information, see+-- <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html IAM identifiers>+-- in the /AWS Identity and Access Management User Guide/.+domainStatus_arn :: Lens.Lens' DomainStatus Prelude.Text+domainStatus_arn = Lens.lens (\DomainStatus' {arn} -> arn) (\s@DomainStatus' {} a -> s {arn = a} :: DomainStatus)++-- | Container for the cluster configuration of the domain.+domainStatus_clusterConfig :: Lens.Lens' DomainStatus ClusterConfig+domainStatus_clusterConfig = Lens.lens (\DomainStatus' {clusterConfig} -> clusterConfig) (\s@DomainStatus' {} a -> s {clusterConfig = a} :: DomainStatus)++instance Data.FromJSON DomainStatus where+ parseJSON =+ Data.withObject+ "DomainStatus"+ ( \x ->+ DomainStatus'+ Prelude.<$> (x Data..:? "AccessPolicies")+ Prelude.<*> ( x+ Data..:? "AdvancedOptions"+ Data..!= Prelude.mempty+ )+ Prelude.<*> (x Data..:? "AdvancedSecurityOptions")+ Prelude.<*> (x Data..:? "AutoTuneOptions")+ Prelude.<*> (x Data..:? "ChangeProgressDetails")+ Prelude.<*> (x Data..:? "CognitoOptions")+ Prelude.<*> (x Data..:? "Created")+ Prelude.<*> (x Data..:? "Deleted")+ Prelude.<*> (x Data..:? "DomainEndpointOptions")+ Prelude.<*> (x Data..:? "EBSOptions")+ Prelude.<*> (x Data..:? "EncryptionAtRestOptions")+ Prelude.<*> (x Data..:? "Endpoint")+ Prelude.<*> (x Data..:? "Endpoints" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "EngineVersion")+ Prelude.<*> ( x+ Data..:? "LogPublishingOptions"+ Data..!= Prelude.mempty+ )+ Prelude.<*> (x Data..:? "NodeToNodeEncryptionOptions")+ Prelude.<*> (x Data..:? "Processing")+ Prelude.<*> (x Data..:? "ServiceSoftwareOptions")+ Prelude.<*> (x Data..:? "SnapshotOptions")+ Prelude.<*> (x Data..:? "UpgradeProcessing")+ Prelude.<*> (x Data..:? "VPCOptions")+ Prelude.<*> (x Data..: "DomainId")+ Prelude.<*> (x Data..: "DomainName")+ Prelude.<*> (x Data..: "ARN")+ Prelude.<*> (x Data..: "ClusterConfig")+ )++instance Prelude.Hashable DomainStatus where+ hashWithSalt _salt DomainStatus' {..} =+ _salt+ `Prelude.hashWithSalt` accessPolicies+ `Prelude.hashWithSalt` advancedOptions+ `Prelude.hashWithSalt` advancedSecurityOptions+ `Prelude.hashWithSalt` autoTuneOptions+ `Prelude.hashWithSalt` changeProgressDetails+ `Prelude.hashWithSalt` cognitoOptions+ `Prelude.hashWithSalt` created+ `Prelude.hashWithSalt` deleted+ `Prelude.hashWithSalt` domainEndpointOptions+ `Prelude.hashWithSalt` eBSOptions+ `Prelude.hashWithSalt` encryptionAtRestOptions+ `Prelude.hashWithSalt` endpoint+ `Prelude.hashWithSalt` endpoints+ `Prelude.hashWithSalt` engineVersion+ `Prelude.hashWithSalt` logPublishingOptions+ `Prelude.hashWithSalt` nodeToNodeEncryptionOptions+ `Prelude.hashWithSalt` processing+ `Prelude.hashWithSalt` serviceSoftwareOptions+ `Prelude.hashWithSalt` snapshotOptions+ `Prelude.hashWithSalt` upgradeProcessing+ `Prelude.hashWithSalt` vPCOptions+ `Prelude.hashWithSalt` domainId+ `Prelude.hashWithSalt` domainName+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` clusterConfig++instance Prelude.NFData DomainStatus where+ rnf DomainStatus' {..} =+ Prelude.rnf accessPolicies+ `Prelude.seq` Prelude.rnf advancedOptions+ `Prelude.seq` Prelude.rnf advancedSecurityOptions+ `Prelude.seq` Prelude.rnf autoTuneOptions+ `Prelude.seq` Prelude.rnf changeProgressDetails+ `Prelude.seq` Prelude.rnf cognitoOptions+ `Prelude.seq` Prelude.rnf created+ `Prelude.seq` Prelude.rnf deleted+ `Prelude.seq` Prelude.rnf domainEndpointOptions+ `Prelude.seq` Prelude.rnf eBSOptions+ `Prelude.seq` Prelude.rnf encryptionAtRestOptions+ `Prelude.seq` Prelude.rnf endpoint+ `Prelude.seq` Prelude.rnf endpoints+ `Prelude.seq` Prelude.rnf engineVersion+ `Prelude.seq` Prelude.rnf logPublishingOptions+ `Prelude.seq` Prelude.rnf+ nodeToNodeEncryptionOptions+ `Prelude.seq` Prelude.rnf processing+ `Prelude.seq` Prelude.rnf serviceSoftwareOptions+ `Prelude.seq` Prelude.rnf snapshotOptions+ `Prelude.seq` Prelude.rnf upgradeProcessing+ `Prelude.seq` Prelude.rnf vPCOptions+ `Prelude.seq` Prelude.rnf domainId+ `Prelude.seq` Prelude.rnf domainName+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf+ clusterConfig
+ gen/Amazonka/OpenSearch/Types/DryRunResults.hs view
@@ -0,0 +1,117 @@+{-# 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.OpenSearch.Types.DryRunResults+-- 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.OpenSearch.Types.DryRunResults 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++-- | Results of a dry run performed in an update domain request.+--+-- /See:/ 'newDryRunResults' smart constructor.+data DryRunResults = DryRunResults'+ { -- | Specifies the way in which OpenSearch Service will apply an update.+ -- Possible values are:+ --+ -- - __Blue\/Green__ - The update requires a blue\/green deployment.+ --+ -- - __DynamicUpdate__ - No blue\/green deployment required+ --+ -- - __Undetermined__ - The domain is in the middle of an update and+ -- can\'t predict the deployment type. Try again after the update is+ -- complete.+ --+ -- - __None__ - The request doesn\'t include any configuration changes.+ deploymentType :: Prelude.Maybe Prelude.Text,+ -- | A message corresponding to the deployment type.+ message :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DryRunResults' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'deploymentType', 'dryRunResults_deploymentType' - Specifies the way in which OpenSearch Service will apply an update.+-- Possible values are:+--+-- - __Blue\/Green__ - The update requires a blue\/green deployment.+--+-- - __DynamicUpdate__ - No blue\/green deployment required+--+-- - __Undetermined__ - The domain is in the middle of an update and+-- can\'t predict the deployment type. Try again after the update is+-- complete.+--+-- - __None__ - The request doesn\'t include any configuration changes.+--+-- 'message', 'dryRunResults_message' - A message corresponding to the deployment type.+newDryRunResults ::+ DryRunResults+newDryRunResults =+ DryRunResults'+ { deploymentType = Prelude.Nothing,+ message = Prelude.Nothing+ }++-- | Specifies the way in which OpenSearch Service will apply an update.+-- Possible values are:+--+-- - __Blue\/Green__ - The update requires a blue\/green deployment.+--+-- - __DynamicUpdate__ - No blue\/green deployment required+--+-- - __Undetermined__ - The domain is in the middle of an update and+-- can\'t predict the deployment type. Try again after the update is+-- complete.+--+-- - __None__ - The request doesn\'t include any configuration changes.+dryRunResults_deploymentType :: Lens.Lens' DryRunResults (Prelude.Maybe Prelude.Text)+dryRunResults_deploymentType = Lens.lens (\DryRunResults' {deploymentType} -> deploymentType) (\s@DryRunResults' {} a -> s {deploymentType = a} :: DryRunResults)++-- | A message corresponding to the deployment type.+dryRunResults_message :: Lens.Lens' DryRunResults (Prelude.Maybe Prelude.Text)+dryRunResults_message = Lens.lens (\DryRunResults' {message} -> message) (\s@DryRunResults' {} a -> s {message = a} :: DryRunResults)++instance Data.FromJSON DryRunResults where+ parseJSON =+ Data.withObject+ "DryRunResults"+ ( \x ->+ DryRunResults'+ Prelude.<$> (x Data..:? "DeploymentType")+ Prelude.<*> (x Data..:? "Message")+ )++instance Prelude.Hashable DryRunResults where+ hashWithSalt _salt DryRunResults' {..} =+ _salt+ `Prelude.hashWithSalt` deploymentType+ `Prelude.hashWithSalt` message++instance Prelude.NFData DryRunResults where+ rnf DryRunResults' {..} =+ Prelude.rnf deploymentType+ `Prelude.seq` Prelude.rnf message
+ gen/Amazonka/OpenSearch/Types/Duration.hs view
@@ -0,0 +1,94 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.OpenSearch.Types.Duration+-- 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.OpenSearch.Types.Duration where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.TimeUnit+import qualified Amazonka.Prelude as Prelude++-- | The duration of a maintenance schedule. For more information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/auto-tune.html Auto-Tune for Amazon OpenSearch Service>.+--+-- /See:/ 'newDuration' smart constructor.+data Duration = Duration'+ { -- | The unit of measurement for the duration of a maintenance schedule.+ unit :: Prelude.Maybe TimeUnit,+ -- | Integer to specify the value of a maintenance schedule duration.+ value :: Prelude.Maybe Prelude.Natural+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Duration' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'unit', 'duration_unit' - The unit of measurement for the duration of a maintenance schedule.+--+-- 'value', 'duration_value' - Integer to specify the value of a maintenance schedule duration.+newDuration ::+ Duration+newDuration =+ Duration'+ { unit = Prelude.Nothing,+ value = Prelude.Nothing+ }++-- | The unit of measurement for the duration of a maintenance schedule.+duration_unit :: Lens.Lens' Duration (Prelude.Maybe TimeUnit)+duration_unit = Lens.lens (\Duration' {unit} -> unit) (\s@Duration' {} a -> s {unit = a} :: Duration)++-- | Integer to specify the value of a maintenance schedule duration.+duration_value :: Lens.Lens' Duration (Prelude.Maybe Prelude.Natural)+duration_value = Lens.lens (\Duration' {value} -> value) (\s@Duration' {} a -> s {value = a} :: Duration)++instance Data.FromJSON Duration where+ parseJSON =+ Data.withObject+ "Duration"+ ( \x ->+ Duration'+ Prelude.<$> (x Data..:? "Unit")+ Prelude.<*> (x Data..:? "Value")+ )++instance Prelude.Hashable Duration where+ hashWithSalt _salt Duration' {..} =+ _salt+ `Prelude.hashWithSalt` unit+ `Prelude.hashWithSalt` value++instance Prelude.NFData Duration where+ rnf Duration' {..} =+ Prelude.rnf unit `Prelude.seq` Prelude.rnf value++instance Data.ToJSON Duration where+ toJSON Duration' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("Unit" Data..=) Prelude.<$> unit,+ ("Value" Data..=) Prelude.<$> value+ ]+ )
+ gen/Amazonka/OpenSearch/Types/EBSOptions.hs view
@@ -0,0 +1,146 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.OpenSearch.Types.EBSOptions+-- 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.OpenSearch.Types.EBSOptions where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.VolumeType+import qualified Amazonka.Prelude as Prelude++-- | Container for the parameters required to enable EBS-based storage for an+-- OpenSearch Service domain.+--+-- /See:/ 'newEBSOptions' smart constructor.+data EBSOptions = EBSOptions'+ { -- | Indicates whether EBS volumes are attached to data nodes in an+ -- OpenSearch Service domain.+ eBSEnabled :: Prelude.Maybe Prelude.Bool,+ -- | Specifies the baseline input\/output (I\/O) performance of EBS volumes+ -- attached to data nodes. Applicable only for the @gp3@ and provisioned+ -- IOPS EBS volume types.+ iops :: Prelude.Maybe Prelude.Int,+ -- | Specifies the throughput (in MiB\/s) of the EBS volumes attached to data+ -- nodes. Applicable only for the @gp3@ volume type.+ throughput :: Prelude.Maybe Prelude.Int,+ -- | Specifies the size (in GiB) of EBS volumes attached to data nodes.+ volumeSize :: Prelude.Maybe Prelude.Int,+ -- | Specifies the type of EBS volumes attached to data nodes.+ volumeType :: Prelude.Maybe VolumeType+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'EBSOptions' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'eBSEnabled', 'eBSOptions_eBSEnabled' - Indicates whether EBS volumes are attached to data nodes in an+-- OpenSearch Service domain.+--+-- 'iops', 'eBSOptions_iops' - Specifies the baseline input\/output (I\/O) performance of EBS volumes+-- attached to data nodes. Applicable only for the @gp3@ and provisioned+-- IOPS EBS volume types.+--+-- 'throughput', 'eBSOptions_throughput' - Specifies the throughput (in MiB\/s) of the EBS volumes attached to data+-- nodes. Applicable only for the @gp3@ volume type.+--+-- 'volumeSize', 'eBSOptions_volumeSize' - Specifies the size (in GiB) of EBS volumes attached to data nodes.+--+-- 'volumeType', 'eBSOptions_volumeType' - Specifies the type of EBS volumes attached to data nodes.+newEBSOptions ::+ EBSOptions+newEBSOptions =+ EBSOptions'+ { eBSEnabled = Prelude.Nothing,+ iops = Prelude.Nothing,+ throughput = Prelude.Nothing,+ volumeSize = Prelude.Nothing,+ volumeType = Prelude.Nothing+ }++-- | Indicates whether EBS volumes are attached to data nodes in an+-- OpenSearch Service domain.+eBSOptions_eBSEnabled :: Lens.Lens' EBSOptions (Prelude.Maybe Prelude.Bool)+eBSOptions_eBSEnabled = Lens.lens (\EBSOptions' {eBSEnabled} -> eBSEnabled) (\s@EBSOptions' {} a -> s {eBSEnabled = a} :: EBSOptions)++-- | Specifies the baseline input\/output (I\/O) performance of EBS volumes+-- attached to data nodes. Applicable only for the @gp3@ and provisioned+-- IOPS EBS volume types.+eBSOptions_iops :: Lens.Lens' EBSOptions (Prelude.Maybe Prelude.Int)+eBSOptions_iops = Lens.lens (\EBSOptions' {iops} -> iops) (\s@EBSOptions' {} a -> s {iops = a} :: EBSOptions)++-- | Specifies the throughput (in MiB\/s) of the EBS volumes attached to data+-- nodes. Applicable only for the @gp3@ volume type.+eBSOptions_throughput :: Lens.Lens' EBSOptions (Prelude.Maybe Prelude.Int)+eBSOptions_throughput = Lens.lens (\EBSOptions' {throughput} -> throughput) (\s@EBSOptions' {} a -> s {throughput = a} :: EBSOptions)++-- | Specifies the size (in GiB) of EBS volumes attached to data nodes.+eBSOptions_volumeSize :: Lens.Lens' EBSOptions (Prelude.Maybe Prelude.Int)+eBSOptions_volumeSize = Lens.lens (\EBSOptions' {volumeSize} -> volumeSize) (\s@EBSOptions' {} a -> s {volumeSize = a} :: EBSOptions)++-- | Specifies the type of EBS volumes attached to data nodes.+eBSOptions_volumeType :: Lens.Lens' EBSOptions (Prelude.Maybe VolumeType)+eBSOptions_volumeType = Lens.lens (\EBSOptions' {volumeType} -> volumeType) (\s@EBSOptions' {} a -> s {volumeType = a} :: EBSOptions)++instance Data.FromJSON EBSOptions where+ parseJSON =+ Data.withObject+ "EBSOptions"+ ( \x ->+ EBSOptions'+ Prelude.<$> (x Data..:? "EBSEnabled")+ Prelude.<*> (x Data..:? "Iops")+ Prelude.<*> (x Data..:? "Throughput")+ Prelude.<*> (x Data..:? "VolumeSize")+ Prelude.<*> (x Data..:? "VolumeType")+ )++instance Prelude.Hashable EBSOptions where+ hashWithSalt _salt EBSOptions' {..} =+ _salt+ `Prelude.hashWithSalt` eBSEnabled+ `Prelude.hashWithSalt` iops+ `Prelude.hashWithSalt` throughput+ `Prelude.hashWithSalt` volumeSize+ `Prelude.hashWithSalt` volumeType++instance Prelude.NFData EBSOptions where+ rnf EBSOptions' {..} =+ Prelude.rnf eBSEnabled+ `Prelude.seq` Prelude.rnf iops+ `Prelude.seq` Prelude.rnf throughput+ `Prelude.seq` Prelude.rnf volumeSize+ `Prelude.seq` Prelude.rnf volumeType++instance Data.ToJSON EBSOptions where+ toJSON EBSOptions' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("EBSEnabled" Data..=) Prelude.<$> eBSEnabled,+ ("Iops" Data..=) Prelude.<$> iops,+ ("Throughput" Data..=) Prelude.<$> throughput,+ ("VolumeSize" Data..=) Prelude.<$> volumeSize,+ ("VolumeType" Data..=) Prelude.<$> volumeType+ ]+ )
+ gen/Amazonka/OpenSearch/Types/EBSOptionsStatus.hs view
@@ -0,0 +1,91 @@+{-# 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.OpenSearch.Types.EBSOptionsStatus+-- 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.OpenSearch.Types.EBSOptionsStatus where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.EBSOptions+import Amazonka.OpenSearch.Types.OptionStatus+import qualified Amazonka.Prelude as Prelude++-- | The status of the EBS options for the specified OpenSearch Service+-- domain.+--+-- /See:/ 'newEBSOptionsStatus' smart constructor.+data EBSOptionsStatus = EBSOptionsStatus'+ { -- | The configured EBS options for the specified domain.+ options :: EBSOptions,+ -- | The status of the EBS options for the specified domain.+ status :: OptionStatus+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'EBSOptionsStatus' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'options', 'eBSOptionsStatus_options' - The configured EBS options for the specified domain.+--+-- 'status', 'eBSOptionsStatus_status' - The status of the EBS options for the specified domain.+newEBSOptionsStatus ::+ -- | 'options'+ EBSOptions ->+ -- | 'status'+ OptionStatus ->+ EBSOptionsStatus+newEBSOptionsStatus pOptions_ pStatus_ =+ EBSOptionsStatus'+ { options = pOptions_,+ status = pStatus_+ }++-- | The configured EBS options for the specified domain.+eBSOptionsStatus_options :: Lens.Lens' EBSOptionsStatus EBSOptions+eBSOptionsStatus_options = Lens.lens (\EBSOptionsStatus' {options} -> options) (\s@EBSOptionsStatus' {} a -> s {options = a} :: EBSOptionsStatus)++-- | The status of the EBS options for the specified domain.+eBSOptionsStatus_status :: Lens.Lens' EBSOptionsStatus OptionStatus+eBSOptionsStatus_status = Lens.lens (\EBSOptionsStatus' {status} -> status) (\s@EBSOptionsStatus' {} a -> s {status = a} :: EBSOptionsStatus)++instance Data.FromJSON EBSOptionsStatus where+ parseJSON =+ Data.withObject+ "EBSOptionsStatus"+ ( \x ->+ EBSOptionsStatus'+ Prelude.<$> (x Data..: "Options")+ Prelude.<*> (x Data..: "Status")+ )++instance Prelude.Hashable EBSOptionsStatus where+ hashWithSalt _salt EBSOptionsStatus' {..} =+ _salt+ `Prelude.hashWithSalt` options+ `Prelude.hashWithSalt` status++instance Prelude.NFData EBSOptionsStatus where+ rnf EBSOptionsStatus' {..} =+ Prelude.rnf options+ `Prelude.seq` Prelude.rnf status
+ gen/Amazonka/OpenSearch/Types/EncryptionAtRestOptions.hs view
@@ -0,0 +1,95 @@+{-# 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.OpenSearch.Types.EncryptionAtRestOptions+-- 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.OpenSearch.Types.EncryptionAtRestOptions 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++-- | Specifies whether the domain should encrypt data at rest, and if so, the+-- Key Management Service (KMS) key to use. Can be used only to create a+-- new domain, not update an existing one.+--+-- /See:/ 'newEncryptionAtRestOptions' smart constructor.+data EncryptionAtRestOptions = EncryptionAtRestOptions'+ { -- | True to enable encryption at rest.+ enabled :: Prelude.Maybe Prelude.Bool,+ -- | The KMS key ID. Takes the form @1a2a3a4-1a2a-3a4a-5a6a-1a2a3a4a5a6a@.+ kmsKeyId :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'EncryptionAtRestOptions' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'enabled', 'encryptionAtRestOptions_enabled' - True to enable encryption at rest.+--+-- 'kmsKeyId', 'encryptionAtRestOptions_kmsKeyId' - The KMS key ID. Takes the form @1a2a3a4-1a2a-3a4a-5a6a-1a2a3a4a5a6a@.+newEncryptionAtRestOptions ::+ EncryptionAtRestOptions+newEncryptionAtRestOptions =+ EncryptionAtRestOptions'+ { enabled = Prelude.Nothing,+ kmsKeyId = Prelude.Nothing+ }++-- | True to enable encryption at rest.+encryptionAtRestOptions_enabled :: Lens.Lens' EncryptionAtRestOptions (Prelude.Maybe Prelude.Bool)+encryptionAtRestOptions_enabled = Lens.lens (\EncryptionAtRestOptions' {enabled} -> enabled) (\s@EncryptionAtRestOptions' {} a -> s {enabled = a} :: EncryptionAtRestOptions)++-- | The KMS key ID. Takes the form @1a2a3a4-1a2a-3a4a-5a6a-1a2a3a4a5a6a@.+encryptionAtRestOptions_kmsKeyId :: Lens.Lens' EncryptionAtRestOptions (Prelude.Maybe Prelude.Text)+encryptionAtRestOptions_kmsKeyId = Lens.lens (\EncryptionAtRestOptions' {kmsKeyId} -> kmsKeyId) (\s@EncryptionAtRestOptions' {} a -> s {kmsKeyId = a} :: EncryptionAtRestOptions)++instance Data.FromJSON EncryptionAtRestOptions where+ parseJSON =+ Data.withObject+ "EncryptionAtRestOptions"+ ( \x ->+ EncryptionAtRestOptions'+ Prelude.<$> (x Data..:? "Enabled")+ Prelude.<*> (x Data..:? "KmsKeyId")+ )++instance Prelude.Hashable EncryptionAtRestOptions where+ hashWithSalt _salt EncryptionAtRestOptions' {..} =+ _salt+ `Prelude.hashWithSalt` enabled+ `Prelude.hashWithSalt` kmsKeyId++instance Prelude.NFData EncryptionAtRestOptions where+ rnf EncryptionAtRestOptions' {..} =+ Prelude.rnf enabled+ `Prelude.seq` Prelude.rnf kmsKeyId++instance Data.ToJSON EncryptionAtRestOptions where+ toJSON EncryptionAtRestOptions' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("Enabled" Data..=) Prelude.<$> enabled,+ ("KmsKeyId" Data..=) Prelude.<$> kmsKeyId+ ]+ )
+ gen/Amazonka/OpenSearch/Types/EncryptionAtRestOptionsStatus.hs view
@@ -0,0 +1,94 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.OpenSearch.Types.EncryptionAtRestOptionsStatus+-- 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.OpenSearch.Types.EncryptionAtRestOptionsStatus where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.EncryptionAtRestOptions+import Amazonka.OpenSearch.Types.OptionStatus+import qualified Amazonka.Prelude as Prelude++-- | Status of the encryption at rest options for the specified OpenSearch+-- Service domain.+--+-- /See:/ 'newEncryptionAtRestOptionsStatus' smart constructor.+data EncryptionAtRestOptionsStatus = EncryptionAtRestOptionsStatus'+ { -- | Encryption at rest options for the specified domain.+ options :: EncryptionAtRestOptions,+ -- | The status of the encryption at rest options for the specified domain.+ status :: OptionStatus+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'EncryptionAtRestOptionsStatus' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'options', 'encryptionAtRestOptionsStatus_options' - Encryption at rest options for the specified domain.+--+-- 'status', 'encryptionAtRestOptionsStatus_status' - The status of the encryption at rest options for the specified domain.+newEncryptionAtRestOptionsStatus ::+ -- | 'options'+ EncryptionAtRestOptions ->+ -- | 'status'+ OptionStatus ->+ EncryptionAtRestOptionsStatus+newEncryptionAtRestOptionsStatus pOptions_ pStatus_ =+ EncryptionAtRestOptionsStatus'+ { options = pOptions_,+ status = pStatus_+ }++-- | Encryption at rest options for the specified domain.+encryptionAtRestOptionsStatus_options :: Lens.Lens' EncryptionAtRestOptionsStatus EncryptionAtRestOptions+encryptionAtRestOptionsStatus_options = Lens.lens (\EncryptionAtRestOptionsStatus' {options} -> options) (\s@EncryptionAtRestOptionsStatus' {} a -> s {options = a} :: EncryptionAtRestOptionsStatus)++-- | The status of the encryption at rest options for the specified domain.+encryptionAtRestOptionsStatus_status :: Lens.Lens' EncryptionAtRestOptionsStatus OptionStatus+encryptionAtRestOptionsStatus_status = Lens.lens (\EncryptionAtRestOptionsStatus' {status} -> status) (\s@EncryptionAtRestOptionsStatus' {} a -> s {status = a} :: EncryptionAtRestOptionsStatus)++instance Data.FromJSON EncryptionAtRestOptionsStatus where+ parseJSON =+ Data.withObject+ "EncryptionAtRestOptionsStatus"+ ( \x ->+ EncryptionAtRestOptionsStatus'+ Prelude.<$> (x Data..: "Options")+ Prelude.<*> (x Data..: "Status")+ )++instance+ Prelude.Hashable+ EncryptionAtRestOptionsStatus+ where+ hashWithSalt _salt EncryptionAtRestOptionsStatus' {..} =+ _salt+ `Prelude.hashWithSalt` options+ `Prelude.hashWithSalt` status++instance Prelude.NFData EncryptionAtRestOptionsStatus where+ rnf EncryptionAtRestOptionsStatus' {..} =+ Prelude.rnf options+ `Prelude.seq` Prelude.rnf status
+ gen/Amazonka/OpenSearch/Types/EngineType.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.OpenSearch.Types.EngineType+-- 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.OpenSearch.Types.EngineType+ ( EngineType+ ( ..,+ EngineType_Elasticsearch,+ EngineType_OpenSearch+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype EngineType = EngineType'+ { fromEngineType ::+ 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 EngineType_Elasticsearch :: EngineType+pattern EngineType_Elasticsearch = EngineType' "Elasticsearch"++pattern EngineType_OpenSearch :: EngineType+pattern EngineType_OpenSearch = EngineType' "OpenSearch"++{-# COMPLETE+ EngineType_Elasticsearch,+ EngineType_OpenSearch,+ EngineType'+ #-}
+ gen/Amazonka/OpenSearch/Types/ErrorDetails.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.OpenSearch.Types.ErrorDetails+-- 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.OpenSearch.Types.ErrorDetails 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++-- | Additional information if the package is in an error state. Null+-- otherwise.+--+-- /See:/ 'newErrorDetails' smart constructor.+data ErrorDetails = ErrorDetails'+ { -- | A message describing the error.+ errorMessage :: Prelude.Maybe Prelude.Text,+ -- | The type of error that occurred.+ errorType :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ErrorDetails' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'errorMessage', 'errorDetails_errorMessage' - A message describing the error.+--+-- 'errorType', 'errorDetails_errorType' - The type of error that occurred.+newErrorDetails ::+ ErrorDetails+newErrorDetails =+ ErrorDetails'+ { errorMessage = Prelude.Nothing,+ errorType = Prelude.Nothing+ }++-- | A message describing the error.+errorDetails_errorMessage :: Lens.Lens' ErrorDetails (Prelude.Maybe Prelude.Text)+errorDetails_errorMessage = Lens.lens (\ErrorDetails' {errorMessage} -> errorMessage) (\s@ErrorDetails' {} a -> s {errorMessage = a} :: ErrorDetails)++-- | The type of error that occurred.+errorDetails_errorType :: Lens.Lens' ErrorDetails (Prelude.Maybe Prelude.Text)+errorDetails_errorType = Lens.lens (\ErrorDetails' {errorType} -> errorType) (\s@ErrorDetails' {} a -> s {errorType = a} :: ErrorDetails)++instance Data.FromJSON ErrorDetails where+ parseJSON =+ Data.withObject+ "ErrorDetails"+ ( \x ->+ ErrorDetails'+ Prelude.<$> (x Data..:? "ErrorMessage")+ Prelude.<*> (x Data..:? "ErrorType")+ )++instance Prelude.Hashable ErrorDetails where+ hashWithSalt _salt ErrorDetails' {..} =+ _salt+ `Prelude.hashWithSalt` errorMessage+ `Prelude.hashWithSalt` errorType++instance Prelude.NFData ErrorDetails where+ rnf ErrorDetails' {..} =+ Prelude.rnf errorMessage+ `Prelude.seq` Prelude.rnf errorType
+ gen/Amazonka/OpenSearch/Types/Filter.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.OpenSearch.Types.Filter+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.OpenSearch.Types.Filter where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | A filter used to limit results when describing inbound or outbound+-- cross-cluster connections. You can specify multiple values per filter. A+-- cross-cluster connection must match at least one of the specified values+-- for it to be returned from an operation.+--+-- /See:/ 'newFilter' smart constructor.+data Filter = Filter'+ { -- | The name of the filter.+ name :: Prelude.Maybe Prelude.Text,+ -- | One or more values for the filter.+ values :: Prelude.Maybe (Prelude.NonEmpty Prelude.Text)+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Filter' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'name', 'filter_name' - The name of the filter.+--+-- 'values', 'filter_values' - One or more values for the filter.+newFilter ::+ Filter+newFilter =+ Filter'+ { name = Prelude.Nothing,+ values = Prelude.Nothing+ }++-- | The name of the filter.+filter_name :: Lens.Lens' Filter (Prelude.Maybe Prelude.Text)+filter_name = Lens.lens (\Filter' {name} -> name) (\s@Filter' {} a -> s {name = a} :: Filter)++-- | One or more values for the filter.+filter_values :: Lens.Lens' Filter (Prelude.Maybe (Prelude.NonEmpty Prelude.Text))+filter_values = Lens.lens (\Filter' {values} -> values) (\s@Filter' {} a -> s {values = a} :: Filter) Prelude.. Lens.mapping Lens.coerced++instance Prelude.Hashable Filter where+ hashWithSalt _salt Filter' {..} =+ _salt+ `Prelude.hashWithSalt` name+ `Prelude.hashWithSalt` values++instance Prelude.NFData Filter where+ rnf Filter' {..} =+ Prelude.rnf name `Prelude.seq` Prelude.rnf values++instance Data.ToJSON Filter where+ toJSON Filter' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("Name" Data..=) Prelude.<$> name,+ ("Values" Data..=) Prelude.<$> values+ ]+ )
+ gen/Amazonka/OpenSearch/Types/InboundConnection.hs view
@@ -0,0 +1,112 @@+{-# 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.OpenSearch.Types.InboundConnection+-- 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.OpenSearch.Types.InboundConnection where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.DomainInformationContainer+import Amazonka.OpenSearch.Types.InboundConnectionStatus+import qualified Amazonka.Prelude as Prelude++-- | Describes an inbound cross-cluster connection for Amazon OpenSearch+-- Service. For more information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/cross-cluster-search.html Cross-cluster search for Amazon OpenSearch Service>.+--+-- /See:/ 'newInboundConnection' smart constructor.+data InboundConnection = InboundConnection'+ { -- | The unique identifier of the connection.+ connectionId :: Prelude.Maybe Prelude.Text,+ -- | The current status of the connection.+ connectionStatus :: Prelude.Maybe InboundConnectionStatus,+ -- | Information about the source (local) domain.+ localDomainInfo :: Prelude.Maybe DomainInformationContainer,+ -- | Information about the destination (remote) domain.+ remoteDomainInfo :: Prelude.Maybe DomainInformationContainer+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'InboundConnection' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'connectionId', 'inboundConnection_connectionId' - The unique identifier of the connection.+--+-- 'connectionStatus', 'inboundConnection_connectionStatus' - The current status of the connection.+--+-- 'localDomainInfo', 'inboundConnection_localDomainInfo' - Information about the source (local) domain.+--+-- 'remoteDomainInfo', 'inboundConnection_remoteDomainInfo' - Information about the destination (remote) domain.+newInboundConnection ::+ InboundConnection+newInboundConnection =+ InboundConnection'+ { connectionId = Prelude.Nothing,+ connectionStatus = Prelude.Nothing,+ localDomainInfo = Prelude.Nothing,+ remoteDomainInfo = Prelude.Nothing+ }++-- | The unique identifier of the connection.+inboundConnection_connectionId :: Lens.Lens' InboundConnection (Prelude.Maybe Prelude.Text)+inboundConnection_connectionId = Lens.lens (\InboundConnection' {connectionId} -> connectionId) (\s@InboundConnection' {} a -> s {connectionId = a} :: InboundConnection)++-- | The current status of the connection.+inboundConnection_connectionStatus :: Lens.Lens' InboundConnection (Prelude.Maybe InboundConnectionStatus)+inboundConnection_connectionStatus = Lens.lens (\InboundConnection' {connectionStatus} -> connectionStatus) (\s@InboundConnection' {} a -> s {connectionStatus = a} :: InboundConnection)++-- | Information about the source (local) domain.+inboundConnection_localDomainInfo :: Lens.Lens' InboundConnection (Prelude.Maybe DomainInformationContainer)+inboundConnection_localDomainInfo = Lens.lens (\InboundConnection' {localDomainInfo} -> localDomainInfo) (\s@InboundConnection' {} a -> s {localDomainInfo = a} :: InboundConnection)++-- | Information about the destination (remote) domain.+inboundConnection_remoteDomainInfo :: Lens.Lens' InboundConnection (Prelude.Maybe DomainInformationContainer)+inboundConnection_remoteDomainInfo = Lens.lens (\InboundConnection' {remoteDomainInfo} -> remoteDomainInfo) (\s@InboundConnection' {} a -> s {remoteDomainInfo = a} :: InboundConnection)++instance Data.FromJSON InboundConnection where+ parseJSON =+ Data.withObject+ "InboundConnection"+ ( \x ->+ InboundConnection'+ Prelude.<$> (x Data..:? "ConnectionId")+ Prelude.<*> (x Data..:? "ConnectionStatus")+ Prelude.<*> (x Data..:? "LocalDomainInfo")+ Prelude.<*> (x Data..:? "RemoteDomainInfo")+ )++instance Prelude.Hashable InboundConnection where+ hashWithSalt _salt InboundConnection' {..} =+ _salt+ `Prelude.hashWithSalt` connectionId+ `Prelude.hashWithSalt` connectionStatus+ `Prelude.hashWithSalt` localDomainInfo+ `Prelude.hashWithSalt` remoteDomainInfo++instance Prelude.NFData InboundConnection where+ rnf InboundConnection' {..} =+ Prelude.rnf connectionId+ `Prelude.seq` Prelude.rnf connectionStatus+ `Prelude.seq` Prelude.rnf localDomainInfo+ `Prelude.seq` Prelude.rnf remoteDomainInfo
+ gen/Amazonka/OpenSearch/Types/InboundConnectionStatus.hs view
@@ -0,0 +1,143 @@+{-# 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.OpenSearch.Types.InboundConnectionStatus+-- 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.OpenSearch.Types.InboundConnectionStatus where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.InboundConnectionStatusCode+import qualified Amazonka.Prelude as Prelude++-- | The status of an inbound cross-cluster connection for OpenSearch+-- Service.+--+-- /See:/ 'newInboundConnectionStatus' smart constructor.+data InboundConnectionStatus = InboundConnectionStatus'+ { -- | Information about the connection.+ message :: Prelude.Maybe Prelude.Text,+ -- | The status code for the connection. Can be one of the following:+ --+ -- - __PENDING_ACCEPTANCE__ - Inbound connection is not yet accepted by+ -- the remote domain owner.+ --+ -- - __APPROVED__: Inbound connection is pending acceptance by the remote+ -- domain owner.+ --+ -- - __PROVISIONING__: Inbound connection is being provisioned.+ --+ -- - __ACTIVE__: Inbound connection is active and ready to use.+ --+ -- - __REJECTING__: Inbound connection rejection is in process.+ --+ -- - __REJECTED__: Inbound connection is rejected.+ --+ -- - __DELETING__: Inbound connection deletion is in progress.+ --+ -- - __DELETED__: Inbound connection is deleted and can no longer be+ -- used.+ statusCode :: Prelude.Maybe InboundConnectionStatusCode+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'InboundConnectionStatus' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'message', 'inboundConnectionStatus_message' - Information about the connection.+--+-- 'statusCode', 'inboundConnectionStatus_statusCode' - The status code for the connection. Can be one of the following:+--+-- - __PENDING_ACCEPTANCE__ - Inbound connection is not yet accepted by+-- the remote domain owner.+--+-- - __APPROVED__: Inbound connection is pending acceptance by the remote+-- domain owner.+--+-- - __PROVISIONING__: Inbound connection is being provisioned.+--+-- - __ACTIVE__: Inbound connection is active and ready to use.+--+-- - __REJECTING__: Inbound connection rejection is in process.+--+-- - __REJECTED__: Inbound connection is rejected.+--+-- - __DELETING__: Inbound connection deletion is in progress.+--+-- - __DELETED__: Inbound connection is deleted and can no longer be+-- used.+newInboundConnectionStatus ::+ InboundConnectionStatus+newInboundConnectionStatus =+ InboundConnectionStatus'+ { message = Prelude.Nothing,+ statusCode = Prelude.Nothing+ }++-- | Information about the connection.+inboundConnectionStatus_message :: Lens.Lens' InboundConnectionStatus (Prelude.Maybe Prelude.Text)+inboundConnectionStatus_message = Lens.lens (\InboundConnectionStatus' {message} -> message) (\s@InboundConnectionStatus' {} a -> s {message = a} :: InboundConnectionStatus)++-- | The status code for the connection. Can be one of the following:+--+-- - __PENDING_ACCEPTANCE__ - Inbound connection is not yet accepted by+-- the remote domain owner.+--+-- - __APPROVED__: Inbound connection is pending acceptance by the remote+-- domain owner.+--+-- - __PROVISIONING__: Inbound connection is being provisioned.+--+-- - __ACTIVE__: Inbound connection is active and ready to use.+--+-- - __REJECTING__: Inbound connection rejection is in process.+--+-- - __REJECTED__: Inbound connection is rejected.+--+-- - __DELETING__: Inbound connection deletion is in progress.+--+-- - __DELETED__: Inbound connection is deleted and can no longer be+-- used.+inboundConnectionStatus_statusCode :: Lens.Lens' InboundConnectionStatus (Prelude.Maybe InboundConnectionStatusCode)+inboundConnectionStatus_statusCode = Lens.lens (\InboundConnectionStatus' {statusCode} -> statusCode) (\s@InboundConnectionStatus' {} a -> s {statusCode = a} :: InboundConnectionStatus)++instance Data.FromJSON InboundConnectionStatus where+ parseJSON =+ Data.withObject+ "InboundConnectionStatus"+ ( \x ->+ InboundConnectionStatus'+ Prelude.<$> (x Data..:? "Message")+ Prelude.<*> (x Data..:? "StatusCode")+ )++instance Prelude.Hashable InboundConnectionStatus where+ hashWithSalt _salt InboundConnectionStatus' {..} =+ _salt+ `Prelude.hashWithSalt` message+ `Prelude.hashWithSalt` statusCode++instance Prelude.NFData InboundConnectionStatus where+ rnf InboundConnectionStatus' {..} =+ Prelude.rnf message+ `Prelude.seq` Prelude.rnf statusCode
+ gen/Amazonka/OpenSearch/Types/InboundConnectionStatusCode.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.OpenSearch.Types.InboundConnectionStatusCode+-- 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.OpenSearch.Types.InboundConnectionStatusCode+ ( InboundConnectionStatusCode+ ( ..,+ InboundConnectionStatusCode_ACTIVE,+ InboundConnectionStatusCode_APPROVED,+ InboundConnectionStatusCode_DELETED,+ InboundConnectionStatusCode_DELETING,+ InboundConnectionStatusCode_PENDING_ACCEPTANCE,+ InboundConnectionStatusCode_PROVISIONING,+ InboundConnectionStatusCode_REJECTED,+ InboundConnectionStatusCode_REJECTING+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype InboundConnectionStatusCode = InboundConnectionStatusCode'+ { fromInboundConnectionStatusCode ::+ 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 InboundConnectionStatusCode_ACTIVE :: InboundConnectionStatusCode+pattern InboundConnectionStatusCode_ACTIVE = InboundConnectionStatusCode' "ACTIVE"++pattern InboundConnectionStatusCode_APPROVED :: InboundConnectionStatusCode+pattern InboundConnectionStatusCode_APPROVED = InboundConnectionStatusCode' "APPROVED"++pattern InboundConnectionStatusCode_DELETED :: InboundConnectionStatusCode+pattern InboundConnectionStatusCode_DELETED = InboundConnectionStatusCode' "DELETED"++pattern InboundConnectionStatusCode_DELETING :: InboundConnectionStatusCode+pattern InboundConnectionStatusCode_DELETING = InboundConnectionStatusCode' "DELETING"++pattern InboundConnectionStatusCode_PENDING_ACCEPTANCE :: InboundConnectionStatusCode+pattern InboundConnectionStatusCode_PENDING_ACCEPTANCE = InboundConnectionStatusCode' "PENDING_ACCEPTANCE"++pattern InboundConnectionStatusCode_PROVISIONING :: InboundConnectionStatusCode+pattern InboundConnectionStatusCode_PROVISIONING = InboundConnectionStatusCode' "PROVISIONING"++pattern InboundConnectionStatusCode_REJECTED :: InboundConnectionStatusCode+pattern InboundConnectionStatusCode_REJECTED = InboundConnectionStatusCode' "REJECTED"++pattern InboundConnectionStatusCode_REJECTING :: InboundConnectionStatusCode+pattern InboundConnectionStatusCode_REJECTING = InboundConnectionStatusCode' "REJECTING"++{-# COMPLETE+ InboundConnectionStatusCode_ACTIVE,+ InboundConnectionStatusCode_APPROVED,+ InboundConnectionStatusCode_DELETED,+ InboundConnectionStatusCode_DELETING,+ InboundConnectionStatusCode_PENDING_ACCEPTANCE,+ InboundConnectionStatusCode_PROVISIONING,+ InboundConnectionStatusCode_REJECTED,+ InboundConnectionStatusCode_REJECTING,+ InboundConnectionStatusCode'+ #-}
+ gen/Amazonka/OpenSearch/Types/InstanceCountLimits.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.OpenSearch.Types.InstanceCountLimits+-- 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.OpenSearch.Types.InstanceCountLimits 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++-- | Limits on the number of instances that can be created in OpenSearch+-- Service for a given instance type.+--+-- /See:/ 'newInstanceCountLimits' smart constructor.+data InstanceCountLimits = InstanceCountLimits'+ { -- | The minimum allowed number of instances.+ maximumInstanceCount :: Prelude.Maybe Prelude.Int,+ -- | The maximum allowed number of instances.+ minimumInstanceCount :: Prelude.Maybe Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'InstanceCountLimits' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'maximumInstanceCount', 'instanceCountLimits_maximumInstanceCount' - The minimum allowed number of instances.+--+-- 'minimumInstanceCount', 'instanceCountLimits_minimumInstanceCount' - The maximum allowed number of instances.+newInstanceCountLimits ::+ InstanceCountLimits+newInstanceCountLimits =+ InstanceCountLimits'+ { maximumInstanceCount =+ Prelude.Nothing,+ minimumInstanceCount = Prelude.Nothing+ }++-- | The minimum allowed number of instances.+instanceCountLimits_maximumInstanceCount :: Lens.Lens' InstanceCountLimits (Prelude.Maybe Prelude.Int)+instanceCountLimits_maximumInstanceCount = Lens.lens (\InstanceCountLimits' {maximumInstanceCount} -> maximumInstanceCount) (\s@InstanceCountLimits' {} a -> s {maximumInstanceCount = a} :: InstanceCountLimits)++-- | The maximum allowed number of instances.+instanceCountLimits_minimumInstanceCount :: Lens.Lens' InstanceCountLimits (Prelude.Maybe Prelude.Int)+instanceCountLimits_minimumInstanceCount = Lens.lens (\InstanceCountLimits' {minimumInstanceCount} -> minimumInstanceCount) (\s@InstanceCountLimits' {} a -> s {minimumInstanceCount = a} :: InstanceCountLimits)++instance Data.FromJSON InstanceCountLimits where+ parseJSON =+ Data.withObject+ "InstanceCountLimits"+ ( \x ->+ InstanceCountLimits'+ Prelude.<$> (x Data..:? "MaximumInstanceCount")+ Prelude.<*> (x Data..:? "MinimumInstanceCount")+ )++instance Prelude.Hashable InstanceCountLimits where+ hashWithSalt _salt InstanceCountLimits' {..} =+ _salt+ `Prelude.hashWithSalt` maximumInstanceCount+ `Prelude.hashWithSalt` minimumInstanceCount++instance Prelude.NFData InstanceCountLimits where+ rnf InstanceCountLimits' {..} =+ Prelude.rnf maximumInstanceCount+ `Prelude.seq` Prelude.rnf minimumInstanceCount
+ gen/Amazonka/OpenSearch/Types/InstanceLimits.hs view
@@ -0,0 +1,77 @@+{-# 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.OpenSearch.Types.InstanceLimits+-- 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.OpenSearch.Types.InstanceLimits where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.InstanceCountLimits+import qualified Amazonka.Prelude as Prelude++-- | Instance-related attributes that are available for a given instance+-- type.+--+-- /See:/ 'newInstanceLimits' smart constructor.+data InstanceLimits = InstanceLimits'+ { -- | Limits on the number of instances that can be created for a given+ -- instance type.+ instanceCountLimits :: Prelude.Maybe InstanceCountLimits+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'InstanceLimits' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'instanceCountLimits', 'instanceLimits_instanceCountLimits' - Limits on the number of instances that can be created for a given+-- instance type.+newInstanceLimits ::+ InstanceLimits+newInstanceLimits =+ InstanceLimits'+ { instanceCountLimits =+ Prelude.Nothing+ }++-- | Limits on the number of instances that can be created for a given+-- instance type.+instanceLimits_instanceCountLimits :: Lens.Lens' InstanceLimits (Prelude.Maybe InstanceCountLimits)+instanceLimits_instanceCountLimits = Lens.lens (\InstanceLimits' {instanceCountLimits} -> instanceCountLimits) (\s@InstanceLimits' {} a -> s {instanceCountLimits = a} :: InstanceLimits)++instance Data.FromJSON InstanceLimits where+ parseJSON =+ Data.withObject+ "InstanceLimits"+ ( \x ->+ InstanceLimits'+ Prelude.<$> (x Data..:? "InstanceCountLimits")+ )++instance Prelude.Hashable InstanceLimits where+ hashWithSalt _salt InstanceLimits' {..} =+ _salt `Prelude.hashWithSalt` instanceCountLimits++instance Prelude.NFData InstanceLimits where+ rnf InstanceLimits' {..} =+ Prelude.rnf instanceCountLimits
+ gen/Amazonka/OpenSearch/Types/InstanceTypeDetails.hs view
@@ -0,0 +1,153 @@+{-# 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.OpenSearch.Types.InstanceTypeDetails+-- 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.OpenSearch.Types.InstanceTypeDetails where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.OpenSearchPartitionInstanceType+import qualified Amazonka.Prelude as Prelude++-- | Lists all instance types and available features for a given OpenSearch+-- or Elasticsearch version.+--+-- /See:/ 'newInstanceTypeDetails' smart constructor.+data InstanceTypeDetails = InstanceTypeDetails'+ { -- | Whether fine-grained access control is supported for the instance type.+ advancedSecurityEnabled :: Prelude.Maybe Prelude.Bool,+ -- | Whether logging is supported for the instance type.+ appLogsEnabled :: Prelude.Maybe Prelude.Bool,+ -- | Whether Amazon Cognito access is supported for the instance type.+ cognitoEnabled :: Prelude.Maybe Prelude.Bool,+ -- | Whether encryption at rest and node-to-node encryption are supported for+ -- the instance type.+ encryptionEnabled :: Prelude.Maybe Prelude.Bool,+ -- | Whether the instance acts as a data node, a dedicated master node, or an+ -- UltraWarm node.+ instanceRole :: Prelude.Maybe [Prelude.Text],+ -- | The instance type.+ instanceType :: Prelude.Maybe OpenSearchPartitionInstanceType,+ -- | Whether UltraWarm is supported for the instance type.+ warmEnabled :: Prelude.Maybe Prelude.Bool+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'InstanceTypeDetails' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'advancedSecurityEnabled', 'instanceTypeDetails_advancedSecurityEnabled' - Whether fine-grained access control is supported for the instance type.+--+-- 'appLogsEnabled', 'instanceTypeDetails_appLogsEnabled' - Whether logging is supported for the instance type.+--+-- 'cognitoEnabled', 'instanceTypeDetails_cognitoEnabled' - Whether Amazon Cognito access is supported for the instance type.+--+-- 'encryptionEnabled', 'instanceTypeDetails_encryptionEnabled' - Whether encryption at rest and node-to-node encryption are supported for+-- the instance type.+--+-- 'instanceRole', 'instanceTypeDetails_instanceRole' - Whether the instance acts as a data node, a dedicated master node, or an+-- UltraWarm node.+--+-- 'instanceType', 'instanceTypeDetails_instanceType' - The instance type.+--+-- 'warmEnabled', 'instanceTypeDetails_warmEnabled' - Whether UltraWarm is supported for the instance type.+newInstanceTypeDetails ::+ InstanceTypeDetails+newInstanceTypeDetails =+ InstanceTypeDetails'+ { advancedSecurityEnabled =+ Prelude.Nothing,+ appLogsEnabled = Prelude.Nothing,+ cognitoEnabled = Prelude.Nothing,+ encryptionEnabled = Prelude.Nothing,+ instanceRole = Prelude.Nothing,+ instanceType = Prelude.Nothing,+ warmEnabled = Prelude.Nothing+ }++-- | Whether fine-grained access control is supported for the instance type.+instanceTypeDetails_advancedSecurityEnabled :: Lens.Lens' InstanceTypeDetails (Prelude.Maybe Prelude.Bool)+instanceTypeDetails_advancedSecurityEnabled = Lens.lens (\InstanceTypeDetails' {advancedSecurityEnabled} -> advancedSecurityEnabled) (\s@InstanceTypeDetails' {} a -> s {advancedSecurityEnabled = a} :: InstanceTypeDetails)++-- | Whether logging is supported for the instance type.+instanceTypeDetails_appLogsEnabled :: Lens.Lens' InstanceTypeDetails (Prelude.Maybe Prelude.Bool)+instanceTypeDetails_appLogsEnabled = Lens.lens (\InstanceTypeDetails' {appLogsEnabled} -> appLogsEnabled) (\s@InstanceTypeDetails' {} a -> s {appLogsEnabled = a} :: InstanceTypeDetails)++-- | Whether Amazon Cognito access is supported for the instance type.+instanceTypeDetails_cognitoEnabled :: Lens.Lens' InstanceTypeDetails (Prelude.Maybe Prelude.Bool)+instanceTypeDetails_cognitoEnabled = Lens.lens (\InstanceTypeDetails' {cognitoEnabled} -> cognitoEnabled) (\s@InstanceTypeDetails' {} a -> s {cognitoEnabled = a} :: InstanceTypeDetails)++-- | Whether encryption at rest and node-to-node encryption are supported for+-- the instance type.+instanceTypeDetails_encryptionEnabled :: Lens.Lens' InstanceTypeDetails (Prelude.Maybe Prelude.Bool)+instanceTypeDetails_encryptionEnabled = Lens.lens (\InstanceTypeDetails' {encryptionEnabled} -> encryptionEnabled) (\s@InstanceTypeDetails' {} a -> s {encryptionEnabled = a} :: InstanceTypeDetails)++-- | Whether the instance acts as a data node, a dedicated master node, or an+-- UltraWarm node.+instanceTypeDetails_instanceRole :: Lens.Lens' InstanceTypeDetails (Prelude.Maybe [Prelude.Text])+instanceTypeDetails_instanceRole = Lens.lens (\InstanceTypeDetails' {instanceRole} -> instanceRole) (\s@InstanceTypeDetails' {} a -> s {instanceRole = a} :: InstanceTypeDetails) Prelude.. Lens.mapping Lens.coerced++-- | The instance type.+instanceTypeDetails_instanceType :: Lens.Lens' InstanceTypeDetails (Prelude.Maybe OpenSearchPartitionInstanceType)+instanceTypeDetails_instanceType = Lens.lens (\InstanceTypeDetails' {instanceType} -> instanceType) (\s@InstanceTypeDetails' {} a -> s {instanceType = a} :: InstanceTypeDetails)++-- | Whether UltraWarm is supported for the instance type.+instanceTypeDetails_warmEnabled :: Lens.Lens' InstanceTypeDetails (Prelude.Maybe Prelude.Bool)+instanceTypeDetails_warmEnabled = Lens.lens (\InstanceTypeDetails' {warmEnabled} -> warmEnabled) (\s@InstanceTypeDetails' {} a -> s {warmEnabled = a} :: InstanceTypeDetails)++instance Data.FromJSON InstanceTypeDetails where+ parseJSON =+ Data.withObject+ "InstanceTypeDetails"+ ( \x ->+ InstanceTypeDetails'+ Prelude.<$> (x Data..:? "AdvancedSecurityEnabled")+ Prelude.<*> (x Data..:? "AppLogsEnabled")+ Prelude.<*> (x Data..:? "CognitoEnabled")+ Prelude.<*> (x Data..:? "EncryptionEnabled")+ Prelude.<*> (x Data..:? "InstanceRole" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "InstanceType")+ Prelude.<*> (x Data..:? "WarmEnabled")+ )++instance Prelude.Hashable InstanceTypeDetails where+ hashWithSalt _salt InstanceTypeDetails' {..} =+ _salt+ `Prelude.hashWithSalt` advancedSecurityEnabled+ `Prelude.hashWithSalt` appLogsEnabled+ `Prelude.hashWithSalt` cognitoEnabled+ `Prelude.hashWithSalt` encryptionEnabled+ `Prelude.hashWithSalt` instanceRole+ `Prelude.hashWithSalt` instanceType+ `Prelude.hashWithSalt` warmEnabled++instance Prelude.NFData InstanceTypeDetails where+ rnf InstanceTypeDetails' {..} =+ Prelude.rnf advancedSecurityEnabled+ `Prelude.seq` Prelude.rnf appLogsEnabled+ `Prelude.seq` Prelude.rnf cognitoEnabled+ `Prelude.seq` Prelude.rnf encryptionEnabled+ `Prelude.seq` Prelude.rnf instanceRole+ `Prelude.seq` Prelude.rnf instanceType+ `Prelude.seq` Prelude.rnf warmEnabled
+ gen/Amazonka/OpenSearch/Types/Limits.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.OpenSearch.Types.Limits+-- 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.OpenSearch.Types.Limits where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.AdditionalLimit+import Amazonka.OpenSearch.Types.InstanceLimits+import Amazonka.OpenSearch.Types.StorageType+import qualified Amazonka.Prelude as Prelude++-- | Limits for a given instance type and for each of its roles.+--+-- /See:/ 'newLimits' smart constructor.+data Limits = Limits'+ { -- | List of additional limits that are specific to a given instance type for+ -- each of its instance roles.+ additionalLimits :: Prelude.Maybe [AdditionalLimit],+ -- | The limits for a given instance type.+ instanceLimits :: Prelude.Maybe InstanceLimits,+ -- | Storage-related attributes that are available for a given instance type.+ storageTypes :: Prelude.Maybe [StorageType]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Limits' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'additionalLimits', 'limits_additionalLimits' - List of additional limits that are specific to a given instance type for+-- each of its instance roles.+--+-- 'instanceLimits', 'limits_instanceLimits' - The limits for a given instance type.+--+-- 'storageTypes', 'limits_storageTypes' - Storage-related attributes that are available for a given instance type.+newLimits ::+ Limits+newLimits =+ Limits'+ { additionalLimits = Prelude.Nothing,+ instanceLimits = Prelude.Nothing,+ storageTypes = Prelude.Nothing+ }++-- | List of additional limits that are specific to a given instance type for+-- each of its instance roles.+limits_additionalLimits :: Lens.Lens' Limits (Prelude.Maybe [AdditionalLimit])+limits_additionalLimits = Lens.lens (\Limits' {additionalLimits} -> additionalLimits) (\s@Limits' {} a -> s {additionalLimits = a} :: Limits) Prelude.. Lens.mapping Lens.coerced++-- | The limits for a given instance type.+limits_instanceLimits :: Lens.Lens' Limits (Prelude.Maybe InstanceLimits)+limits_instanceLimits = Lens.lens (\Limits' {instanceLimits} -> instanceLimits) (\s@Limits' {} a -> s {instanceLimits = a} :: Limits)++-- | Storage-related attributes that are available for a given instance type.+limits_storageTypes :: Lens.Lens' Limits (Prelude.Maybe [StorageType])+limits_storageTypes = Lens.lens (\Limits' {storageTypes} -> storageTypes) (\s@Limits' {} a -> s {storageTypes = a} :: Limits) Prelude.. Lens.mapping Lens.coerced++instance Data.FromJSON Limits where+ parseJSON =+ Data.withObject+ "Limits"+ ( \x ->+ Limits'+ Prelude.<$> ( x+ Data..:? "AdditionalLimits"+ Data..!= Prelude.mempty+ )+ Prelude.<*> (x Data..:? "InstanceLimits")+ Prelude.<*> (x Data..:? "StorageTypes" Data..!= Prelude.mempty)+ )++instance Prelude.Hashable Limits where+ hashWithSalt _salt Limits' {..} =+ _salt+ `Prelude.hashWithSalt` additionalLimits+ `Prelude.hashWithSalt` instanceLimits+ `Prelude.hashWithSalt` storageTypes++instance Prelude.NFData Limits where+ rnf Limits' {..} =+ Prelude.rnf additionalLimits+ `Prelude.seq` Prelude.rnf instanceLimits+ `Prelude.seq` Prelude.rnf storageTypes
+ gen/Amazonka/OpenSearch/Types/LogPublishingOption.hs view
@@ -0,0 +1,104 @@+{-# 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.OpenSearch.Types.LogPublishingOption+-- 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.OpenSearch.Types.LogPublishingOption 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++-- | Specifies whether the Amazon OpenSearch Service domain publishes the+-- OpenSearch application and slow logs to Amazon CloudWatch. For more+-- information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/createdomain-configure-slow-logs.html Monitoring OpenSearch logs with Amazon CloudWatch Logs>.+--+-- After you enable log publishing, you still have to enable the collection+-- of slow logs using the OpenSearch REST API.+--+-- /See:/ 'newLogPublishingOption' smart constructor.+data LogPublishingOption = LogPublishingOption'+ { -- | The Amazon Resource Name (ARN) of the CloudWatch Logs group to publish+ -- logs to.+ cloudWatchLogsLogGroupArn :: Prelude.Maybe Prelude.Text,+ -- | Whether the log should be published.+ enabled :: Prelude.Maybe Prelude.Bool+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'LogPublishingOption' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'cloudWatchLogsLogGroupArn', 'logPublishingOption_cloudWatchLogsLogGroupArn' - The Amazon Resource Name (ARN) of the CloudWatch Logs group to publish+-- logs to.+--+-- 'enabled', 'logPublishingOption_enabled' - Whether the log should be published.+newLogPublishingOption ::+ LogPublishingOption+newLogPublishingOption =+ LogPublishingOption'+ { cloudWatchLogsLogGroupArn =+ Prelude.Nothing,+ enabled = Prelude.Nothing+ }++-- | The Amazon Resource Name (ARN) of the CloudWatch Logs group to publish+-- logs to.+logPublishingOption_cloudWatchLogsLogGroupArn :: Lens.Lens' LogPublishingOption (Prelude.Maybe Prelude.Text)+logPublishingOption_cloudWatchLogsLogGroupArn = Lens.lens (\LogPublishingOption' {cloudWatchLogsLogGroupArn} -> cloudWatchLogsLogGroupArn) (\s@LogPublishingOption' {} a -> s {cloudWatchLogsLogGroupArn = a} :: LogPublishingOption)++-- | Whether the log should be published.+logPublishingOption_enabled :: Lens.Lens' LogPublishingOption (Prelude.Maybe Prelude.Bool)+logPublishingOption_enabled = Lens.lens (\LogPublishingOption' {enabled} -> enabled) (\s@LogPublishingOption' {} a -> s {enabled = a} :: LogPublishingOption)++instance Data.FromJSON LogPublishingOption where+ parseJSON =+ Data.withObject+ "LogPublishingOption"+ ( \x ->+ LogPublishingOption'+ Prelude.<$> (x Data..:? "CloudWatchLogsLogGroupArn")+ Prelude.<*> (x Data..:? "Enabled")+ )++instance Prelude.Hashable LogPublishingOption where+ hashWithSalt _salt LogPublishingOption' {..} =+ _salt+ `Prelude.hashWithSalt` cloudWatchLogsLogGroupArn+ `Prelude.hashWithSalt` enabled++instance Prelude.NFData LogPublishingOption where+ rnf LogPublishingOption' {..} =+ Prelude.rnf cloudWatchLogsLogGroupArn+ `Prelude.seq` Prelude.rnf enabled++instance Data.ToJSON LogPublishingOption where+ toJSON LogPublishingOption' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("CloudWatchLogsLogGroupArn" Data..=)+ Prelude.<$> cloudWatchLogsLogGroupArn,+ ("Enabled" Data..=) Prelude.<$> enabled+ ]+ )
+ gen/Amazonka/OpenSearch/Types/LogPublishingOptionsStatus.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.OpenSearch.Types.LogPublishingOptionsStatus+-- 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.OpenSearch.Types.LogPublishingOptionsStatus where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.LogPublishingOption+import Amazonka.OpenSearch.Types.LogType+import Amazonka.OpenSearch.Types.OptionStatus+import qualified Amazonka.Prelude as Prelude++-- | The configured log publishing options for the domain and their current+-- status.+--+-- /See:/ 'newLogPublishingOptionsStatus' smart constructor.+data LogPublishingOptionsStatus = LogPublishingOptionsStatus'+ { -- | The log publishing options configured for the domain.+ options :: Prelude.Maybe (Prelude.HashMap LogType LogPublishingOption),+ -- | The status of the log publishing options for the domain.+ status :: Prelude.Maybe OptionStatus+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'LogPublishingOptionsStatus' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'options', 'logPublishingOptionsStatus_options' - The log publishing options configured for the domain.+--+-- 'status', 'logPublishingOptionsStatus_status' - The status of the log publishing options for the domain.+newLogPublishingOptionsStatus ::+ LogPublishingOptionsStatus+newLogPublishingOptionsStatus =+ LogPublishingOptionsStatus'+ { options =+ Prelude.Nothing,+ status = Prelude.Nothing+ }++-- | The log publishing options configured for the domain.+logPublishingOptionsStatus_options :: Lens.Lens' LogPublishingOptionsStatus (Prelude.Maybe (Prelude.HashMap LogType LogPublishingOption))+logPublishingOptionsStatus_options = Lens.lens (\LogPublishingOptionsStatus' {options} -> options) (\s@LogPublishingOptionsStatus' {} a -> s {options = a} :: LogPublishingOptionsStatus) Prelude.. Lens.mapping Lens.coerced++-- | The status of the log publishing options for the domain.+logPublishingOptionsStatus_status :: Lens.Lens' LogPublishingOptionsStatus (Prelude.Maybe OptionStatus)+logPublishingOptionsStatus_status = Lens.lens (\LogPublishingOptionsStatus' {status} -> status) (\s@LogPublishingOptionsStatus' {} a -> s {status = a} :: LogPublishingOptionsStatus)++instance Data.FromJSON LogPublishingOptionsStatus where+ parseJSON =+ Data.withObject+ "LogPublishingOptionsStatus"+ ( \x ->+ LogPublishingOptionsStatus'+ Prelude.<$> (x Data..:? "Options" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "Status")+ )++instance Prelude.Hashable LogPublishingOptionsStatus where+ hashWithSalt _salt LogPublishingOptionsStatus' {..} =+ _salt+ `Prelude.hashWithSalt` options+ `Prelude.hashWithSalt` status++instance Prelude.NFData LogPublishingOptionsStatus where+ rnf LogPublishingOptionsStatus' {..} =+ Prelude.rnf options+ `Prelude.seq` Prelude.rnf status
+ gen/Amazonka/OpenSearch/Types/LogType.hs view
@@ -0,0 +1,94 @@+{-# 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.OpenSearch.Types.LogType+-- 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.OpenSearch.Types.LogType+ ( LogType+ ( ..,+ LogType_AUDIT_LOGS,+ LogType_ES_APPLICATION_LOGS,+ LogType_INDEX_SLOW_LOGS,+ LogType_SEARCH_SLOW_LOGS+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | The type of log file. Can be one of the following:+--+-- - __INDEX_SLOW_LOGS__ - Index slow logs contain insert requests that+-- took more time than the configured index query log threshold to+-- execute.+--+-- - __SEARCH_SLOW_LOGS__ - Search slow logs contain search queries that+-- took more time than the configured search query log threshold to+-- execute.+--+-- - __ES_APPLICATION_LOGS__ - OpenSearch application logs contain+-- information about errors and warnings raised during the operation of+-- the service and can be useful for troubleshooting.+--+-- - __AUDIT_LOGS__ - Audit logs contain records of user requests for+-- access to the domain.+newtype LogType = LogType' {fromLogType :: 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 LogType_AUDIT_LOGS :: LogType+pattern LogType_AUDIT_LOGS = LogType' "AUDIT_LOGS"++pattern LogType_ES_APPLICATION_LOGS :: LogType+pattern LogType_ES_APPLICATION_LOGS = LogType' "ES_APPLICATION_LOGS"++pattern LogType_INDEX_SLOW_LOGS :: LogType+pattern LogType_INDEX_SLOW_LOGS = LogType' "INDEX_SLOW_LOGS"++pattern LogType_SEARCH_SLOW_LOGS :: LogType+pattern LogType_SEARCH_SLOW_LOGS = LogType' "SEARCH_SLOW_LOGS"++{-# COMPLETE+ LogType_AUDIT_LOGS,+ LogType_ES_APPLICATION_LOGS,+ LogType_INDEX_SLOW_LOGS,+ LogType_SEARCH_SLOW_LOGS,+ LogType'+ #-}
+ gen/Amazonka/OpenSearch/Types/MasterUserOptions.hs view
@@ -0,0 +1,106 @@+{-# 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.OpenSearch.Types.MasterUserOptions+-- 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.OpenSearch.Types.MasterUserOptions 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++-- | Credentials for the master user for a domain.+--+-- /See:/ 'newMasterUserOptions' smart constructor.+data MasterUserOptions = MasterUserOptions'+ { -- | Amazon Resource Name (ARN) for the master user. Only specify if+ -- @InternalUserDatabaseEnabled@ is @false@.+ masterUserARN :: Prelude.Maybe Prelude.Text,+ -- | User name for the master user. Only specify if+ -- @InternalUserDatabaseEnabled@ is @true@.+ masterUserName :: Prelude.Maybe (Data.Sensitive Prelude.Text),+ -- | Password for the master user. Only specify if+ -- @InternalUserDatabaseEnabled@ is @true@.+ masterUserPassword :: Prelude.Maybe (Data.Sensitive Prelude.Text)+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'MasterUserOptions' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'masterUserARN', 'masterUserOptions_masterUserARN' - Amazon Resource Name (ARN) for the master user. Only specify if+-- @InternalUserDatabaseEnabled@ is @false@.+--+-- 'masterUserName', 'masterUserOptions_masterUserName' - User name for the master user. Only specify if+-- @InternalUserDatabaseEnabled@ is @true@.+--+-- 'masterUserPassword', 'masterUserOptions_masterUserPassword' - Password for the master user. Only specify if+-- @InternalUserDatabaseEnabled@ is @true@.+newMasterUserOptions ::+ MasterUserOptions+newMasterUserOptions =+ MasterUserOptions'+ { masterUserARN = Prelude.Nothing,+ masterUserName = Prelude.Nothing,+ masterUserPassword = Prelude.Nothing+ }++-- | Amazon Resource Name (ARN) for the master user. Only specify if+-- @InternalUserDatabaseEnabled@ is @false@.+masterUserOptions_masterUserARN :: Lens.Lens' MasterUserOptions (Prelude.Maybe Prelude.Text)+masterUserOptions_masterUserARN = Lens.lens (\MasterUserOptions' {masterUserARN} -> masterUserARN) (\s@MasterUserOptions' {} a -> s {masterUserARN = a} :: MasterUserOptions)++-- | User name for the master user. Only specify if+-- @InternalUserDatabaseEnabled@ is @true@.+masterUserOptions_masterUserName :: Lens.Lens' MasterUserOptions (Prelude.Maybe Prelude.Text)+masterUserOptions_masterUserName = Lens.lens (\MasterUserOptions' {masterUserName} -> masterUserName) (\s@MasterUserOptions' {} a -> s {masterUserName = a} :: MasterUserOptions) Prelude.. Lens.mapping Data._Sensitive++-- | Password for the master user. Only specify if+-- @InternalUserDatabaseEnabled@ is @true@.+masterUserOptions_masterUserPassword :: Lens.Lens' MasterUserOptions (Prelude.Maybe Prelude.Text)+masterUserOptions_masterUserPassword = Lens.lens (\MasterUserOptions' {masterUserPassword} -> masterUserPassword) (\s@MasterUserOptions' {} a -> s {masterUserPassword = a} :: MasterUserOptions) Prelude.. Lens.mapping Data._Sensitive++instance Prelude.Hashable MasterUserOptions where+ hashWithSalt _salt MasterUserOptions' {..} =+ _salt+ `Prelude.hashWithSalt` masterUserARN+ `Prelude.hashWithSalt` masterUserName+ `Prelude.hashWithSalt` masterUserPassword++instance Prelude.NFData MasterUserOptions where+ rnf MasterUserOptions' {..} =+ Prelude.rnf masterUserARN+ `Prelude.seq` Prelude.rnf masterUserName+ `Prelude.seq` Prelude.rnf masterUserPassword++instance Data.ToJSON MasterUserOptions where+ toJSON MasterUserOptions' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("MasterUserARN" Data..=) Prelude.<$> masterUserARN,+ ("MasterUserName" Data..=)+ Prelude.<$> masterUserName,+ ("MasterUserPassword" Data..=)+ Prelude.<$> masterUserPassword+ ]+ )
+ gen/Amazonka/OpenSearch/Types/NodeToNodeEncryptionOptions.hs view
@@ -0,0 +1,80 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.OpenSearch.Types.NodeToNodeEncryptionOptions+-- 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.OpenSearch.Types.NodeToNodeEncryptionOptions 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++-- | Enables or disables node-to-node encryption. For more information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/ntn.html Node-to-node encryption for Amazon OpenSearch Service>.+--+-- /See:/ 'newNodeToNodeEncryptionOptions' smart constructor.+data NodeToNodeEncryptionOptions = NodeToNodeEncryptionOptions'+ { -- | True to enable node-to-node encryption.+ enabled :: Prelude.Maybe Prelude.Bool+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'NodeToNodeEncryptionOptions' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'enabled', 'nodeToNodeEncryptionOptions_enabled' - True to enable node-to-node encryption.+newNodeToNodeEncryptionOptions ::+ NodeToNodeEncryptionOptions+newNodeToNodeEncryptionOptions =+ NodeToNodeEncryptionOptions'+ { enabled =+ Prelude.Nothing+ }++-- | True to enable node-to-node encryption.+nodeToNodeEncryptionOptions_enabled :: Lens.Lens' NodeToNodeEncryptionOptions (Prelude.Maybe Prelude.Bool)+nodeToNodeEncryptionOptions_enabled = Lens.lens (\NodeToNodeEncryptionOptions' {enabled} -> enabled) (\s@NodeToNodeEncryptionOptions' {} a -> s {enabled = a} :: NodeToNodeEncryptionOptions)++instance Data.FromJSON NodeToNodeEncryptionOptions where+ parseJSON =+ Data.withObject+ "NodeToNodeEncryptionOptions"+ ( \x ->+ NodeToNodeEncryptionOptions'+ Prelude.<$> (x Data..:? "Enabled")+ )++instance Prelude.Hashable NodeToNodeEncryptionOptions where+ hashWithSalt _salt NodeToNodeEncryptionOptions' {..} =+ _salt `Prelude.hashWithSalt` enabled++instance Prelude.NFData NodeToNodeEncryptionOptions where+ rnf NodeToNodeEncryptionOptions' {..} =+ Prelude.rnf enabled++instance Data.ToJSON NodeToNodeEncryptionOptions where+ toJSON NodeToNodeEncryptionOptions' {..} =+ Data.object+ ( Prelude.catMaybes+ [("Enabled" Data..=) Prelude.<$> enabled]+ )
+ gen/Amazonka/OpenSearch/Types/NodeToNodeEncryptionOptionsStatus.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.OpenSearch.Types.NodeToNodeEncryptionOptionsStatus+-- 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.OpenSearch.Types.NodeToNodeEncryptionOptionsStatus where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.NodeToNodeEncryptionOptions+import Amazonka.OpenSearch.Types.OptionStatus+import qualified Amazonka.Prelude as Prelude++-- | Status of the node-to-node encryption options for the specified domain.+--+-- /See:/ 'newNodeToNodeEncryptionOptionsStatus' smart constructor.+data NodeToNodeEncryptionOptionsStatus = NodeToNodeEncryptionOptionsStatus'+ { -- | The node-to-node encryption options for the specified domain.+ options :: NodeToNodeEncryptionOptions,+ -- | The status of the node-to-node encryption options for the specified+ -- domain.+ status :: OptionStatus+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'NodeToNodeEncryptionOptionsStatus' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'options', 'nodeToNodeEncryptionOptionsStatus_options' - The node-to-node encryption options for the specified domain.+--+-- 'status', 'nodeToNodeEncryptionOptionsStatus_status' - The status of the node-to-node encryption options for the specified+-- domain.+newNodeToNodeEncryptionOptionsStatus ::+ -- | 'options'+ NodeToNodeEncryptionOptions ->+ -- | 'status'+ OptionStatus ->+ NodeToNodeEncryptionOptionsStatus+newNodeToNodeEncryptionOptionsStatus+ pOptions_+ pStatus_ =+ NodeToNodeEncryptionOptionsStatus'+ { options =+ pOptions_,+ status = pStatus_+ }++-- | The node-to-node encryption options for the specified domain.+nodeToNodeEncryptionOptionsStatus_options :: Lens.Lens' NodeToNodeEncryptionOptionsStatus NodeToNodeEncryptionOptions+nodeToNodeEncryptionOptionsStatus_options = Lens.lens (\NodeToNodeEncryptionOptionsStatus' {options} -> options) (\s@NodeToNodeEncryptionOptionsStatus' {} a -> s {options = a} :: NodeToNodeEncryptionOptionsStatus)++-- | The status of the node-to-node encryption options for the specified+-- domain.+nodeToNodeEncryptionOptionsStatus_status :: Lens.Lens' NodeToNodeEncryptionOptionsStatus OptionStatus+nodeToNodeEncryptionOptionsStatus_status = Lens.lens (\NodeToNodeEncryptionOptionsStatus' {status} -> status) (\s@NodeToNodeEncryptionOptionsStatus' {} a -> s {status = a} :: NodeToNodeEncryptionOptionsStatus)++instance+ Data.FromJSON+ NodeToNodeEncryptionOptionsStatus+ where+ parseJSON =+ Data.withObject+ "NodeToNodeEncryptionOptionsStatus"+ ( \x ->+ NodeToNodeEncryptionOptionsStatus'+ Prelude.<$> (x Data..: "Options")+ Prelude.<*> (x Data..: "Status")+ )++instance+ Prelude.Hashable+ NodeToNodeEncryptionOptionsStatus+ where+ hashWithSalt+ _salt+ NodeToNodeEncryptionOptionsStatus' {..} =+ _salt+ `Prelude.hashWithSalt` options+ `Prelude.hashWithSalt` status++instance+ Prelude.NFData+ NodeToNodeEncryptionOptionsStatus+ where+ rnf NodeToNodeEncryptionOptionsStatus' {..} =+ Prelude.rnf options+ `Prelude.seq` Prelude.rnf status
+ gen/Amazonka/OpenSearch/Types/OpenSearchPartitionInstanceType.hs view
@@ -0,0 +1,536 @@+{-# 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.OpenSearch.Types.OpenSearchPartitionInstanceType+-- 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.OpenSearch.Types.OpenSearchPartitionInstanceType+ ( OpenSearchPartitionInstanceType+ ( ..,+ OpenSearchPartitionInstanceType_C4_2xlarge_search,+ OpenSearchPartitionInstanceType_C4_4xlarge_search,+ OpenSearchPartitionInstanceType_C4_8xlarge_search,+ OpenSearchPartitionInstanceType_C4_large_search,+ OpenSearchPartitionInstanceType_C4_xlarge_search,+ OpenSearchPartitionInstanceType_C5_18xlarge_search,+ OpenSearchPartitionInstanceType_C5_2xlarge_search,+ OpenSearchPartitionInstanceType_C5_4xlarge_search,+ OpenSearchPartitionInstanceType_C5_9xlarge_search,+ OpenSearchPartitionInstanceType_C5_large_search,+ OpenSearchPartitionInstanceType_C5_xlarge_search,+ OpenSearchPartitionInstanceType_C6g_12xlarge_search,+ OpenSearchPartitionInstanceType_C6g_2xlarge_search,+ OpenSearchPartitionInstanceType_C6g_4xlarge_search,+ OpenSearchPartitionInstanceType_C6g_8xlarge_search,+ OpenSearchPartitionInstanceType_C6g_large_search,+ OpenSearchPartitionInstanceType_C6g_xlarge_search,+ OpenSearchPartitionInstanceType_D2_2xlarge_search,+ OpenSearchPartitionInstanceType_D2_4xlarge_search,+ OpenSearchPartitionInstanceType_D2_8xlarge_search,+ OpenSearchPartitionInstanceType_D2_xlarge_search,+ OpenSearchPartitionInstanceType_I2_2xlarge_search,+ OpenSearchPartitionInstanceType_I2_xlarge_search,+ OpenSearchPartitionInstanceType_I3_16xlarge_search,+ OpenSearchPartitionInstanceType_I3_2xlarge_search,+ OpenSearchPartitionInstanceType_I3_4xlarge_search,+ OpenSearchPartitionInstanceType_I3_8xlarge_search,+ OpenSearchPartitionInstanceType_I3_large_search,+ OpenSearchPartitionInstanceType_I3_xlarge_search,+ OpenSearchPartitionInstanceType_M3_2xlarge_search,+ OpenSearchPartitionInstanceType_M3_large_search,+ OpenSearchPartitionInstanceType_M3_medium_search,+ OpenSearchPartitionInstanceType_M3_xlarge_search,+ OpenSearchPartitionInstanceType_M4_10xlarge_search,+ OpenSearchPartitionInstanceType_M4_2xlarge_search,+ OpenSearchPartitionInstanceType_M4_4xlarge_search,+ OpenSearchPartitionInstanceType_M4_large_search,+ OpenSearchPartitionInstanceType_M4_xlarge_search,+ OpenSearchPartitionInstanceType_M5_12xlarge_search,+ OpenSearchPartitionInstanceType_M5_24xlarge_search,+ OpenSearchPartitionInstanceType_M5_2xlarge_search,+ OpenSearchPartitionInstanceType_M5_4xlarge_search,+ OpenSearchPartitionInstanceType_M5_large_search,+ OpenSearchPartitionInstanceType_M5_xlarge_search,+ OpenSearchPartitionInstanceType_M6g_12xlarge_search,+ OpenSearchPartitionInstanceType_M6g_2xlarge_search,+ OpenSearchPartitionInstanceType_M6g_4xlarge_search,+ OpenSearchPartitionInstanceType_M6g_8xlarge_search,+ OpenSearchPartitionInstanceType_M6g_large_search,+ OpenSearchPartitionInstanceType_M6g_xlarge_search,+ OpenSearchPartitionInstanceType_R3_2xlarge_search,+ OpenSearchPartitionInstanceType_R3_4xlarge_search,+ OpenSearchPartitionInstanceType_R3_8xlarge_search,+ OpenSearchPartitionInstanceType_R3_large_search,+ OpenSearchPartitionInstanceType_R3_xlarge_search,+ OpenSearchPartitionInstanceType_R4_16xlarge_search,+ OpenSearchPartitionInstanceType_R4_2xlarge_search,+ OpenSearchPartitionInstanceType_R4_4xlarge_search,+ OpenSearchPartitionInstanceType_R4_8xlarge_search,+ OpenSearchPartitionInstanceType_R4_large_search,+ OpenSearchPartitionInstanceType_R4_xlarge_search,+ OpenSearchPartitionInstanceType_R5_12xlarge_search,+ OpenSearchPartitionInstanceType_R5_24xlarge_search,+ OpenSearchPartitionInstanceType_R5_2xlarge_search,+ OpenSearchPartitionInstanceType_R5_4xlarge_search,+ OpenSearchPartitionInstanceType_R5_large_search,+ OpenSearchPartitionInstanceType_R5_xlarge_search,+ OpenSearchPartitionInstanceType_R6g_12xlarge_search,+ OpenSearchPartitionInstanceType_R6g_2xlarge_search,+ OpenSearchPartitionInstanceType_R6g_4xlarge_search,+ OpenSearchPartitionInstanceType_R6g_8xlarge_search,+ OpenSearchPartitionInstanceType_R6g_large_search,+ OpenSearchPartitionInstanceType_R6g_xlarge_search,+ OpenSearchPartitionInstanceType_R6gd_12xlarge_search,+ OpenSearchPartitionInstanceType_R6gd_16xlarge_search,+ OpenSearchPartitionInstanceType_R6gd_2xlarge_search,+ OpenSearchPartitionInstanceType_R6gd_4xlarge_search,+ OpenSearchPartitionInstanceType_R6gd_8xlarge_search,+ OpenSearchPartitionInstanceType_R6gd_large_search,+ OpenSearchPartitionInstanceType_R6gd_xlarge_search,+ OpenSearchPartitionInstanceType_T2_medium_search,+ OpenSearchPartitionInstanceType_T2_micro_search,+ OpenSearchPartitionInstanceType_T2_small_search,+ OpenSearchPartitionInstanceType_T3_2xlarge_search,+ OpenSearchPartitionInstanceType_T3_large_search,+ OpenSearchPartitionInstanceType_T3_medium_search,+ OpenSearchPartitionInstanceType_T3_micro_search,+ OpenSearchPartitionInstanceType_T3_nano_search,+ OpenSearchPartitionInstanceType_T3_small_search,+ OpenSearchPartitionInstanceType_T3_xlarge_search,+ OpenSearchPartitionInstanceType_T4g_medium_search,+ OpenSearchPartitionInstanceType_T4g_small_search,+ OpenSearchPartitionInstanceType_Ultrawarm1_large_search,+ OpenSearchPartitionInstanceType_Ultrawarm1_medium_search,+ OpenSearchPartitionInstanceType_Ultrawarm1_xlarge_search+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype OpenSearchPartitionInstanceType = OpenSearchPartitionInstanceType'+ { fromOpenSearchPartitionInstanceType ::+ 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 OpenSearchPartitionInstanceType_C4_2xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_C4_2xlarge_search = OpenSearchPartitionInstanceType' "c4.2xlarge.search"++pattern OpenSearchPartitionInstanceType_C4_4xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_C4_4xlarge_search = OpenSearchPartitionInstanceType' "c4.4xlarge.search"++pattern OpenSearchPartitionInstanceType_C4_8xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_C4_8xlarge_search = OpenSearchPartitionInstanceType' "c4.8xlarge.search"++pattern OpenSearchPartitionInstanceType_C4_large_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_C4_large_search = OpenSearchPartitionInstanceType' "c4.large.search"++pattern OpenSearchPartitionInstanceType_C4_xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_C4_xlarge_search = OpenSearchPartitionInstanceType' "c4.xlarge.search"++pattern OpenSearchPartitionInstanceType_C5_18xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_C5_18xlarge_search = OpenSearchPartitionInstanceType' "c5.18xlarge.search"++pattern OpenSearchPartitionInstanceType_C5_2xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_C5_2xlarge_search = OpenSearchPartitionInstanceType' "c5.2xlarge.search"++pattern OpenSearchPartitionInstanceType_C5_4xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_C5_4xlarge_search = OpenSearchPartitionInstanceType' "c5.4xlarge.search"++pattern OpenSearchPartitionInstanceType_C5_9xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_C5_9xlarge_search = OpenSearchPartitionInstanceType' "c5.9xlarge.search"++pattern OpenSearchPartitionInstanceType_C5_large_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_C5_large_search = OpenSearchPartitionInstanceType' "c5.large.search"++pattern OpenSearchPartitionInstanceType_C5_xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_C5_xlarge_search = OpenSearchPartitionInstanceType' "c5.xlarge.search"++pattern OpenSearchPartitionInstanceType_C6g_12xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_C6g_12xlarge_search = OpenSearchPartitionInstanceType' "c6g.12xlarge.search"++pattern OpenSearchPartitionInstanceType_C6g_2xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_C6g_2xlarge_search = OpenSearchPartitionInstanceType' "c6g.2xlarge.search"++pattern OpenSearchPartitionInstanceType_C6g_4xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_C6g_4xlarge_search = OpenSearchPartitionInstanceType' "c6g.4xlarge.search"++pattern OpenSearchPartitionInstanceType_C6g_8xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_C6g_8xlarge_search = OpenSearchPartitionInstanceType' "c6g.8xlarge.search"++pattern OpenSearchPartitionInstanceType_C6g_large_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_C6g_large_search = OpenSearchPartitionInstanceType' "c6g.large.search"++pattern OpenSearchPartitionInstanceType_C6g_xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_C6g_xlarge_search = OpenSearchPartitionInstanceType' "c6g.xlarge.search"++pattern OpenSearchPartitionInstanceType_D2_2xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_D2_2xlarge_search = OpenSearchPartitionInstanceType' "d2.2xlarge.search"++pattern OpenSearchPartitionInstanceType_D2_4xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_D2_4xlarge_search = OpenSearchPartitionInstanceType' "d2.4xlarge.search"++pattern OpenSearchPartitionInstanceType_D2_8xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_D2_8xlarge_search = OpenSearchPartitionInstanceType' "d2.8xlarge.search"++pattern OpenSearchPartitionInstanceType_D2_xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_D2_xlarge_search = OpenSearchPartitionInstanceType' "d2.xlarge.search"++pattern OpenSearchPartitionInstanceType_I2_2xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_I2_2xlarge_search = OpenSearchPartitionInstanceType' "i2.2xlarge.search"++pattern OpenSearchPartitionInstanceType_I2_xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_I2_xlarge_search = OpenSearchPartitionInstanceType' "i2.xlarge.search"++pattern OpenSearchPartitionInstanceType_I3_16xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_I3_16xlarge_search = OpenSearchPartitionInstanceType' "i3.16xlarge.search"++pattern OpenSearchPartitionInstanceType_I3_2xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_I3_2xlarge_search = OpenSearchPartitionInstanceType' "i3.2xlarge.search"++pattern OpenSearchPartitionInstanceType_I3_4xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_I3_4xlarge_search = OpenSearchPartitionInstanceType' "i3.4xlarge.search"++pattern OpenSearchPartitionInstanceType_I3_8xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_I3_8xlarge_search = OpenSearchPartitionInstanceType' "i3.8xlarge.search"++pattern OpenSearchPartitionInstanceType_I3_large_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_I3_large_search = OpenSearchPartitionInstanceType' "i3.large.search"++pattern OpenSearchPartitionInstanceType_I3_xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_I3_xlarge_search = OpenSearchPartitionInstanceType' "i3.xlarge.search"++pattern OpenSearchPartitionInstanceType_M3_2xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_M3_2xlarge_search = OpenSearchPartitionInstanceType' "m3.2xlarge.search"++pattern OpenSearchPartitionInstanceType_M3_large_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_M3_large_search = OpenSearchPartitionInstanceType' "m3.large.search"++pattern OpenSearchPartitionInstanceType_M3_medium_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_M3_medium_search = OpenSearchPartitionInstanceType' "m3.medium.search"++pattern OpenSearchPartitionInstanceType_M3_xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_M3_xlarge_search = OpenSearchPartitionInstanceType' "m3.xlarge.search"++pattern OpenSearchPartitionInstanceType_M4_10xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_M4_10xlarge_search = OpenSearchPartitionInstanceType' "m4.10xlarge.search"++pattern OpenSearchPartitionInstanceType_M4_2xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_M4_2xlarge_search = OpenSearchPartitionInstanceType' "m4.2xlarge.search"++pattern OpenSearchPartitionInstanceType_M4_4xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_M4_4xlarge_search = OpenSearchPartitionInstanceType' "m4.4xlarge.search"++pattern OpenSearchPartitionInstanceType_M4_large_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_M4_large_search = OpenSearchPartitionInstanceType' "m4.large.search"++pattern OpenSearchPartitionInstanceType_M4_xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_M4_xlarge_search = OpenSearchPartitionInstanceType' "m4.xlarge.search"++pattern OpenSearchPartitionInstanceType_M5_12xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_M5_12xlarge_search = OpenSearchPartitionInstanceType' "m5.12xlarge.search"++pattern OpenSearchPartitionInstanceType_M5_24xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_M5_24xlarge_search = OpenSearchPartitionInstanceType' "m5.24xlarge.search"++pattern OpenSearchPartitionInstanceType_M5_2xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_M5_2xlarge_search = OpenSearchPartitionInstanceType' "m5.2xlarge.search"++pattern OpenSearchPartitionInstanceType_M5_4xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_M5_4xlarge_search = OpenSearchPartitionInstanceType' "m5.4xlarge.search"++pattern OpenSearchPartitionInstanceType_M5_large_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_M5_large_search = OpenSearchPartitionInstanceType' "m5.large.search"++pattern OpenSearchPartitionInstanceType_M5_xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_M5_xlarge_search = OpenSearchPartitionInstanceType' "m5.xlarge.search"++pattern OpenSearchPartitionInstanceType_M6g_12xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_M6g_12xlarge_search = OpenSearchPartitionInstanceType' "m6g.12xlarge.search"++pattern OpenSearchPartitionInstanceType_M6g_2xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_M6g_2xlarge_search = OpenSearchPartitionInstanceType' "m6g.2xlarge.search"++pattern OpenSearchPartitionInstanceType_M6g_4xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_M6g_4xlarge_search = OpenSearchPartitionInstanceType' "m6g.4xlarge.search"++pattern OpenSearchPartitionInstanceType_M6g_8xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_M6g_8xlarge_search = OpenSearchPartitionInstanceType' "m6g.8xlarge.search"++pattern OpenSearchPartitionInstanceType_M6g_large_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_M6g_large_search = OpenSearchPartitionInstanceType' "m6g.large.search"++pattern OpenSearchPartitionInstanceType_M6g_xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_M6g_xlarge_search = OpenSearchPartitionInstanceType' "m6g.xlarge.search"++pattern OpenSearchPartitionInstanceType_R3_2xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_R3_2xlarge_search = OpenSearchPartitionInstanceType' "r3.2xlarge.search"++pattern OpenSearchPartitionInstanceType_R3_4xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_R3_4xlarge_search = OpenSearchPartitionInstanceType' "r3.4xlarge.search"++pattern OpenSearchPartitionInstanceType_R3_8xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_R3_8xlarge_search = OpenSearchPartitionInstanceType' "r3.8xlarge.search"++pattern OpenSearchPartitionInstanceType_R3_large_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_R3_large_search = OpenSearchPartitionInstanceType' "r3.large.search"++pattern OpenSearchPartitionInstanceType_R3_xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_R3_xlarge_search = OpenSearchPartitionInstanceType' "r3.xlarge.search"++pattern OpenSearchPartitionInstanceType_R4_16xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_R4_16xlarge_search = OpenSearchPartitionInstanceType' "r4.16xlarge.search"++pattern OpenSearchPartitionInstanceType_R4_2xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_R4_2xlarge_search = OpenSearchPartitionInstanceType' "r4.2xlarge.search"++pattern OpenSearchPartitionInstanceType_R4_4xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_R4_4xlarge_search = OpenSearchPartitionInstanceType' "r4.4xlarge.search"++pattern OpenSearchPartitionInstanceType_R4_8xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_R4_8xlarge_search = OpenSearchPartitionInstanceType' "r4.8xlarge.search"++pattern OpenSearchPartitionInstanceType_R4_large_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_R4_large_search = OpenSearchPartitionInstanceType' "r4.large.search"++pattern OpenSearchPartitionInstanceType_R4_xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_R4_xlarge_search = OpenSearchPartitionInstanceType' "r4.xlarge.search"++pattern OpenSearchPartitionInstanceType_R5_12xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_R5_12xlarge_search = OpenSearchPartitionInstanceType' "r5.12xlarge.search"++pattern OpenSearchPartitionInstanceType_R5_24xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_R5_24xlarge_search = OpenSearchPartitionInstanceType' "r5.24xlarge.search"++pattern OpenSearchPartitionInstanceType_R5_2xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_R5_2xlarge_search = OpenSearchPartitionInstanceType' "r5.2xlarge.search"++pattern OpenSearchPartitionInstanceType_R5_4xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_R5_4xlarge_search = OpenSearchPartitionInstanceType' "r5.4xlarge.search"++pattern OpenSearchPartitionInstanceType_R5_large_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_R5_large_search = OpenSearchPartitionInstanceType' "r5.large.search"++pattern OpenSearchPartitionInstanceType_R5_xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_R5_xlarge_search = OpenSearchPartitionInstanceType' "r5.xlarge.search"++pattern OpenSearchPartitionInstanceType_R6g_12xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_R6g_12xlarge_search = OpenSearchPartitionInstanceType' "r6g.12xlarge.search"++pattern OpenSearchPartitionInstanceType_R6g_2xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_R6g_2xlarge_search = OpenSearchPartitionInstanceType' "r6g.2xlarge.search"++pattern OpenSearchPartitionInstanceType_R6g_4xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_R6g_4xlarge_search = OpenSearchPartitionInstanceType' "r6g.4xlarge.search"++pattern OpenSearchPartitionInstanceType_R6g_8xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_R6g_8xlarge_search = OpenSearchPartitionInstanceType' "r6g.8xlarge.search"++pattern OpenSearchPartitionInstanceType_R6g_large_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_R6g_large_search = OpenSearchPartitionInstanceType' "r6g.large.search"++pattern OpenSearchPartitionInstanceType_R6g_xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_R6g_xlarge_search = OpenSearchPartitionInstanceType' "r6g.xlarge.search"++pattern OpenSearchPartitionInstanceType_R6gd_12xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_R6gd_12xlarge_search = OpenSearchPartitionInstanceType' "r6gd.12xlarge.search"++pattern OpenSearchPartitionInstanceType_R6gd_16xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_R6gd_16xlarge_search = OpenSearchPartitionInstanceType' "r6gd.16xlarge.search"++pattern OpenSearchPartitionInstanceType_R6gd_2xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_R6gd_2xlarge_search = OpenSearchPartitionInstanceType' "r6gd.2xlarge.search"++pattern OpenSearchPartitionInstanceType_R6gd_4xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_R6gd_4xlarge_search = OpenSearchPartitionInstanceType' "r6gd.4xlarge.search"++pattern OpenSearchPartitionInstanceType_R6gd_8xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_R6gd_8xlarge_search = OpenSearchPartitionInstanceType' "r6gd.8xlarge.search"++pattern OpenSearchPartitionInstanceType_R6gd_large_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_R6gd_large_search = OpenSearchPartitionInstanceType' "r6gd.large.search"++pattern OpenSearchPartitionInstanceType_R6gd_xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_R6gd_xlarge_search = OpenSearchPartitionInstanceType' "r6gd.xlarge.search"++pattern OpenSearchPartitionInstanceType_T2_medium_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_T2_medium_search = OpenSearchPartitionInstanceType' "t2.medium.search"++pattern OpenSearchPartitionInstanceType_T2_micro_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_T2_micro_search = OpenSearchPartitionInstanceType' "t2.micro.search"++pattern OpenSearchPartitionInstanceType_T2_small_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_T2_small_search = OpenSearchPartitionInstanceType' "t2.small.search"++pattern OpenSearchPartitionInstanceType_T3_2xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_T3_2xlarge_search = OpenSearchPartitionInstanceType' "t3.2xlarge.search"++pattern OpenSearchPartitionInstanceType_T3_large_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_T3_large_search = OpenSearchPartitionInstanceType' "t3.large.search"++pattern OpenSearchPartitionInstanceType_T3_medium_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_T3_medium_search = OpenSearchPartitionInstanceType' "t3.medium.search"++pattern OpenSearchPartitionInstanceType_T3_micro_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_T3_micro_search = OpenSearchPartitionInstanceType' "t3.micro.search"++pattern OpenSearchPartitionInstanceType_T3_nano_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_T3_nano_search = OpenSearchPartitionInstanceType' "t3.nano.search"++pattern OpenSearchPartitionInstanceType_T3_small_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_T3_small_search = OpenSearchPartitionInstanceType' "t3.small.search"++pattern OpenSearchPartitionInstanceType_T3_xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_T3_xlarge_search = OpenSearchPartitionInstanceType' "t3.xlarge.search"++pattern OpenSearchPartitionInstanceType_T4g_medium_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_T4g_medium_search = OpenSearchPartitionInstanceType' "t4g.medium.search"++pattern OpenSearchPartitionInstanceType_T4g_small_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_T4g_small_search = OpenSearchPartitionInstanceType' "t4g.small.search"++pattern OpenSearchPartitionInstanceType_Ultrawarm1_large_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_Ultrawarm1_large_search = OpenSearchPartitionInstanceType' "ultrawarm1.large.search"++pattern OpenSearchPartitionInstanceType_Ultrawarm1_medium_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_Ultrawarm1_medium_search = OpenSearchPartitionInstanceType' "ultrawarm1.medium.search"++pattern OpenSearchPartitionInstanceType_Ultrawarm1_xlarge_search :: OpenSearchPartitionInstanceType+pattern OpenSearchPartitionInstanceType_Ultrawarm1_xlarge_search = OpenSearchPartitionInstanceType' "ultrawarm1.xlarge.search"++{-# COMPLETE+ OpenSearchPartitionInstanceType_C4_2xlarge_search,+ OpenSearchPartitionInstanceType_C4_4xlarge_search,+ OpenSearchPartitionInstanceType_C4_8xlarge_search,+ OpenSearchPartitionInstanceType_C4_large_search,+ OpenSearchPartitionInstanceType_C4_xlarge_search,+ OpenSearchPartitionInstanceType_C5_18xlarge_search,+ OpenSearchPartitionInstanceType_C5_2xlarge_search,+ OpenSearchPartitionInstanceType_C5_4xlarge_search,+ OpenSearchPartitionInstanceType_C5_9xlarge_search,+ OpenSearchPartitionInstanceType_C5_large_search,+ OpenSearchPartitionInstanceType_C5_xlarge_search,+ OpenSearchPartitionInstanceType_C6g_12xlarge_search,+ OpenSearchPartitionInstanceType_C6g_2xlarge_search,+ OpenSearchPartitionInstanceType_C6g_4xlarge_search,+ OpenSearchPartitionInstanceType_C6g_8xlarge_search,+ OpenSearchPartitionInstanceType_C6g_large_search,+ OpenSearchPartitionInstanceType_C6g_xlarge_search,+ OpenSearchPartitionInstanceType_D2_2xlarge_search,+ OpenSearchPartitionInstanceType_D2_4xlarge_search,+ OpenSearchPartitionInstanceType_D2_8xlarge_search,+ OpenSearchPartitionInstanceType_D2_xlarge_search,+ OpenSearchPartitionInstanceType_I2_2xlarge_search,+ OpenSearchPartitionInstanceType_I2_xlarge_search,+ OpenSearchPartitionInstanceType_I3_16xlarge_search,+ OpenSearchPartitionInstanceType_I3_2xlarge_search,+ OpenSearchPartitionInstanceType_I3_4xlarge_search,+ OpenSearchPartitionInstanceType_I3_8xlarge_search,+ OpenSearchPartitionInstanceType_I3_large_search,+ OpenSearchPartitionInstanceType_I3_xlarge_search,+ OpenSearchPartitionInstanceType_M3_2xlarge_search,+ OpenSearchPartitionInstanceType_M3_large_search,+ OpenSearchPartitionInstanceType_M3_medium_search,+ OpenSearchPartitionInstanceType_M3_xlarge_search,+ OpenSearchPartitionInstanceType_M4_10xlarge_search,+ OpenSearchPartitionInstanceType_M4_2xlarge_search,+ OpenSearchPartitionInstanceType_M4_4xlarge_search,+ OpenSearchPartitionInstanceType_M4_large_search,+ OpenSearchPartitionInstanceType_M4_xlarge_search,+ OpenSearchPartitionInstanceType_M5_12xlarge_search,+ OpenSearchPartitionInstanceType_M5_24xlarge_search,+ OpenSearchPartitionInstanceType_M5_2xlarge_search,+ OpenSearchPartitionInstanceType_M5_4xlarge_search,+ OpenSearchPartitionInstanceType_M5_large_search,+ OpenSearchPartitionInstanceType_M5_xlarge_search,+ OpenSearchPartitionInstanceType_M6g_12xlarge_search,+ OpenSearchPartitionInstanceType_M6g_2xlarge_search,+ OpenSearchPartitionInstanceType_M6g_4xlarge_search,+ OpenSearchPartitionInstanceType_M6g_8xlarge_search,+ OpenSearchPartitionInstanceType_M6g_large_search,+ OpenSearchPartitionInstanceType_M6g_xlarge_search,+ OpenSearchPartitionInstanceType_R3_2xlarge_search,+ OpenSearchPartitionInstanceType_R3_4xlarge_search,+ OpenSearchPartitionInstanceType_R3_8xlarge_search,+ OpenSearchPartitionInstanceType_R3_large_search,+ OpenSearchPartitionInstanceType_R3_xlarge_search,+ OpenSearchPartitionInstanceType_R4_16xlarge_search,+ OpenSearchPartitionInstanceType_R4_2xlarge_search,+ OpenSearchPartitionInstanceType_R4_4xlarge_search,+ OpenSearchPartitionInstanceType_R4_8xlarge_search,+ OpenSearchPartitionInstanceType_R4_large_search,+ OpenSearchPartitionInstanceType_R4_xlarge_search,+ OpenSearchPartitionInstanceType_R5_12xlarge_search,+ OpenSearchPartitionInstanceType_R5_24xlarge_search,+ OpenSearchPartitionInstanceType_R5_2xlarge_search,+ OpenSearchPartitionInstanceType_R5_4xlarge_search,+ OpenSearchPartitionInstanceType_R5_large_search,+ OpenSearchPartitionInstanceType_R5_xlarge_search,+ OpenSearchPartitionInstanceType_R6g_12xlarge_search,+ OpenSearchPartitionInstanceType_R6g_2xlarge_search,+ OpenSearchPartitionInstanceType_R6g_4xlarge_search,+ OpenSearchPartitionInstanceType_R6g_8xlarge_search,+ OpenSearchPartitionInstanceType_R6g_large_search,+ OpenSearchPartitionInstanceType_R6g_xlarge_search,+ OpenSearchPartitionInstanceType_R6gd_12xlarge_search,+ OpenSearchPartitionInstanceType_R6gd_16xlarge_search,+ OpenSearchPartitionInstanceType_R6gd_2xlarge_search,+ OpenSearchPartitionInstanceType_R6gd_4xlarge_search,+ OpenSearchPartitionInstanceType_R6gd_8xlarge_search,+ OpenSearchPartitionInstanceType_R6gd_large_search,+ OpenSearchPartitionInstanceType_R6gd_xlarge_search,+ OpenSearchPartitionInstanceType_T2_medium_search,+ OpenSearchPartitionInstanceType_T2_micro_search,+ OpenSearchPartitionInstanceType_T2_small_search,+ OpenSearchPartitionInstanceType_T3_2xlarge_search,+ OpenSearchPartitionInstanceType_T3_large_search,+ OpenSearchPartitionInstanceType_T3_medium_search,+ OpenSearchPartitionInstanceType_T3_micro_search,+ OpenSearchPartitionInstanceType_T3_nano_search,+ OpenSearchPartitionInstanceType_T3_small_search,+ OpenSearchPartitionInstanceType_T3_xlarge_search,+ OpenSearchPartitionInstanceType_T4g_medium_search,+ OpenSearchPartitionInstanceType_T4g_small_search,+ OpenSearchPartitionInstanceType_Ultrawarm1_large_search,+ OpenSearchPartitionInstanceType_Ultrawarm1_medium_search,+ OpenSearchPartitionInstanceType_Ultrawarm1_xlarge_search,+ OpenSearchPartitionInstanceType'+ #-}
+ gen/Amazonka/OpenSearch/Types/OpenSearchWarmPartitionInstanceType.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.OpenSearch.Types.OpenSearchWarmPartitionInstanceType+-- 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.OpenSearch.Types.OpenSearchWarmPartitionInstanceType+ ( OpenSearchWarmPartitionInstanceType+ ( ..,+ OpenSearchWarmPartitionInstanceType_Ultrawarm1_large_search,+ OpenSearchWarmPartitionInstanceType_Ultrawarm1_medium_search,+ OpenSearchWarmPartitionInstanceType_Ultrawarm1_xlarge_search+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype OpenSearchWarmPartitionInstanceType = OpenSearchWarmPartitionInstanceType'+ { fromOpenSearchWarmPartitionInstanceType ::+ 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 OpenSearchWarmPartitionInstanceType_Ultrawarm1_large_search :: OpenSearchWarmPartitionInstanceType+pattern OpenSearchWarmPartitionInstanceType_Ultrawarm1_large_search = OpenSearchWarmPartitionInstanceType' "ultrawarm1.large.search"++pattern OpenSearchWarmPartitionInstanceType_Ultrawarm1_medium_search :: OpenSearchWarmPartitionInstanceType+pattern OpenSearchWarmPartitionInstanceType_Ultrawarm1_medium_search = OpenSearchWarmPartitionInstanceType' "ultrawarm1.medium.search"++pattern OpenSearchWarmPartitionInstanceType_Ultrawarm1_xlarge_search :: OpenSearchWarmPartitionInstanceType+pattern OpenSearchWarmPartitionInstanceType_Ultrawarm1_xlarge_search = OpenSearchWarmPartitionInstanceType' "ultrawarm1.xlarge.search"++{-# COMPLETE+ OpenSearchWarmPartitionInstanceType_Ultrawarm1_large_search,+ OpenSearchWarmPartitionInstanceType_Ultrawarm1_medium_search,+ OpenSearchWarmPartitionInstanceType_Ultrawarm1_xlarge_search,+ OpenSearchWarmPartitionInstanceType'+ #-}
+ gen/Amazonka/OpenSearch/Types/OptionState.hs view
@@ -0,0 +1,83 @@+{-# 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.OpenSearch.Types.OptionState+-- 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.OpenSearch.Types.OptionState+ ( OptionState+ ( ..,+ OptionState_Active,+ OptionState_Processing,+ OptionState_RequiresIndexDocuments+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | The state of a requested domain configuration change. Can be one of the+-- following:+--+-- - __Processing__ - The requested change is still in progress.+--+-- - __Active__ - The requested change is processed and deployed to the+-- domain.+newtype OptionState = OptionState'+ { fromOptionState ::+ 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 OptionState_Active :: OptionState+pattern OptionState_Active = OptionState' "Active"++pattern OptionState_Processing :: OptionState+pattern OptionState_Processing = OptionState' "Processing"++pattern OptionState_RequiresIndexDocuments :: OptionState+pattern OptionState_RequiresIndexDocuments = OptionState' "RequiresIndexDocuments"++{-# COMPLETE+ OptionState_Active,+ OptionState_Processing,+ OptionState_RequiresIndexDocuments,+ OptionState'+ #-}
+ gen/Amazonka/OpenSearch/Types/OptionStatus.hs view
@@ -0,0 +1,127 @@+{-# 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.OpenSearch.Types.OptionStatus+-- 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.OpenSearch.Types.OptionStatus where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.OptionState+import qualified Amazonka.Prelude as Prelude++-- | Provides the current status of an entity.+--+-- /See:/ 'newOptionStatus' smart constructor.+data OptionStatus = OptionStatus'+ { -- | Indicates whether the entity is being deleted.+ pendingDeletion :: Prelude.Maybe Prelude.Bool,+ -- | The latest version of the entity.+ updateVersion :: Prelude.Maybe Prelude.Natural,+ -- | The timestamp when the entity was created.+ creationDate :: Data.POSIX,+ -- | The timestamp of the last time the entity was updated.+ updateDate :: Data.POSIX,+ -- | The state of the entity.+ state :: OptionState+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'OptionStatus' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'pendingDeletion', 'optionStatus_pendingDeletion' - Indicates whether the entity is being deleted.+--+-- 'updateVersion', 'optionStatus_updateVersion' - The latest version of the entity.+--+-- 'creationDate', 'optionStatus_creationDate' - The timestamp when the entity was created.+--+-- 'updateDate', 'optionStatus_updateDate' - The timestamp of the last time the entity was updated.+--+-- 'state', 'optionStatus_state' - The state of the entity.+newOptionStatus ::+ -- | 'creationDate'+ Prelude.UTCTime ->+ -- | 'updateDate'+ Prelude.UTCTime ->+ -- | 'state'+ OptionState ->+ OptionStatus+newOptionStatus pCreationDate_ pUpdateDate_ pState_ =+ OptionStatus'+ { pendingDeletion = Prelude.Nothing,+ updateVersion = Prelude.Nothing,+ creationDate = Data._Time Lens.# pCreationDate_,+ updateDate = Data._Time Lens.# pUpdateDate_,+ state = pState_+ }++-- | Indicates whether the entity is being deleted.+optionStatus_pendingDeletion :: Lens.Lens' OptionStatus (Prelude.Maybe Prelude.Bool)+optionStatus_pendingDeletion = Lens.lens (\OptionStatus' {pendingDeletion} -> pendingDeletion) (\s@OptionStatus' {} a -> s {pendingDeletion = a} :: OptionStatus)++-- | The latest version of the entity.+optionStatus_updateVersion :: Lens.Lens' OptionStatus (Prelude.Maybe Prelude.Natural)+optionStatus_updateVersion = Lens.lens (\OptionStatus' {updateVersion} -> updateVersion) (\s@OptionStatus' {} a -> s {updateVersion = a} :: OptionStatus)++-- | The timestamp when the entity was created.+optionStatus_creationDate :: Lens.Lens' OptionStatus Prelude.UTCTime+optionStatus_creationDate = Lens.lens (\OptionStatus' {creationDate} -> creationDate) (\s@OptionStatus' {} a -> s {creationDate = a} :: OptionStatus) Prelude.. Data._Time++-- | The timestamp of the last time the entity was updated.+optionStatus_updateDate :: Lens.Lens' OptionStatus Prelude.UTCTime+optionStatus_updateDate = Lens.lens (\OptionStatus' {updateDate} -> updateDate) (\s@OptionStatus' {} a -> s {updateDate = a} :: OptionStatus) Prelude.. Data._Time++-- | The state of the entity.+optionStatus_state :: Lens.Lens' OptionStatus OptionState+optionStatus_state = Lens.lens (\OptionStatus' {state} -> state) (\s@OptionStatus' {} a -> s {state = a} :: OptionStatus)++instance Data.FromJSON OptionStatus where+ parseJSON =+ Data.withObject+ "OptionStatus"+ ( \x ->+ OptionStatus'+ Prelude.<$> (x Data..:? "PendingDeletion")+ Prelude.<*> (x Data..:? "UpdateVersion")+ Prelude.<*> (x Data..: "CreationDate")+ Prelude.<*> (x Data..: "UpdateDate")+ Prelude.<*> (x Data..: "State")+ )++instance Prelude.Hashable OptionStatus where+ hashWithSalt _salt OptionStatus' {..} =+ _salt+ `Prelude.hashWithSalt` pendingDeletion+ `Prelude.hashWithSalt` updateVersion+ `Prelude.hashWithSalt` creationDate+ `Prelude.hashWithSalt` updateDate+ `Prelude.hashWithSalt` state++instance Prelude.NFData OptionStatus where+ rnf OptionStatus' {..} =+ Prelude.rnf pendingDeletion+ `Prelude.seq` Prelude.rnf updateVersion+ `Prelude.seq` Prelude.rnf creationDate+ `Prelude.seq` Prelude.rnf updateDate+ `Prelude.seq` Prelude.rnf state
+ gen/Amazonka/OpenSearch/Types/OutboundConnection.hs view
@@ -0,0 +1,123 @@+{-# 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.OpenSearch.Types.OutboundConnection+-- 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.OpenSearch.Types.OutboundConnection where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.DomainInformationContainer+import Amazonka.OpenSearch.Types.OutboundConnectionStatus+import qualified Amazonka.Prelude as Prelude++-- | Specifies details about an outbound cross-cluster connection.+--+-- /See:/ 'newOutboundConnection' smart constructor.+data OutboundConnection = OutboundConnection'+ { -- | Name of the connection.+ connectionAlias :: Prelude.Maybe Prelude.Text,+ -- | Unique identifier of the connection.+ connectionId :: Prelude.Maybe Prelude.Text,+ -- | Status of the connection.+ connectionStatus :: Prelude.Maybe OutboundConnectionStatus,+ -- | Information about the source (local) domain.+ localDomainInfo :: Prelude.Maybe DomainInformationContainer,+ -- | Information about the destination (remote) domain.+ remoteDomainInfo :: Prelude.Maybe DomainInformationContainer+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'OutboundConnection' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'connectionAlias', 'outboundConnection_connectionAlias' - Name of the connection.+--+-- 'connectionId', 'outboundConnection_connectionId' - Unique identifier of the connection.+--+-- 'connectionStatus', 'outboundConnection_connectionStatus' - Status of the connection.+--+-- 'localDomainInfo', 'outboundConnection_localDomainInfo' - Information about the source (local) domain.+--+-- 'remoteDomainInfo', 'outboundConnection_remoteDomainInfo' - Information about the destination (remote) domain.+newOutboundConnection ::+ OutboundConnection+newOutboundConnection =+ OutboundConnection'+ { connectionAlias =+ Prelude.Nothing,+ connectionId = Prelude.Nothing,+ connectionStatus = Prelude.Nothing,+ localDomainInfo = Prelude.Nothing,+ remoteDomainInfo = Prelude.Nothing+ }++-- | Name of the connection.+outboundConnection_connectionAlias :: Lens.Lens' OutboundConnection (Prelude.Maybe Prelude.Text)+outboundConnection_connectionAlias = Lens.lens (\OutboundConnection' {connectionAlias} -> connectionAlias) (\s@OutboundConnection' {} a -> s {connectionAlias = a} :: OutboundConnection)++-- | Unique identifier of the connection.+outboundConnection_connectionId :: Lens.Lens' OutboundConnection (Prelude.Maybe Prelude.Text)+outboundConnection_connectionId = Lens.lens (\OutboundConnection' {connectionId} -> connectionId) (\s@OutboundConnection' {} a -> s {connectionId = a} :: OutboundConnection)++-- | Status of the connection.+outboundConnection_connectionStatus :: Lens.Lens' OutboundConnection (Prelude.Maybe OutboundConnectionStatus)+outboundConnection_connectionStatus = Lens.lens (\OutboundConnection' {connectionStatus} -> connectionStatus) (\s@OutboundConnection' {} a -> s {connectionStatus = a} :: OutboundConnection)++-- | Information about the source (local) domain.+outboundConnection_localDomainInfo :: Lens.Lens' OutboundConnection (Prelude.Maybe DomainInformationContainer)+outboundConnection_localDomainInfo = Lens.lens (\OutboundConnection' {localDomainInfo} -> localDomainInfo) (\s@OutboundConnection' {} a -> s {localDomainInfo = a} :: OutboundConnection)++-- | Information about the destination (remote) domain.+outboundConnection_remoteDomainInfo :: Lens.Lens' OutboundConnection (Prelude.Maybe DomainInformationContainer)+outboundConnection_remoteDomainInfo = Lens.lens (\OutboundConnection' {remoteDomainInfo} -> remoteDomainInfo) (\s@OutboundConnection' {} a -> s {remoteDomainInfo = a} :: OutboundConnection)++instance Data.FromJSON OutboundConnection where+ parseJSON =+ Data.withObject+ "OutboundConnection"+ ( \x ->+ OutboundConnection'+ Prelude.<$> (x Data..:? "ConnectionAlias")+ Prelude.<*> (x Data..:? "ConnectionId")+ Prelude.<*> (x Data..:? "ConnectionStatus")+ Prelude.<*> (x Data..:? "LocalDomainInfo")+ Prelude.<*> (x Data..:? "RemoteDomainInfo")+ )++instance Prelude.Hashable OutboundConnection where+ hashWithSalt _salt OutboundConnection' {..} =+ _salt+ `Prelude.hashWithSalt` connectionAlias+ `Prelude.hashWithSalt` connectionId+ `Prelude.hashWithSalt` connectionStatus+ `Prelude.hashWithSalt` localDomainInfo+ `Prelude.hashWithSalt` remoteDomainInfo++instance Prelude.NFData OutboundConnection where+ rnf OutboundConnection' {..} =+ Prelude.rnf connectionAlias+ `Prelude.seq` Prelude.rnf connectionId+ `Prelude.seq` Prelude.rnf connectionStatus+ `Prelude.seq` Prelude.rnf localDomainInfo+ `Prelude.seq` Prelude.rnf remoteDomainInfo
+ gen/Amazonka/OpenSearch/Types/OutboundConnectionStatus.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.OpenSearch.Types.OutboundConnectionStatus+-- 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.OpenSearch.Types.OutboundConnectionStatus where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.OutboundConnectionStatusCode+import qualified Amazonka.Prelude as Prelude++-- | The status of an outbound cross-cluster connection.+--+-- /See:/ 'newOutboundConnectionStatus' smart constructor.+data OutboundConnectionStatus = OutboundConnectionStatus'+ { -- | Verbose information for the outbound connection.+ message :: Prelude.Maybe Prelude.Text,+ -- | The status code for the outbound connection. Can be one of the+ -- following:+ --+ -- - __VALIDATING__ - The outbound connection request is being validated.+ --+ -- - __VALIDATION_FAILED__ - Validation failed for the connection+ -- request.+ --+ -- - __PENDING_ACCEPTANCE__: Outbound connection request is validated and+ -- is not yet accepted by the remote domain owner.+ --+ -- - __APPROVED__ - Outbound connection has been approved by the remote+ -- domain owner for getting provisioned.+ --+ -- - __PROVISIONING__ - Outbound connection request is in process.+ --+ -- - __ACTIVE__ - Outbound connection is active and ready to use.+ --+ -- - __REJECTING__ - Outbound connection rejection by remote domain owner+ -- is in progress.+ --+ -- - __REJECTED__ - Outbound connection request is rejected by remote+ -- domain owner.+ --+ -- - __DELETING__ - Outbound connection deletion is in progress.+ --+ -- - __DELETED__ - Outbound connection is deleted and can no longer be+ -- used.+ statusCode :: Prelude.Maybe OutboundConnectionStatusCode+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'OutboundConnectionStatus' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'message', 'outboundConnectionStatus_message' - Verbose information for the outbound connection.+--+-- 'statusCode', 'outboundConnectionStatus_statusCode' - The status code for the outbound connection. Can be one of the+-- following:+--+-- - __VALIDATING__ - The outbound connection request is being validated.+--+-- - __VALIDATION_FAILED__ - Validation failed for the connection+-- request.+--+-- - __PENDING_ACCEPTANCE__: Outbound connection request is validated and+-- is not yet accepted by the remote domain owner.+--+-- - __APPROVED__ - Outbound connection has been approved by the remote+-- domain owner for getting provisioned.+--+-- - __PROVISIONING__ - Outbound connection request is in process.+--+-- - __ACTIVE__ - Outbound connection is active and ready to use.+--+-- - __REJECTING__ - Outbound connection rejection by remote domain owner+-- is in progress.+--+-- - __REJECTED__ - Outbound connection request is rejected by remote+-- domain owner.+--+-- - __DELETING__ - Outbound connection deletion is in progress.+--+-- - __DELETED__ - Outbound connection is deleted and can no longer be+-- used.+newOutboundConnectionStatus ::+ OutboundConnectionStatus+newOutboundConnectionStatus =+ OutboundConnectionStatus'+ { message =+ Prelude.Nothing,+ statusCode = Prelude.Nothing+ }++-- | Verbose information for the outbound connection.+outboundConnectionStatus_message :: Lens.Lens' OutboundConnectionStatus (Prelude.Maybe Prelude.Text)+outboundConnectionStatus_message = Lens.lens (\OutboundConnectionStatus' {message} -> message) (\s@OutboundConnectionStatus' {} a -> s {message = a} :: OutboundConnectionStatus)++-- | The status code for the outbound connection. Can be one of the+-- following:+--+-- - __VALIDATING__ - The outbound connection request is being validated.+--+-- - __VALIDATION_FAILED__ - Validation failed for the connection+-- request.+--+-- - __PENDING_ACCEPTANCE__: Outbound connection request is validated and+-- is not yet accepted by the remote domain owner.+--+-- - __APPROVED__ - Outbound connection has been approved by the remote+-- domain owner for getting provisioned.+--+-- - __PROVISIONING__ - Outbound connection request is in process.+--+-- - __ACTIVE__ - Outbound connection is active and ready to use.+--+-- - __REJECTING__ - Outbound connection rejection by remote domain owner+-- is in progress.+--+-- - __REJECTED__ - Outbound connection request is rejected by remote+-- domain owner.+--+-- - __DELETING__ - Outbound connection deletion is in progress.+--+-- - __DELETED__ - Outbound connection is deleted and can no longer be+-- used.+outboundConnectionStatus_statusCode :: Lens.Lens' OutboundConnectionStatus (Prelude.Maybe OutboundConnectionStatusCode)+outboundConnectionStatus_statusCode = Lens.lens (\OutboundConnectionStatus' {statusCode} -> statusCode) (\s@OutboundConnectionStatus' {} a -> s {statusCode = a} :: OutboundConnectionStatus)++instance Data.FromJSON OutboundConnectionStatus where+ parseJSON =+ Data.withObject+ "OutboundConnectionStatus"+ ( \x ->+ OutboundConnectionStatus'+ Prelude.<$> (x Data..:? "Message")+ Prelude.<*> (x Data..:? "StatusCode")+ )++instance Prelude.Hashable OutboundConnectionStatus where+ hashWithSalt _salt OutboundConnectionStatus' {..} =+ _salt+ `Prelude.hashWithSalt` message+ `Prelude.hashWithSalt` statusCode++instance Prelude.NFData OutboundConnectionStatus where+ rnf OutboundConnectionStatus' {..} =+ Prelude.rnf message+ `Prelude.seq` Prelude.rnf statusCode
+ gen/Amazonka/OpenSearch/Types/OutboundConnectionStatusCode.hs view
@@ -0,0 +1,111 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.OpenSearch.Types.OutboundConnectionStatusCode+-- 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.OpenSearch.Types.OutboundConnectionStatusCode+ ( OutboundConnectionStatusCode+ ( ..,+ OutboundConnectionStatusCode_ACTIVE,+ OutboundConnectionStatusCode_APPROVED,+ OutboundConnectionStatusCode_DELETED,+ OutboundConnectionStatusCode_DELETING,+ OutboundConnectionStatusCode_PENDING_ACCEPTANCE,+ OutboundConnectionStatusCode_PROVISIONING,+ OutboundConnectionStatusCode_REJECTED,+ OutboundConnectionStatusCode_REJECTING,+ OutboundConnectionStatusCode_VALIDATING,+ OutboundConnectionStatusCode_VALIDATION_FAILED+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype OutboundConnectionStatusCode = OutboundConnectionStatusCode'+ { fromOutboundConnectionStatusCode ::+ 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 OutboundConnectionStatusCode_ACTIVE :: OutboundConnectionStatusCode+pattern OutboundConnectionStatusCode_ACTIVE = OutboundConnectionStatusCode' "ACTIVE"++pattern OutboundConnectionStatusCode_APPROVED :: OutboundConnectionStatusCode+pattern OutboundConnectionStatusCode_APPROVED = OutboundConnectionStatusCode' "APPROVED"++pattern OutboundConnectionStatusCode_DELETED :: OutboundConnectionStatusCode+pattern OutboundConnectionStatusCode_DELETED = OutboundConnectionStatusCode' "DELETED"++pattern OutboundConnectionStatusCode_DELETING :: OutboundConnectionStatusCode+pattern OutboundConnectionStatusCode_DELETING = OutboundConnectionStatusCode' "DELETING"++pattern OutboundConnectionStatusCode_PENDING_ACCEPTANCE :: OutboundConnectionStatusCode+pattern OutboundConnectionStatusCode_PENDING_ACCEPTANCE = OutboundConnectionStatusCode' "PENDING_ACCEPTANCE"++pattern OutboundConnectionStatusCode_PROVISIONING :: OutboundConnectionStatusCode+pattern OutboundConnectionStatusCode_PROVISIONING = OutboundConnectionStatusCode' "PROVISIONING"++pattern OutboundConnectionStatusCode_REJECTED :: OutboundConnectionStatusCode+pattern OutboundConnectionStatusCode_REJECTED = OutboundConnectionStatusCode' "REJECTED"++pattern OutboundConnectionStatusCode_REJECTING :: OutboundConnectionStatusCode+pattern OutboundConnectionStatusCode_REJECTING = OutboundConnectionStatusCode' "REJECTING"++pattern OutboundConnectionStatusCode_VALIDATING :: OutboundConnectionStatusCode+pattern OutboundConnectionStatusCode_VALIDATING = OutboundConnectionStatusCode' "VALIDATING"++pattern OutboundConnectionStatusCode_VALIDATION_FAILED :: OutboundConnectionStatusCode+pattern OutboundConnectionStatusCode_VALIDATION_FAILED = OutboundConnectionStatusCode' "VALIDATION_FAILED"++{-# COMPLETE+ OutboundConnectionStatusCode_ACTIVE,+ OutboundConnectionStatusCode_APPROVED,+ OutboundConnectionStatusCode_DELETED,+ OutboundConnectionStatusCode_DELETING,+ OutboundConnectionStatusCode_PENDING_ACCEPTANCE,+ OutboundConnectionStatusCode_PROVISIONING,+ OutboundConnectionStatusCode_REJECTED,+ OutboundConnectionStatusCode_REJECTING,+ OutboundConnectionStatusCode_VALIDATING,+ OutboundConnectionStatusCode_VALIDATION_FAILED,+ OutboundConnectionStatusCode'+ #-}
+ gen/Amazonka/OpenSearch/Types/OverallChangeStatus.hs view
@@ -0,0 +1,82 @@+{-# 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.OpenSearch.Types.OverallChangeStatus+-- 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.OpenSearch.Types.OverallChangeStatus+ ( OverallChangeStatus+ ( ..,+ OverallChangeStatus_COMPLETED,+ OverallChangeStatus_FAILED,+ OverallChangeStatus_PENDING,+ OverallChangeStatus_PROCESSING+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | The overall status value of the domain configuration change.+newtype OverallChangeStatus = OverallChangeStatus'+ { fromOverallChangeStatus ::+ 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 OverallChangeStatus_COMPLETED :: OverallChangeStatus+pattern OverallChangeStatus_COMPLETED = OverallChangeStatus' "COMPLETED"++pattern OverallChangeStatus_FAILED :: OverallChangeStatus+pattern OverallChangeStatus_FAILED = OverallChangeStatus' "FAILED"++pattern OverallChangeStatus_PENDING :: OverallChangeStatus+pattern OverallChangeStatus_PENDING = OverallChangeStatus' "PENDING"++pattern OverallChangeStatus_PROCESSING :: OverallChangeStatus+pattern OverallChangeStatus_PROCESSING = OverallChangeStatus' "PROCESSING"++{-# COMPLETE+ OverallChangeStatus_COMPLETED,+ OverallChangeStatus_FAILED,+ OverallChangeStatus_PENDING,+ OverallChangeStatus_PROCESSING,+ OverallChangeStatus'+ #-}
+ gen/Amazonka/OpenSearch/Types/PackageDetails.hs view
@@ -0,0 +1,175 @@+{-# 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.OpenSearch.Types.PackageDetails+-- 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.OpenSearch.Types.PackageDetails where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.ErrorDetails+import Amazonka.OpenSearch.Types.PackageStatus+import Amazonka.OpenSearch.Types.PackageType+import qualified Amazonka.Prelude as Prelude++-- | Basic information about a package.+--+-- /See:/ 'newPackageDetails' smart constructor.+data PackageDetails = PackageDetails'+ { -- | The package version.+ availablePackageVersion :: Prelude.Maybe Prelude.Text,+ -- | The timestamp when the package was created.+ createdAt :: Prelude.Maybe Data.POSIX,+ -- | Additional information if the package is in an error state. Null+ -- otherwise.+ errorDetails :: Prelude.Maybe ErrorDetails,+ -- | Date and time when the package was last updated.+ lastUpdatedAt :: Prelude.Maybe Data.POSIX,+ -- | User-specified description of the package.+ packageDescription :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier of the package.+ packageID :: Prelude.Maybe Prelude.Text,+ -- | User-specified name of the package.+ packageName :: Prelude.Maybe Prelude.Text,+ -- | Current status of the package.+ packageStatus :: Prelude.Maybe PackageStatus,+ -- | The type of package.+ packageType :: Prelude.Maybe PackageType+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PackageDetails' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'availablePackageVersion', 'packageDetails_availablePackageVersion' - The package version.+--+-- 'createdAt', 'packageDetails_createdAt' - The timestamp when the package was created.+--+-- 'errorDetails', 'packageDetails_errorDetails' - Additional information if the package is in an error state. Null+-- otherwise.+--+-- 'lastUpdatedAt', 'packageDetails_lastUpdatedAt' - Date and time when the package was last updated.+--+-- 'packageDescription', 'packageDetails_packageDescription' - User-specified description of the package.+--+-- 'packageID', 'packageDetails_packageID' - The unique identifier of the package.+--+-- 'packageName', 'packageDetails_packageName' - User-specified name of the package.+--+-- 'packageStatus', 'packageDetails_packageStatus' - Current status of the package.+--+-- 'packageType', 'packageDetails_packageType' - The type of package.+newPackageDetails ::+ PackageDetails+newPackageDetails =+ PackageDetails'+ { availablePackageVersion =+ Prelude.Nothing,+ createdAt = Prelude.Nothing,+ errorDetails = Prelude.Nothing,+ lastUpdatedAt = Prelude.Nothing,+ packageDescription = Prelude.Nothing,+ packageID = Prelude.Nothing,+ packageName = Prelude.Nothing,+ packageStatus = Prelude.Nothing,+ packageType = Prelude.Nothing+ }++-- | The package version.+packageDetails_availablePackageVersion :: Lens.Lens' PackageDetails (Prelude.Maybe Prelude.Text)+packageDetails_availablePackageVersion = Lens.lens (\PackageDetails' {availablePackageVersion} -> availablePackageVersion) (\s@PackageDetails' {} a -> s {availablePackageVersion = a} :: PackageDetails)++-- | The timestamp when the package was created.+packageDetails_createdAt :: Lens.Lens' PackageDetails (Prelude.Maybe Prelude.UTCTime)+packageDetails_createdAt = Lens.lens (\PackageDetails' {createdAt} -> createdAt) (\s@PackageDetails' {} a -> s {createdAt = a} :: PackageDetails) Prelude.. Lens.mapping Data._Time++-- | Additional information if the package is in an error state. Null+-- otherwise.+packageDetails_errorDetails :: Lens.Lens' PackageDetails (Prelude.Maybe ErrorDetails)+packageDetails_errorDetails = Lens.lens (\PackageDetails' {errorDetails} -> errorDetails) (\s@PackageDetails' {} a -> s {errorDetails = a} :: PackageDetails)++-- | Date and time when the package was last updated.+packageDetails_lastUpdatedAt :: Lens.Lens' PackageDetails (Prelude.Maybe Prelude.UTCTime)+packageDetails_lastUpdatedAt = Lens.lens (\PackageDetails' {lastUpdatedAt} -> lastUpdatedAt) (\s@PackageDetails' {} a -> s {lastUpdatedAt = a} :: PackageDetails) Prelude.. Lens.mapping Data._Time++-- | User-specified description of the package.+packageDetails_packageDescription :: Lens.Lens' PackageDetails (Prelude.Maybe Prelude.Text)+packageDetails_packageDescription = Lens.lens (\PackageDetails' {packageDescription} -> packageDescription) (\s@PackageDetails' {} a -> s {packageDescription = a} :: PackageDetails)++-- | The unique identifier of the package.+packageDetails_packageID :: Lens.Lens' PackageDetails (Prelude.Maybe Prelude.Text)+packageDetails_packageID = Lens.lens (\PackageDetails' {packageID} -> packageID) (\s@PackageDetails' {} a -> s {packageID = a} :: PackageDetails)++-- | User-specified name of the package.+packageDetails_packageName :: Lens.Lens' PackageDetails (Prelude.Maybe Prelude.Text)+packageDetails_packageName = Lens.lens (\PackageDetails' {packageName} -> packageName) (\s@PackageDetails' {} a -> s {packageName = a} :: PackageDetails)++-- | Current status of the package.+packageDetails_packageStatus :: Lens.Lens' PackageDetails (Prelude.Maybe PackageStatus)+packageDetails_packageStatus = Lens.lens (\PackageDetails' {packageStatus} -> packageStatus) (\s@PackageDetails' {} a -> s {packageStatus = a} :: PackageDetails)++-- | The type of package.+packageDetails_packageType :: Lens.Lens' PackageDetails (Prelude.Maybe PackageType)+packageDetails_packageType = Lens.lens (\PackageDetails' {packageType} -> packageType) (\s@PackageDetails' {} a -> s {packageType = a} :: PackageDetails)++instance Data.FromJSON PackageDetails where+ parseJSON =+ Data.withObject+ "PackageDetails"+ ( \x ->+ PackageDetails'+ Prelude.<$> (x Data..:? "AvailablePackageVersion")+ Prelude.<*> (x Data..:? "CreatedAt")+ Prelude.<*> (x Data..:? "ErrorDetails")+ Prelude.<*> (x Data..:? "LastUpdatedAt")+ Prelude.<*> (x Data..:? "PackageDescription")+ Prelude.<*> (x Data..:? "PackageID")+ Prelude.<*> (x Data..:? "PackageName")+ Prelude.<*> (x Data..:? "PackageStatus")+ Prelude.<*> (x Data..:? "PackageType")+ )++instance Prelude.Hashable PackageDetails where+ hashWithSalt _salt PackageDetails' {..} =+ _salt+ `Prelude.hashWithSalt` availablePackageVersion+ `Prelude.hashWithSalt` createdAt+ `Prelude.hashWithSalt` errorDetails+ `Prelude.hashWithSalt` lastUpdatedAt+ `Prelude.hashWithSalt` packageDescription+ `Prelude.hashWithSalt` packageID+ `Prelude.hashWithSalt` packageName+ `Prelude.hashWithSalt` packageStatus+ `Prelude.hashWithSalt` packageType++instance Prelude.NFData PackageDetails where+ rnf PackageDetails' {..} =+ Prelude.rnf availablePackageVersion+ `Prelude.seq` Prelude.rnf createdAt+ `Prelude.seq` Prelude.rnf errorDetails+ `Prelude.seq` Prelude.rnf lastUpdatedAt+ `Prelude.seq` Prelude.rnf packageDescription+ `Prelude.seq` Prelude.rnf packageID+ `Prelude.seq` Prelude.rnf packageName+ `Prelude.seq` Prelude.rnf packageStatus+ `Prelude.seq` Prelude.rnf packageType
+ gen/Amazonka/OpenSearch/Types/PackageSource.hs view
@@ -0,0 +1,83 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.OpenSearch.Types.PackageSource+-- 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.OpenSearch.Types.PackageSource 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 Amazon S3 location to import the package from.+--+-- /See:/ 'newPackageSource' smart constructor.+data PackageSource = PackageSource'+ { -- | The name of the Amazon S3 bucket containing the package.+ s3BucketName :: Prelude.Maybe Prelude.Text,+ -- | Key (file name) of the package.+ s3Key :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PackageSource' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 's3BucketName', 'packageSource_s3BucketName' - The name of the Amazon S3 bucket containing the package.+--+-- 's3Key', 'packageSource_s3Key' - Key (file name) of the package.+newPackageSource ::+ PackageSource+newPackageSource =+ PackageSource'+ { s3BucketName = Prelude.Nothing,+ s3Key = Prelude.Nothing+ }++-- | The name of the Amazon S3 bucket containing the package.+packageSource_s3BucketName :: Lens.Lens' PackageSource (Prelude.Maybe Prelude.Text)+packageSource_s3BucketName = Lens.lens (\PackageSource' {s3BucketName} -> s3BucketName) (\s@PackageSource' {} a -> s {s3BucketName = a} :: PackageSource)++-- | Key (file name) of the package.+packageSource_s3Key :: Lens.Lens' PackageSource (Prelude.Maybe Prelude.Text)+packageSource_s3Key = Lens.lens (\PackageSource' {s3Key} -> s3Key) (\s@PackageSource' {} a -> s {s3Key = a} :: PackageSource)++instance Prelude.Hashable PackageSource where+ hashWithSalt _salt PackageSource' {..} =+ _salt+ `Prelude.hashWithSalt` s3BucketName+ `Prelude.hashWithSalt` s3Key++instance Prelude.NFData PackageSource where+ rnf PackageSource' {..} =+ Prelude.rnf s3BucketName+ `Prelude.seq` Prelude.rnf s3Key++instance Data.ToJSON PackageSource where+ toJSON PackageSource' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("S3BucketName" Data..=) Prelude.<$> s3BucketName,+ ("S3Key" Data..=) Prelude.<$> s3Key+ ]+ )
+ gen/Amazonka/OpenSearch/Types/PackageStatus.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.OpenSearch.Types.PackageStatus+-- 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.OpenSearch.Types.PackageStatus+ ( PackageStatus+ ( ..,+ PackageStatus_AVAILABLE,+ PackageStatus_COPYING,+ PackageStatus_COPY_FAILED,+ PackageStatus_DELETED,+ PackageStatus_DELETE_FAILED,+ PackageStatus_DELETING,+ PackageStatus_VALIDATING,+ PackageStatus_VALIDATION_FAILED+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype PackageStatus = PackageStatus'+ { fromPackageStatus ::+ 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 PackageStatus_AVAILABLE :: PackageStatus+pattern PackageStatus_AVAILABLE = PackageStatus' "AVAILABLE"++pattern PackageStatus_COPYING :: PackageStatus+pattern PackageStatus_COPYING = PackageStatus' "COPYING"++pattern PackageStatus_COPY_FAILED :: PackageStatus+pattern PackageStatus_COPY_FAILED = PackageStatus' "COPY_FAILED"++pattern PackageStatus_DELETED :: PackageStatus+pattern PackageStatus_DELETED = PackageStatus' "DELETED"++pattern PackageStatus_DELETE_FAILED :: PackageStatus+pattern PackageStatus_DELETE_FAILED = PackageStatus' "DELETE_FAILED"++pattern PackageStatus_DELETING :: PackageStatus+pattern PackageStatus_DELETING = PackageStatus' "DELETING"++pattern PackageStatus_VALIDATING :: PackageStatus+pattern PackageStatus_VALIDATING = PackageStatus' "VALIDATING"++pattern PackageStatus_VALIDATION_FAILED :: PackageStatus+pattern PackageStatus_VALIDATION_FAILED = PackageStatus' "VALIDATION_FAILED"++{-# COMPLETE+ PackageStatus_AVAILABLE,+ PackageStatus_COPYING,+ PackageStatus_COPY_FAILED,+ PackageStatus_DELETED,+ PackageStatus_DELETE_FAILED,+ PackageStatus_DELETING,+ PackageStatus_VALIDATING,+ PackageStatus_VALIDATION_FAILED,+ PackageStatus'+ #-}
+ gen/Amazonka/OpenSearch/Types/PackageType.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.OpenSearch.Types.PackageType+-- 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.OpenSearch.Types.PackageType+ ( PackageType+ ( ..,+ PackageType_TXT_DICTIONARY+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype PackageType = PackageType'+ { fromPackageType ::+ 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 PackageType_TXT_DICTIONARY :: PackageType+pattern PackageType_TXT_DICTIONARY = PackageType' "TXT-DICTIONARY"++{-# COMPLETE+ PackageType_TXT_DICTIONARY,+ PackageType'+ #-}
+ gen/Amazonka/OpenSearch/Types/PackageVersionHistory.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.OpenSearch.Types.PackageVersionHistory+-- 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.OpenSearch.Types.PackageVersionHistory 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++-- | Details about a package version.+--+-- /See:/ 'newPackageVersionHistory' smart constructor.+data PackageVersionHistory = PackageVersionHistory'+ { -- | A message associated with the package version when it was uploaded.+ commitMessage :: Prelude.Maybe Prelude.Text,+ -- | The date and time when the package was created.+ createdAt :: Prelude.Maybe Data.POSIX,+ -- | The package version.+ packageVersion :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PackageVersionHistory' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'commitMessage', 'packageVersionHistory_commitMessage' - A message associated with the package version when it was uploaded.+--+-- 'createdAt', 'packageVersionHistory_createdAt' - The date and time when the package was created.+--+-- 'packageVersion', 'packageVersionHistory_packageVersion' - The package version.+newPackageVersionHistory ::+ PackageVersionHistory+newPackageVersionHistory =+ PackageVersionHistory'+ { commitMessage =+ Prelude.Nothing,+ createdAt = Prelude.Nothing,+ packageVersion = Prelude.Nothing+ }++-- | A message associated with the package version when it was uploaded.+packageVersionHistory_commitMessage :: Lens.Lens' PackageVersionHistory (Prelude.Maybe Prelude.Text)+packageVersionHistory_commitMessage = Lens.lens (\PackageVersionHistory' {commitMessage} -> commitMessage) (\s@PackageVersionHistory' {} a -> s {commitMessage = a} :: PackageVersionHistory)++-- | The date and time when the package was created.+packageVersionHistory_createdAt :: Lens.Lens' PackageVersionHistory (Prelude.Maybe Prelude.UTCTime)+packageVersionHistory_createdAt = Lens.lens (\PackageVersionHistory' {createdAt} -> createdAt) (\s@PackageVersionHistory' {} a -> s {createdAt = a} :: PackageVersionHistory) Prelude.. Lens.mapping Data._Time++-- | The package version.+packageVersionHistory_packageVersion :: Lens.Lens' PackageVersionHistory (Prelude.Maybe Prelude.Text)+packageVersionHistory_packageVersion = Lens.lens (\PackageVersionHistory' {packageVersion} -> packageVersion) (\s@PackageVersionHistory' {} a -> s {packageVersion = a} :: PackageVersionHistory)++instance Data.FromJSON PackageVersionHistory where+ parseJSON =+ Data.withObject+ "PackageVersionHistory"+ ( \x ->+ PackageVersionHistory'+ Prelude.<$> (x Data..:? "CommitMessage")+ Prelude.<*> (x Data..:? "CreatedAt")+ Prelude.<*> (x Data..:? "PackageVersion")+ )++instance Prelude.Hashable PackageVersionHistory where+ hashWithSalt _salt PackageVersionHistory' {..} =+ _salt+ `Prelude.hashWithSalt` commitMessage+ `Prelude.hashWithSalt` createdAt+ `Prelude.hashWithSalt` packageVersion++instance Prelude.NFData PackageVersionHistory where+ rnf PackageVersionHistory' {..} =+ Prelude.rnf commitMessage+ `Prelude.seq` Prelude.rnf createdAt+ `Prelude.seq` Prelude.rnf packageVersion
+ gen/Amazonka/OpenSearch/Types/PrincipalType.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.OpenSearch.Types.PrincipalType+-- 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.OpenSearch.Types.PrincipalType+ ( PrincipalType+ ( ..,+ PrincipalType_AWS_ACCOUNT,+ PrincipalType_AWS_SERVICE+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype PrincipalType = PrincipalType'+ { fromPrincipalType ::+ 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 PrincipalType_AWS_ACCOUNT :: PrincipalType+pattern PrincipalType_AWS_ACCOUNT = PrincipalType' "AWS_ACCOUNT"++pattern PrincipalType_AWS_SERVICE :: PrincipalType+pattern PrincipalType_AWS_SERVICE = PrincipalType' "AWS_SERVICE"++{-# COMPLETE+ PrincipalType_AWS_ACCOUNT,+ PrincipalType_AWS_SERVICE,+ PrincipalType'+ #-}
+ gen/Amazonka/OpenSearch/Types/RecurringCharge.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.OpenSearch.Types.RecurringCharge+-- 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.OpenSearch.Types.RecurringCharge 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++-- | Contains the specific price and frequency of a recurring charges for an+-- OpenSearch Reserved Instance, or for a Reserved Instance offering.+--+-- /See:/ 'newRecurringCharge' smart constructor.+data RecurringCharge = RecurringCharge'+ { -- | The monetary amount of the recurring charge.+ recurringChargeAmount :: Prelude.Maybe Prelude.Double,+ -- | The frequency of the recurring charge.+ recurringChargeFrequency :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RecurringCharge' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'recurringChargeAmount', 'recurringCharge_recurringChargeAmount' - The monetary amount of the recurring charge.+--+-- 'recurringChargeFrequency', 'recurringCharge_recurringChargeFrequency' - The frequency of the recurring charge.+newRecurringCharge ::+ RecurringCharge+newRecurringCharge =+ RecurringCharge'+ { recurringChargeAmount =+ Prelude.Nothing,+ recurringChargeFrequency = Prelude.Nothing+ }++-- | The monetary amount of the recurring charge.+recurringCharge_recurringChargeAmount :: Lens.Lens' RecurringCharge (Prelude.Maybe Prelude.Double)+recurringCharge_recurringChargeAmount = Lens.lens (\RecurringCharge' {recurringChargeAmount} -> recurringChargeAmount) (\s@RecurringCharge' {} a -> s {recurringChargeAmount = a} :: RecurringCharge)++-- | The frequency of the recurring charge.+recurringCharge_recurringChargeFrequency :: Lens.Lens' RecurringCharge (Prelude.Maybe Prelude.Text)+recurringCharge_recurringChargeFrequency = Lens.lens (\RecurringCharge' {recurringChargeFrequency} -> recurringChargeFrequency) (\s@RecurringCharge' {} a -> s {recurringChargeFrequency = a} :: RecurringCharge)++instance Data.FromJSON RecurringCharge where+ parseJSON =+ Data.withObject+ "RecurringCharge"+ ( \x ->+ RecurringCharge'+ Prelude.<$> (x Data..:? "RecurringChargeAmount")+ Prelude.<*> (x Data..:? "RecurringChargeFrequency")+ )++instance Prelude.Hashable RecurringCharge where+ hashWithSalt _salt RecurringCharge' {..} =+ _salt+ `Prelude.hashWithSalt` recurringChargeAmount+ `Prelude.hashWithSalt` recurringChargeFrequency++instance Prelude.NFData RecurringCharge where+ rnf RecurringCharge' {..} =+ Prelude.rnf recurringChargeAmount+ `Prelude.seq` Prelude.rnf recurringChargeFrequency
+ gen/Amazonka/OpenSearch/Types/ReservedInstance.hs view
@@ -0,0 +1,244 @@+{-# 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.OpenSearch.Types.ReservedInstance+-- 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.OpenSearch.Types.ReservedInstance where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.OpenSearchPartitionInstanceType+import Amazonka.OpenSearch.Types.RecurringCharge+import Amazonka.OpenSearch.Types.ReservedInstancePaymentOption+import qualified Amazonka.Prelude as Prelude++-- | Details of an OpenSearch Reserved Instance.+--+-- /See:/ 'newReservedInstance' smart constructor.+data ReservedInstance = ReservedInstance'+ { -- | The unique identifier of the billing subscription.+ billingSubscriptionId :: Prelude.Maybe Prelude.Integer,+ -- | The currency code for the offering.+ currencyCode :: Prelude.Maybe Prelude.Text,+ -- | The duration, in seconds, for which the OpenSearch instance is reserved.+ duration :: Prelude.Maybe Prelude.Int,+ -- | The upfront fixed charge you will paid to purchase the specific Reserved+ -- Instance offering.+ fixedPrice :: Prelude.Maybe Prelude.Double,+ -- | The number of OpenSearch instances that have been reserved.+ instanceCount :: Prelude.Maybe Prelude.Int,+ -- | The OpenSearch instance type offered by theReserved Instance offering.+ instanceType :: Prelude.Maybe OpenSearchPartitionInstanceType,+ -- | The payment option as defined in the Reserved Instance offering.+ paymentOption :: Prelude.Maybe ReservedInstancePaymentOption,+ -- | The recurring charge to your account, regardless of whether you create+ -- any domains using the Reserved Instance offering.+ recurringCharges :: Prelude.Maybe [RecurringCharge],+ -- | The customer-specified identifier to track this reservation.+ reservationName :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier for the reservation.+ reservedInstanceId :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier of the Reserved Instance offering.+ reservedInstanceOfferingId :: Prelude.Maybe Prelude.Text,+ -- | The date and time when the reservation was purchased.+ startTime :: Prelude.Maybe Data.POSIX,+ -- | The state of the Reserved Instance.+ state :: Prelude.Maybe Prelude.Text,+ -- | The hourly rate at which you\'re charged for the domain using this+ -- Reserved Instance.+ usagePrice :: Prelude.Maybe Prelude.Double+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ReservedInstance' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'billingSubscriptionId', 'reservedInstance_billingSubscriptionId' - The unique identifier of the billing subscription.+--+-- 'currencyCode', 'reservedInstance_currencyCode' - The currency code for the offering.+--+-- 'duration', 'reservedInstance_duration' - The duration, in seconds, for which the OpenSearch instance is reserved.+--+-- 'fixedPrice', 'reservedInstance_fixedPrice' - The upfront fixed charge you will paid to purchase the specific Reserved+-- Instance offering.+--+-- 'instanceCount', 'reservedInstance_instanceCount' - The number of OpenSearch instances that have been reserved.+--+-- 'instanceType', 'reservedInstance_instanceType' - The OpenSearch instance type offered by theReserved Instance offering.+--+-- 'paymentOption', 'reservedInstance_paymentOption' - The payment option as defined in the Reserved Instance offering.+--+-- 'recurringCharges', 'reservedInstance_recurringCharges' - The recurring charge to your account, regardless of whether you create+-- any domains using the Reserved Instance offering.+--+-- 'reservationName', 'reservedInstance_reservationName' - The customer-specified identifier to track this reservation.+--+-- 'reservedInstanceId', 'reservedInstance_reservedInstanceId' - The unique identifier for the reservation.+--+-- 'reservedInstanceOfferingId', 'reservedInstance_reservedInstanceOfferingId' - The unique identifier of the Reserved Instance offering.+--+-- 'startTime', 'reservedInstance_startTime' - The date and time when the reservation was purchased.+--+-- 'state', 'reservedInstance_state' - The state of the Reserved Instance.+--+-- 'usagePrice', 'reservedInstance_usagePrice' - The hourly rate at which you\'re charged for the domain using this+-- Reserved Instance.+newReservedInstance ::+ ReservedInstance+newReservedInstance =+ ReservedInstance'+ { billingSubscriptionId =+ Prelude.Nothing,+ currencyCode = Prelude.Nothing,+ duration = Prelude.Nothing,+ fixedPrice = Prelude.Nothing,+ instanceCount = Prelude.Nothing,+ instanceType = Prelude.Nothing,+ paymentOption = Prelude.Nothing,+ recurringCharges = Prelude.Nothing,+ reservationName = Prelude.Nothing,+ reservedInstanceId = Prelude.Nothing,+ reservedInstanceOfferingId = Prelude.Nothing,+ startTime = Prelude.Nothing,+ state = Prelude.Nothing,+ usagePrice = Prelude.Nothing+ }++-- | The unique identifier of the billing subscription.+reservedInstance_billingSubscriptionId :: Lens.Lens' ReservedInstance (Prelude.Maybe Prelude.Integer)+reservedInstance_billingSubscriptionId = Lens.lens (\ReservedInstance' {billingSubscriptionId} -> billingSubscriptionId) (\s@ReservedInstance' {} a -> s {billingSubscriptionId = a} :: ReservedInstance)++-- | The currency code for the offering.+reservedInstance_currencyCode :: Lens.Lens' ReservedInstance (Prelude.Maybe Prelude.Text)+reservedInstance_currencyCode = Lens.lens (\ReservedInstance' {currencyCode} -> currencyCode) (\s@ReservedInstance' {} a -> s {currencyCode = a} :: ReservedInstance)++-- | The duration, in seconds, for which the OpenSearch instance is reserved.+reservedInstance_duration :: Lens.Lens' ReservedInstance (Prelude.Maybe Prelude.Int)+reservedInstance_duration = Lens.lens (\ReservedInstance' {duration} -> duration) (\s@ReservedInstance' {} a -> s {duration = a} :: ReservedInstance)++-- | The upfront fixed charge you will paid to purchase the specific Reserved+-- Instance offering.+reservedInstance_fixedPrice :: Lens.Lens' ReservedInstance (Prelude.Maybe Prelude.Double)+reservedInstance_fixedPrice = Lens.lens (\ReservedInstance' {fixedPrice} -> fixedPrice) (\s@ReservedInstance' {} a -> s {fixedPrice = a} :: ReservedInstance)++-- | The number of OpenSearch instances that have been reserved.+reservedInstance_instanceCount :: Lens.Lens' ReservedInstance (Prelude.Maybe Prelude.Int)+reservedInstance_instanceCount = Lens.lens (\ReservedInstance' {instanceCount} -> instanceCount) (\s@ReservedInstance' {} a -> s {instanceCount = a} :: ReservedInstance)++-- | The OpenSearch instance type offered by theReserved Instance offering.+reservedInstance_instanceType :: Lens.Lens' ReservedInstance (Prelude.Maybe OpenSearchPartitionInstanceType)+reservedInstance_instanceType = Lens.lens (\ReservedInstance' {instanceType} -> instanceType) (\s@ReservedInstance' {} a -> s {instanceType = a} :: ReservedInstance)++-- | The payment option as defined in the Reserved Instance offering.+reservedInstance_paymentOption :: Lens.Lens' ReservedInstance (Prelude.Maybe ReservedInstancePaymentOption)+reservedInstance_paymentOption = Lens.lens (\ReservedInstance' {paymentOption} -> paymentOption) (\s@ReservedInstance' {} a -> s {paymentOption = a} :: ReservedInstance)++-- | The recurring charge to your account, regardless of whether you create+-- any domains using the Reserved Instance offering.+reservedInstance_recurringCharges :: Lens.Lens' ReservedInstance (Prelude.Maybe [RecurringCharge])+reservedInstance_recurringCharges = Lens.lens (\ReservedInstance' {recurringCharges} -> recurringCharges) (\s@ReservedInstance' {} a -> s {recurringCharges = a} :: ReservedInstance) Prelude.. Lens.mapping Lens.coerced++-- | The customer-specified identifier to track this reservation.+reservedInstance_reservationName :: Lens.Lens' ReservedInstance (Prelude.Maybe Prelude.Text)+reservedInstance_reservationName = Lens.lens (\ReservedInstance' {reservationName} -> reservationName) (\s@ReservedInstance' {} a -> s {reservationName = a} :: ReservedInstance)++-- | The unique identifier for the reservation.+reservedInstance_reservedInstanceId :: Lens.Lens' ReservedInstance (Prelude.Maybe Prelude.Text)+reservedInstance_reservedInstanceId = Lens.lens (\ReservedInstance' {reservedInstanceId} -> reservedInstanceId) (\s@ReservedInstance' {} a -> s {reservedInstanceId = a} :: ReservedInstance)++-- | The unique identifier of the Reserved Instance offering.+reservedInstance_reservedInstanceOfferingId :: Lens.Lens' ReservedInstance (Prelude.Maybe Prelude.Text)+reservedInstance_reservedInstanceOfferingId = Lens.lens (\ReservedInstance' {reservedInstanceOfferingId} -> reservedInstanceOfferingId) (\s@ReservedInstance' {} a -> s {reservedInstanceOfferingId = a} :: ReservedInstance)++-- | The date and time when the reservation was purchased.+reservedInstance_startTime :: Lens.Lens' ReservedInstance (Prelude.Maybe Prelude.UTCTime)+reservedInstance_startTime = Lens.lens (\ReservedInstance' {startTime} -> startTime) (\s@ReservedInstance' {} a -> s {startTime = a} :: ReservedInstance) Prelude.. Lens.mapping Data._Time++-- | The state of the Reserved Instance.+reservedInstance_state :: Lens.Lens' ReservedInstance (Prelude.Maybe Prelude.Text)+reservedInstance_state = Lens.lens (\ReservedInstance' {state} -> state) (\s@ReservedInstance' {} a -> s {state = a} :: ReservedInstance)++-- | The hourly rate at which you\'re charged for the domain using this+-- Reserved Instance.+reservedInstance_usagePrice :: Lens.Lens' ReservedInstance (Prelude.Maybe Prelude.Double)+reservedInstance_usagePrice = Lens.lens (\ReservedInstance' {usagePrice} -> usagePrice) (\s@ReservedInstance' {} a -> s {usagePrice = a} :: ReservedInstance)++instance Data.FromJSON ReservedInstance where+ parseJSON =+ Data.withObject+ "ReservedInstance"+ ( \x ->+ ReservedInstance'+ Prelude.<$> (x Data..:? "BillingSubscriptionId")+ Prelude.<*> (x Data..:? "CurrencyCode")+ Prelude.<*> (x Data..:? "Duration")+ Prelude.<*> (x Data..:? "FixedPrice")+ Prelude.<*> (x Data..:? "InstanceCount")+ Prelude.<*> (x Data..:? "InstanceType")+ Prelude.<*> (x Data..:? "PaymentOption")+ Prelude.<*> ( x+ Data..:? "RecurringCharges"+ Data..!= Prelude.mempty+ )+ Prelude.<*> (x Data..:? "ReservationName")+ Prelude.<*> (x Data..:? "ReservedInstanceId")+ Prelude.<*> (x Data..:? "ReservedInstanceOfferingId")+ Prelude.<*> (x Data..:? "StartTime")+ Prelude.<*> (x Data..:? "State")+ Prelude.<*> (x Data..:? "UsagePrice")+ )++instance Prelude.Hashable ReservedInstance where+ hashWithSalt _salt ReservedInstance' {..} =+ _salt+ `Prelude.hashWithSalt` billingSubscriptionId+ `Prelude.hashWithSalt` currencyCode+ `Prelude.hashWithSalt` duration+ `Prelude.hashWithSalt` fixedPrice+ `Prelude.hashWithSalt` instanceCount+ `Prelude.hashWithSalt` instanceType+ `Prelude.hashWithSalt` paymentOption+ `Prelude.hashWithSalt` recurringCharges+ `Prelude.hashWithSalt` reservationName+ `Prelude.hashWithSalt` reservedInstanceId+ `Prelude.hashWithSalt` reservedInstanceOfferingId+ `Prelude.hashWithSalt` startTime+ `Prelude.hashWithSalt` state+ `Prelude.hashWithSalt` usagePrice++instance Prelude.NFData ReservedInstance where+ rnf ReservedInstance' {..} =+ Prelude.rnf billingSubscriptionId+ `Prelude.seq` Prelude.rnf currencyCode+ `Prelude.seq` Prelude.rnf duration+ `Prelude.seq` Prelude.rnf fixedPrice+ `Prelude.seq` Prelude.rnf instanceCount+ `Prelude.seq` Prelude.rnf instanceType+ `Prelude.seq` Prelude.rnf paymentOption+ `Prelude.seq` Prelude.rnf recurringCharges+ `Prelude.seq` Prelude.rnf reservationName+ `Prelude.seq` Prelude.rnf reservedInstanceId+ `Prelude.seq` Prelude.rnf reservedInstanceOfferingId+ `Prelude.seq` Prelude.rnf startTime+ `Prelude.seq` Prelude.rnf state+ `Prelude.seq` Prelude.rnf usagePrice
+ gen/Amazonka/OpenSearch/Types/ReservedInstanceOffering.hs view
@@ -0,0 +1,175 @@+{-# 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.OpenSearch.Types.ReservedInstanceOffering+-- 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.OpenSearch.Types.ReservedInstanceOffering where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.OpenSearchPartitionInstanceType+import Amazonka.OpenSearch.Types.RecurringCharge+import Amazonka.OpenSearch.Types.ReservedInstancePaymentOption+import qualified Amazonka.Prelude as Prelude++-- | Details of an OpenSearch Reserved Instance offering.+--+-- /See:/ 'newReservedInstanceOffering' smart constructor.+data ReservedInstanceOffering = ReservedInstanceOffering'+ { -- | The currency code for the Reserved Instance offering.+ currencyCode :: Prelude.Maybe Prelude.Text,+ -- | The duration, in seconds, for which the offering will reserve the+ -- OpenSearch instance.+ duration :: Prelude.Maybe Prelude.Int,+ -- | The upfront fixed charge you will pay to purchase the specific Reserved+ -- Instance offering.+ fixedPrice :: Prelude.Maybe Prelude.Double,+ -- | The OpenSearch instance type offered by the Reserved Instance offering.+ instanceType :: Prelude.Maybe OpenSearchPartitionInstanceType,+ -- | Payment option for the Reserved Instance offering+ paymentOption :: Prelude.Maybe ReservedInstancePaymentOption,+ -- | The recurring charge to your account, regardless of whether you creates+ -- any domains using the offering.+ recurringCharges :: Prelude.Maybe [RecurringCharge],+ -- | The unique identifier of the Reserved Instance offering.+ reservedInstanceOfferingId :: Prelude.Maybe Prelude.Text,+ -- | The hourly rate at which you\'re charged for the domain using this+ -- Reserved Instance.+ usagePrice :: Prelude.Maybe Prelude.Double+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ReservedInstanceOffering' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'currencyCode', 'reservedInstanceOffering_currencyCode' - The currency code for the Reserved Instance offering.+--+-- 'duration', 'reservedInstanceOffering_duration' - The duration, in seconds, for which the offering will reserve the+-- OpenSearch instance.+--+-- 'fixedPrice', 'reservedInstanceOffering_fixedPrice' - The upfront fixed charge you will pay to purchase the specific Reserved+-- Instance offering.+--+-- 'instanceType', 'reservedInstanceOffering_instanceType' - The OpenSearch instance type offered by the Reserved Instance offering.+--+-- 'paymentOption', 'reservedInstanceOffering_paymentOption' - Payment option for the Reserved Instance offering+--+-- 'recurringCharges', 'reservedInstanceOffering_recurringCharges' - The recurring charge to your account, regardless of whether you creates+-- any domains using the offering.+--+-- 'reservedInstanceOfferingId', 'reservedInstanceOffering_reservedInstanceOfferingId' - The unique identifier of the Reserved Instance offering.+--+-- 'usagePrice', 'reservedInstanceOffering_usagePrice' - The hourly rate at which you\'re charged for the domain using this+-- Reserved Instance.+newReservedInstanceOffering ::+ ReservedInstanceOffering+newReservedInstanceOffering =+ ReservedInstanceOffering'+ { currencyCode =+ Prelude.Nothing,+ duration = Prelude.Nothing,+ fixedPrice = Prelude.Nothing,+ instanceType = Prelude.Nothing,+ paymentOption = Prelude.Nothing,+ recurringCharges = Prelude.Nothing,+ reservedInstanceOfferingId = Prelude.Nothing,+ usagePrice = Prelude.Nothing+ }++-- | The currency code for the Reserved Instance offering.+reservedInstanceOffering_currencyCode :: Lens.Lens' ReservedInstanceOffering (Prelude.Maybe Prelude.Text)+reservedInstanceOffering_currencyCode = Lens.lens (\ReservedInstanceOffering' {currencyCode} -> currencyCode) (\s@ReservedInstanceOffering' {} a -> s {currencyCode = a} :: ReservedInstanceOffering)++-- | The duration, in seconds, for which the offering will reserve the+-- OpenSearch instance.+reservedInstanceOffering_duration :: Lens.Lens' ReservedInstanceOffering (Prelude.Maybe Prelude.Int)+reservedInstanceOffering_duration = Lens.lens (\ReservedInstanceOffering' {duration} -> duration) (\s@ReservedInstanceOffering' {} a -> s {duration = a} :: ReservedInstanceOffering)++-- | The upfront fixed charge you will pay to purchase the specific Reserved+-- Instance offering.+reservedInstanceOffering_fixedPrice :: Lens.Lens' ReservedInstanceOffering (Prelude.Maybe Prelude.Double)+reservedInstanceOffering_fixedPrice = Lens.lens (\ReservedInstanceOffering' {fixedPrice} -> fixedPrice) (\s@ReservedInstanceOffering' {} a -> s {fixedPrice = a} :: ReservedInstanceOffering)++-- | The OpenSearch instance type offered by the Reserved Instance offering.+reservedInstanceOffering_instanceType :: Lens.Lens' ReservedInstanceOffering (Prelude.Maybe OpenSearchPartitionInstanceType)+reservedInstanceOffering_instanceType = Lens.lens (\ReservedInstanceOffering' {instanceType} -> instanceType) (\s@ReservedInstanceOffering' {} a -> s {instanceType = a} :: ReservedInstanceOffering)++-- | Payment option for the Reserved Instance offering+reservedInstanceOffering_paymentOption :: Lens.Lens' ReservedInstanceOffering (Prelude.Maybe ReservedInstancePaymentOption)+reservedInstanceOffering_paymentOption = Lens.lens (\ReservedInstanceOffering' {paymentOption} -> paymentOption) (\s@ReservedInstanceOffering' {} a -> s {paymentOption = a} :: ReservedInstanceOffering)++-- | The recurring charge to your account, regardless of whether you creates+-- any domains using the offering.+reservedInstanceOffering_recurringCharges :: Lens.Lens' ReservedInstanceOffering (Prelude.Maybe [RecurringCharge])+reservedInstanceOffering_recurringCharges = Lens.lens (\ReservedInstanceOffering' {recurringCharges} -> recurringCharges) (\s@ReservedInstanceOffering' {} a -> s {recurringCharges = a} :: ReservedInstanceOffering) Prelude.. Lens.mapping Lens.coerced++-- | The unique identifier of the Reserved Instance offering.+reservedInstanceOffering_reservedInstanceOfferingId :: Lens.Lens' ReservedInstanceOffering (Prelude.Maybe Prelude.Text)+reservedInstanceOffering_reservedInstanceOfferingId = Lens.lens (\ReservedInstanceOffering' {reservedInstanceOfferingId} -> reservedInstanceOfferingId) (\s@ReservedInstanceOffering' {} a -> s {reservedInstanceOfferingId = a} :: ReservedInstanceOffering)++-- | The hourly rate at which you\'re charged for the domain using this+-- Reserved Instance.+reservedInstanceOffering_usagePrice :: Lens.Lens' ReservedInstanceOffering (Prelude.Maybe Prelude.Double)+reservedInstanceOffering_usagePrice = Lens.lens (\ReservedInstanceOffering' {usagePrice} -> usagePrice) (\s@ReservedInstanceOffering' {} a -> s {usagePrice = a} :: ReservedInstanceOffering)++instance Data.FromJSON ReservedInstanceOffering where+ parseJSON =+ Data.withObject+ "ReservedInstanceOffering"+ ( \x ->+ ReservedInstanceOffering'+ Prelude.<$> (x Data..:? "CurrencyCode")+ Prelude.<*> (x Data..:? "Duration")+ Prelude.<*> (x Data..:? "FixedPrice")+ Prelude.<*> (x Data..:? "InstanceType")+ Prelude.<*> (x Data..:? "PaymentOption")+ Prelude.<*> ( x+ Data..:? "RecurringCharges"+ Data..!= Prelude.mempty+ )+ Prelude.<*> (x Data..:? "ReservedInstanceOfferingId")+ Prelude.<*> (x Data..:? "UsagePrice")+ )++instance Prelude.Hashable ReservedInstanceOffering where+ hashWithSalt _salt ReservedInstanceOffering' {..} =+ _salt+ `Prelude.hashWithSalt` currencyCode+ `Prelude.hashWithSalt` duration+ `Prelude.hashWithSalt` fixedPrice+ `Prelude.hashWithSalt` instanceType+ `Prelude.hashWithSalt` paymentOption+ `Prelude.hashWithSalt` recurringCharges+ `Prelude.hashWithSalt` reservedInstanceOfferingId+ `Prelude.hashWithSalt` usagePrice++instance Prelude.NFData ReservedInstanceOffering where+ rnf ReservedInstanceOffering' {..} =+ Prelude.rnf currencyCode+ `Prelude.seq` Prelude.rnf duration+ `Prelude.seq` Prelude.rnf fixedPrice+ `Prelude.seq` Prelude.rnf instanceType+ `Prelude.seq` Prelude.rnf paymentOption+ `Prelude.seq` Prelude.rnf recurringCharges+ `Prelude.seq` Prelude.rnf reservedInstanceOfferingId+ `Prelude.seq` Prelude.rnf usagePrice
+ gen/Amazonka/OpenSearch/Types/ReservedInstancePaymentOption.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.OpenSearch.Types.ReservedInstancePaymentOption+-- 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.OpenSearch.Types.ReservedInstancePaymentOption+ ( ReservedInstancePaymentOption+ ( ..,+ ReservedInstancePaymentOption_ALL_UPFRONT,+ ReservedInstancePaymentOption_NO_UPFRONT,+ ReservedInstancePaymentOption_PARTIAL_UPFRONT+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ReservedInstancePaymentOption = ReservedInstancePaymentOption'+ { fromReservedInstancePaymentOption ::+ 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 ReservedInstancePaymentOption_ALL_UPFRONT :: ReservedInstancePaymentOption+pattern ReservedInstancePaymentOption_ALL_UPFRONT = ReservedInstancePaymentOption' "ALL_UPFRONT"++pattern ReservedInstancePaymentOption_NO_UPFRONT :: ReservedInstancePaymentOption+pattern ReservedInstancePaymentOption_NO_UPFRONT = ReservedInstancePaymentOption' "NO_UPFRONT"++pattern ReservedInstancePaymentOption_PARTIAL_UPFRONT :: ReservedInstancePaymentOption+pattern ReservedInstancePaymentOption_PARTIAL_UPFRONT = ReservedInstancePaymentOption' "PARTIAL_UPFRONT"++{-# COMPLETE+ ReservedInstancePaymentOption_ALL_UPFRONT,+ ReservedInstancePaymentOption_NO_UPFRONT,+ ReservedInstancePaymentOption_PARTIAL_UPFRONT,+ ReservedInstancePaymentOption'+ #-}
+ gen/Amazonka/OpenSearch/Types/RollbackOnDisable.hs view
@@ -0,0 +1,72 @@+{-# 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.OpenSearch.Types.RollbackOnDisable+-- 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.OpenSearch.Types.RollbackOnDisable+ ( RollbackOnDisable+ ( ..,+ RollbackOnDisable_DEFAULT_ROLLBACK,+ RollbackOnDisable_NO_ROLLBACK+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | The rollback state while disabling Auto-Tune for the domain.+newtype RollbackOnDisable = RollbackOnDisable'+ { fromRollbackOnDisable ::+ 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 RollbackOnDisable_DEFAULT_ROLLBACK :: RollbackOnDisable+pattern RollbackOnDisable_DEFAULT_ROLLBACK = RollbackOnDisable' "DEFAULT_ROLLBACK"++pattern RollbackOnDisable_NO_ROLLBACK :: RollbackOnDisable+pattern RollbackOnDisable_NO_ROLLBACK = RollbackOnDisable' "NO_ROLLBACK"++{-# COMPLETE+ RollbackOnDisable_DEFAULT_ROLLBACK,+ RollbackOnDisable_NO_ROLLBACK,+ RollbackOnDisable'+ #-}
+ gen/Amazonka/OpenSearch/Types/SAMLIdp.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.OpenSearch.Types.SAMLIdp+-- 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.OpenSearch.Types.SAMLIdp 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 SAML identity povider information.+--+-- /See:/ 'newSAMLIdp' smart constructor.+data SAMLIdp = SAMLIdp'+ { -- | The metadata of the SAML application, in XML format.+ metadataContent :: Prelude.Text,+ -- | The unique entity ID of the application in the SAML identity provider.+ entityId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SAMLIdp' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'metadataContent', 'sAMLIdp_metadataContent' - The metadata of the SAML application, in XML format.+--+-- 'entityId', 'sAMLIdp_entityId' - The unique entity ID of the application in the SAML identity provider.+newSAMLIdp ::+ -- | 'metadataContent'+ Prelude.Text ->+ -- | 'entityId'+ Prelude.Text ->+ SAMLIdp+newSAMLIdp pMetadataContent_ pEntityId_ =+ SAMLIdp'+ { metadataContent = pMetadataContent_,+ entityId = pEntityId_+ }++-- | The metadata of the SAML application, in XML format.+sAMLIdp_metadataContent :: Lens.Lens' SAMLIdp Prelude.Text+sAMLIdp_metadataContent = Lens.lens (\SAMLIdp' {metadataContent} -> metadataContent) (\s@SAMLIdp' {} a -> s {metadataContent = a} :: SAMLIdp)++-- | The unique entity ID of the application in the SAML identity provider.+sAMLIdp_entityId :: Lens.Lens' SAMLIdp Prelude.Text+sAMLIdp_entityId = Lens.lens (\SAMLIdp' {entityId} -> entityId) (\s@SAMLIdp' {} a -> s {entityId = a} :: SAMLIdp)++instance Data.FromJSON SAMLIdp where+ parseJSON =+ Data.withObject+ "SAMLIdp"+ ( \x ->+ SAMLIdp'+ Prelude.<$> (x Data..: "MetadataContent")+ Prelude.<*> (x Data..: "EntityId")+ )++instance Prelude.Hashable SAMLIdp where+ hashWithSalt _salt SAMLIdp' {..} =+ _salt+ `Prelude.hashWithSalt` metadataContent+ `Prelude.hashWithSalt` entityId++instance Prelude.NFData SAMLIdp where+ rnf SAMLIdp' {..} =+ Prelude.rnf metadataContent+ `Prelude.seq` Prelude.rnf entityId++instance Data.ToJSON SAMLIdp where+ toJSON SAMLIdp' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("MetadataContent" Data..= metadataContent),+ Prelude.Just ("EntityId" Data..= entityId)+ ]+ )
+ gen/Amazonka/OpenSearch/Types/SAMLOptionsInput.hs view
@@ -0,0 +1,160 @@+{-# 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.OpenSearch.Types.SAMLOptionsInput+-- 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.OpenSearch.Types.SAMLOptionsInput where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.SAMLIdp+import qualified Amazonka.Prelude as Prelude++-- | The SAML authentication configuration for an Amazon OpenSearch Service+-- domain.+--+-- /See:/ 'newSAMLOptionsInput' smart constructor.+data SAMLOptionsInput = SAMLOptionsInput'+ { -- | True to enable SAML authentication for a domain.+ enabled :: Prelude.Maybe Prelude.Bool,+ -- | The SAML Identity Provider\'s information.+ idp :: Prelude.Maybe SAMLIdp,+ -- | The backend role that the SAML master user is mapped to.+ masterBackendRole :: Prelude.Maybe Prelude.Text,+ -- | The SAML master user name, which is stored in the domain\'s internal+ -- user database.+ masterUserName :: Prelude.Maybe (Data.Sensitive Prelude.Text),+ -- | Element of the SAML assertion to use for backend roles. Default is+ -- @roles@.+ rolesKey :: Prelude.Maybe Prelude.Text,+ -- | The duration, in minutes, after which a user session becomes inactive.+ -- Acceptable values are between 1 and 1440, and the default value is 60.+ sessionTimeoutMinutes :: Prelude.Maybe Prelude.Int,+ -- | Element of the SAML assertion to use for the user name. Default is+ -- @NameID@.+ subjectKey :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SAMLOptionsInput' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'enabled', 'sAMLOptionsInput_enabled' - True to enable SAML authentication for a domain.+--+-- 'idp', 'sAMLOptionsInput_idp' - The SAML Identity Provider\'s information.+--+-- 'masterBackendRole', 'sAMLOptionsInput_masterBackendRole' - The backend role that the SAML master user is mapped to.+--+-- 'masterUserName', 'sAMLOptionsInput_masterUserName' - The SAML master user name, which is stored in the domain\'s internal+-- user database.+--+-- 'rolesKey', 'sAMLOptionsInput_rolesKey' - Element of the SAML assertion to use for backend roles. Default is+-- @roles@.+--+-- 'sessionTimeoutMinutes', 'sAMLOptionsInput_sessionTimeoutMinutes' - The duration, in minutes, after which a user session becomes inactive.+-- Acceptable values are between 1 and 1440, and the default value is 60.+--+-- 'subjectKey', 'sAMLOptionsInput_subjectKey' - Element of the SAML assertion to use for the user name. Default is+-- @NameID@.+newSAMLOptionsInput ::+ SAMLOptionsInput+newSAMLOptionsInput =+ SAMLOptionsInput'+ { enabled = Prelude.Nothing,+ idp = Prelude.Nothing,+ masterBackendRole = Prelude.Nothing,+ masterUserName = Prelude.Nothing,+ rolesKey = Prelude.Nothing,+ sessionTimeoutMinutes = Prelude.Nothing,+ subjectKey = Prelude.Nothing+ }++-- | True to enable SAML authentication for a domain.+sAMLOptionsInput_enabled :: Lens.Lens' SAMLOptionsInput (Prelude.Maybe Prelude.Bool)+sAMLOptionsInput_enabled = Lens.lens (\SAMLOptionsInput' {enabled} -> enabled) (\s@SAMLOptionsInput' {} a -> s {enabled = a} :: SAMLOptionsInput)++-- | The SAML Identity Provider\'s information.+sAMLOptionsInput_idp :: Lens.Lens' SAMLOptionsInput (Prelude.Maybe SAMLIdp)+sAMLOptionsInput_idp = Lens.lens (\SAMLOptionsInput' {idp} -> idp) (\s@SAMLOptionsInput' {} a -> s {idp = a} :: SAMLOptionsInput)++-- | The backend role that the SAML master user is mapped to.+sAMLOptionsInput_masterBackendRole :: Lens.Lens' SAMLOptionsInput (Prelude.Maybe Prelude.Text)+sAMLOptionsInput_masterBackendRole = Lens.lens (\SAMLOptionsInput' {masterBackendRole} -> masterBackendRole) (\s@SAMLOptionsInput' {} a -> s {masterBackendRole = a} :: SAMLOptionsInput)++-- | The SAML master user name, which is stored in the domain\'s internal+-- user database.+sAMLOptionsInput_masterUserName :: Lens.Lens' SAMLOptionsInput (Prelude.Maybe Prelude.Text)+sAMLOptionsInput_masterUserName = Lens.lens (\SAMLOptionsInput' {masterUserName} -> masterUserName) (\s@SAMLOptionsInput' {} a -> s {masterUserName = a} :: SAMLOptionsInput) Prelude.. Lens.mapping Data._Sensitive++-- | Element of the SAML assertion to use for backend roles. Default is+-- @roles@.+sAMLOptionsInput_rolesKey :: Lens.Lens' SAMLOptionsInput (Prelude.Maybe Prelude.Text)+sAMLOptionsInput_rolesKey = Lens.lens (\SAMLOptionsInput' {rolesKey} -> rolesKey) (\s@SAMLOptionsInput' {} a -> s {rolesKey = a} :: SAMLOptionsInput)++-- | The duration, in minutes, after which a user session becomes inactive.+-- Acceptable values are between 1 and 1440, and the default value is 60.+sAMLOptionsInput_sessionTimeoutMinutes :: Lens.Lens' SAMLOptionsInput (Prelude.Maybe Prelude.Int)+sAMLOptionsInput_sessionTimeoutMinutes = Lens.lens (\SAMLOptionsInput' {sessionTimeoutMinutes} -> sessionTimeoutMinutes) (\s@SAMLOptionsInput' {} a -> s {sessionTimeoutMinutes = a} :: SAMLOptionsInput)++-- | Element of the SAML assertion to use for the user name. Default is+-- @NameID@.+sAMLOptionsInput_subjectKey :: Lens.Lens' SAMLOptionsInput (Prelude.Maybe Prelude.Text)+sAMLOptionsInput_subjectKey = Lens.lens (\SAMLOptionsInput' {subjectKey} -> subjectKey) (\s@SAMLOptionsInput' {} a -> s {subjectKey = a} :: SAMLOptionsInput)++instance Prelude.Hashable SAMLOptionsInput where+ hashWithSalt _salt SAMLOptionsInput' {..} =+ _salt+ `Prelude.hashWithSalt` enabled+ `Prelude.hashWithSalt` idp+ `Prelude.hashWithSalt` masterBackendRole+ `Prelude.hashWithSalt` masterUserName+ `Prelude.hashWithSalt` rolesKey+ `Prelude.hashWithSalt` sessionTimeoutMinutes+ `Prelude.hashWithSalt` subjectKey++instance Prelude.NFData SAMLOptionsInput where+ rnf SAMLOptionsInput' {..} =+ Prelude.rnf enabled+ `Prelude.seq` Prelude.rnf idp+ `Prelude.seq` Prelude.rnf masterBackendRole+ `Prelude.seq` Prelude.rnf masterUserName+ `Prelude.seq` Prelude.rnf rolesKey+ `Prelude.seq` Prelude.rnf sessionTimeoutMinutes+ `Prelude.seq` Prelude.rnf subjectKey++instance Data.ToJSON SAMLOptionsInput where+ toJSON SAMLOptionsInput' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("Enabled" Data..=) Prelude.<$> enabled,+ ("Idp" Data..=) Prelude.<$> idp,+ ("MasterBackendRole" Data..=)+ Prelude.<$> masterBackendRole,+ ("MasterUserName" Data..=)+ Prelude.<$> masterUserName,+ ("RolesKey" Data..=) Prelude.<$> rolesKey,+ ("SessionTimeoutMinutes" Data..=)+ Prelude.<$> sessionTimeoutMinutes,+ ("SubjectKey" Data..=) Prelude.<$> subjectKey+ ]+ )
+ gen/Amazonka/OpenSearch/Types/SAMLOptionsOutput.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.OpenSearch.Types.SAMLOptionsOutput+-- 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.OpenSearch.Types.SAMLOptionsOutput where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.SAMLIdp+import qualified Amazonka.Prelude as Prelude++-- | Describes the SAML application configured for the domain.+--+-- /See:/ 'newSAMLOptionsOutput' smart constructor.+data SAMLOptionsOutput = SAMLOptionsOutput'+ { -- | True if SAML is enabled.+ enabled :: Prelude.Maybe Prelude.Bool,+ -- | Describes the SAML identity provider\'s information.+ idp :: Prelude.Maybe SAMLIdp,+ -- | The key used for matching the SAML roles attribute.+ rolesKey :: Prelude.Maybe Prelude.Text,+ -- | The duration, in minutes, after which a user session becomes inactive.+ sessionTimeoutMinutes :: Prelude.Maybe Prelude.Int,+ -- | The key used for matching the SAML subject attribute.+ subjectKey :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SAMLOptionsOutput' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'enabled', 'sAMLOptionsOutput_enabled' - True if SAML is enabled.+--+-- 'idp', 'sAMLOptionsOutput_idp' - Describes the SAML identity provider\'s information.+--+-- 'rolesKey', 'sAMLOptionsOutput_rolesKey' - The key used for matching the SAML roles attribute.+--+-- 'sessionTimeoutMinutes', 'sAMLOptionsOutput_sessionTimeoutMinutes' - The duration, in minutes, after which a user session becomes inactive.+--+-- 'subjectKey', 'sAMLOptionsOutput_subjectKey' - The key used for matching the SAML subject attribute.+newSAMLOptionsOutput ::+ SAMLOptionsOutput+newSAMLOptionsOutput =+ SAMLOptionsOutput'+ { enabled = Prelude.Nothing,+ idp = Prelude.Nothing,+ rolesKey = Prelude.Nothing,+ sessionTimeoutMinutes = Prelude.Nothing,+ subjectKey = Prelude.Nothing+ }++-- | True if SAML is enabled.+sAMLOptionsOutput_enabled :: Lens.Lens' SAMLOptionsOutput (Prelude.Maybe Prelude.Bool)+sAMLOptionsOutput_enabled = Lens.lens (\SAMLOptionsOutput' {enabled} -> enabled) (\s@SAMLOptionsOutput' {} a -> s {enabled = a} :: SAMLOptionsOutput)++-- | Describes the SAML identity provider\'s information.+sAMLOptionsOutput_idp :: Lens.Lens' SAMLOptionsOutput (Prelude.Maybe SAMLIdp)+sAMLOptionsOutput_idp = Lens.lens (\SAMLOptionsOutput' {idp} -> idp) (\s@SAMLOptionsOutput' {} a -> s {idp = a} :: SAMLOptionsOutput)++-- | The key used for matching the SAML roles attribute.+sAMLOptionsOutput_rolesKey :: Lens.Lens' SAMLOptionsOutput (Prelude.Maybe Prelude.Text)+sAMLOptionsOutput_rolesKey = Lens.lens (\SAMLOptionsOutput' {rolesKey} -> rolesKey) (\s@SAMLOptionsOutput' {} a -> s {rolesKey = a} :: SAMLOptionsOutput)++-- | The duration, in minutes, after which a user session becomes inactive.+sAMLOptionsOutput_sessionTimeoutMinutes :: Lens.Lens' SAMLOptionsOutput (Prelude.Maybe Prelude.Int)+sAMLOptionsOutput_sessionTimeoutMinutes = Lens.lens (\SAMLOptionsOutput' {sessionTimeoutMinutes} -> sessionTimeoutMinutes) (\s@SAMLOptionsOutput' {} a -> s {sessionTimeoutMinutes = a} :: SAMLOptionsOutput)++-- | The key used for matching the SAML subject attribute.+sAMLOptionsOutput_subjectKey :: Lens.Lens' SAMLOptionsOutput (Prelude.Maybe Prelude.Text)+sAMLOptionsOutput_subjectKey = Lens.lens (\SAMLOptionsOutput' {subjectKey} -> subjectKey) (\s@SAMLOptionsOutput' {} a -> s {subjectKey = a} :: SAMLOptionsOutput)++instance Data.FromJSON SAMLOptionsOutput where+ parseJSON =+ Data.withObject+ "SAMLOptionsOutput"+ ( \x ->+ SAMLOptionsOutput'+ Prelude.<$> (x Data..:? "Enabled")+ Prelude.<*> (x Data..:? "Idp")+ Prelude.<*> (x Data..:? "RolesKey")+ Prelude.<*> (x Data..:? "SessionTimeoutMinutes")+ Prelude.<*> (x Data..:? "SubjectKey")+ )++instance Prelude.Hashable SAMLOptionsOutput where+ hashWithSalt _salt SAMLOptionsOutput' {..} =+ _salt+ `Prelude.hashWithSalt` enabled+ `Prelude.hashWithSalt` idp+ `Prelude.hashWithSalt` rolesKey+ `Prelude.hashWithSalt` sessionTimeoutMinutes+ `Prelude.hashWithSalt` subjectKey++instance Prelude.NFData SAMLOptionsOutput where+ rnf SAMLOptionsOutput' {..} =+ Prelude.rnf enabled+ `Prelude.seq` Prelude.rnf idp+ `Prelude.seq` Prelude.rnf rolesKey+ `Prelude.seq` Prelude.rnf sessionTimeoutMinutes+ `Prelude.seq` Prelude.rnf subjectKey
+ gen/Amazonka/OpenSearch/Types/ScheduledAutoTuneActionType.hs view
@@ -0,0 +1,72 @@+{-# 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.OpenSearch.Types.ScheduledAutoTuneActionType+-- 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.OpenSearch.Types.ScheduledAutoTuneActionType+ ( ScheduledAutoTuneActionType+ ( ..,+ ScheduledAutoTuneActionType_JVM_HEAP_SIZE_TUNING,+ ScheduledAutoTuneActionType_JVM_YOUNG_GEN_TUNING+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | The Auto-Tune action type.+newtype ScheduledAutoTuneActionType = ScheduledAutoTuneActionType'+ { fromScheduledAutoTuneActionType ::+ 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 ScheduledAutoTuneActionType_JVM_HEAP_SIZE_TUNING :: ScheduledAutoTuneActionType+pattern ScheduledAutoTuneActionType_JVM_HEAP_SIZE_TUNING = ScheduledAutoTuneActionType' "JVM_HEAP_SIZE_TUNING"++pattern ScheduledAutoTuneActionType_JVM_YOUNG_GEN_TUNING :: ScheduledAutoTuneActionType+pattern ScheduledAutoTuneActionType_JVM_YOUNG_GEN_TUNING = ScheduledAutoTuneActionType' "JVM_YOUNG_GEN_TUNING"++{-# COMPLETE+ ScheduledAutoTuneActionType_JVM_HEAP_SIZE_TUNING,+ ScheduledAutoTuneActionType_JVM_YOUNG_GEN_TUNING,+ ScheduledAutoTuneActionType'+ #-}
+ gen/Amazonka/OpenSearch/Types/ScheduledAutoTuneDetails.hs view
@@ -0,0 +1,115 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.OpenSearch.Types.ScheduledAutoTuneDetails+-- 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.OpenSearch.Types.ScheduledAutoTuneDetails where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.ScheduledAutoTuneActionType+import Amazonka.OpenSearch.Types.ScheduledAutoTuneSeverityType+import qualified Amazonka.Prelude as Prelude++-- | Specifies details about a scheduled Auto-Tune action. For more+-- information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/auto-tune.html Auto-Tune for Amazon OpenSearch Service>.+--+-- /See:/ 'newScheduledAutoTuneDetails' smart constructor.+data ScheduledAutoTuneDetails = ScheduledAutoTuneDetails'+ { -- | A description of the Auto-Tune action.+ action :: Prelude.Maybe Prelude.Text,+ -- | The type of Auto-Tune action.+ actionType :: Prelude.Maybe ScheduledAutoTuneActionType,+ -- | The date and time when the Auto-Tune action is scheduled for the domain.+ date :: Prelude.Maybe Data.POSIX,+ -- | The severity of the Auto-Tune action. Valid values are @LOW@, @MEDIUM@,+ -- and @HIGH@.+ severity :: Prelude.Maybe ScheduledAutoTuneSeverityType+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ScheduledAutoTuneDetails' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'action', 'scheduledAutoTuneDetails_action' - A description of the Auto-Tune action.+--+-- 'actionType', 'scheduledAutoTuneDetails_actionType' - The type of Auto-Tune action.+--+-- 'date', 'scheduledAutoTuneDetails_date' - The date and time when the Auto-Tune action is scheduled for the domain.+--+-- 'severity', 'scheduledAutoTuneDetails_severity' - The severity of the Auto-Tune action. Valid values are @LOW@, @MEDIUM@,+-- and @HIGH@.+newScheduledAutoTuneDetails ::+ ScheduledAutoTuneDetails+newScheduledAutoTuneDetails =+ ScheduledAutoTuneDetails'+ { action = Prelude.Nothing,+ actionType = Prelude.Nothing,+ date = Prelude.Nothing,+ severity = Prelude.Nothing+ }++-- | A description of the Auto-Tune action.+scheduledAutoTuneDetails_action :: Lens.Lens' ScheduledAutoTuneDetails (Prelude.Maybe Prelude.Text)+scheduledAutoTuneDetails_action = Lens.lens (\ScheduledAutoTuneDetails' {action} -> action) (\s@ScheduledAutoTuneDetails' {} a -> s {action = a} :: ScheduledAutoTuneDetails)++-- | The type of Auto-Tune action.+scheduledAutoTuneDetails_actionType :: Lens.Lens' ScheduledAutoTuneDetails (Prelude.Maybe ScheduledAutoTuneActionType)+scheduledAutoTuneDetails_actionType = Lens.lens (\ScheduledAutoTuneDetails' {actionType} -> actionType) (\s@ScheduledAutoTuneDetails' {} a -> s {actionType = a} :: ScheduledAutoTuneDetails)++-- | The date and time when the Auto-Tune action is scheduled for the domain.+scheduledAutoTuneDetails_date :: Lens.Lens' ScheduledAutoTuneDetails (Prelude.Maybe Prelude.UTCTime)+scheduledAutoTuneDetails_date = Lens.lens (\ScheduledAutoTuneDetails' {date} -> date) (\s@ScheduledAutoTuneDetails' {} a -> s {date = a} :: ScheduledAutoTuneDetails) Prelude.. Lens.mapping Data._Time++-- | The severity of the Auto-Tune action. Valid values are @LOW@, @MEDIUM@,+-- and @HIGH@.+scheduledAutoTuneDetails_severity :: Lens.Lens' ScheduledAutoTuneDetails (Prelude.Maybe ScheduledAutoTuneSeverityType)+scheduledAutoTuneDetails_severity = Lens.lens (\ScheduledAutoTuneDetails' {severity} -> severity) (\s@ScheduledAutoTuneDetails' {} a -> s {severity = a} :: ScheduledAutoTuneDetails)++instance Data.FromJSON ScheduledAutoTuneDetails where+ parseJSON =+ Data.withObject+ "ScheduledAutoTuneDetails"+ ( \x ->+ ScheduledAutoTuneDetails'+ Prelude.<$> (x Data..:? "Action")+ Prelude.<*> (x Data..:? "ActionType")+ Prelude.<*> (x Data..:? "Date")+ Prelude.<*> (x Data..:? "Severity")+ )++instance Prelude.Hashable ScheduledAutoTuneDetails where+ hashWithSalt _salt ScheduledAutoTuneDetails' {..} =+ _salt+ `Prelude.hashWithSalt` action+ `Prelude.hashWithSalt` actionType+ `Prelude.hashWithSalt` date+ `Prelude.hashWithSalt` severity++instance Prelude.NFData ScheduledAutoTuneDetails where+ rnf ScheduledAutoTuneDetails' {..} =+ Prelude.rnf action+ `Prelude.seq` Prelude.rnf actionType+ `Prelude.seq` Prelude.rnf date+ `Prelude.seq` Prelude.rnf severity
+ gen/Amazonka/OpenSearch/Types/ScheduledAutoTuneSeverityType.hs view
@@ -0,0 +1,77 @@+{-# 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.OpenSearch.Types.ScheduledAutoTuneSeverityType+-- 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.OpenSearch.Types.ScheduledAutoTuneSeverityType+ ( ScheduledAutoTuneSeverityType+ ( ..,+ ScheduledAutoTuneSeverityType_HIGH,+ ScheduledAutoTuneSeverityType_LOW,+ ScheduledAutoTuneSeverityType_MEDIUM+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | The Auto-Tune action severity.+newtype ScheduledAutoTuneSeverityType = ScheduledAutoTuneSeverityType'+ { fromScheduledAutoTuneSeverityType ::+ 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 ScheduledAutoTuneSeverityType_HIGH :: ScheduledAutoTuneSeverityType+pattern ScheduledAutoTuneSeverityType_HIGH = ScheduledAutoTuneSeverityType' "HIGH"++pattern ScheduledAutoTuneSeverityType_LOW :: ScheduledAutoTuneSeverityType+pattern ScheduledAutoTuneSeverityType_LOW = ScheduledAutoTuneSeverityType' "LOW"++pattern ScheduledAutoTuneSeverityType_MEDIUM :: ScheduledAutoTuneSeverityType+pattern ScheduledAutoTuneSeverityType_MEDIUM = ScheduledAutoTuneSeverityType' "MEDIUM"++{-# COMPLETE+ ScheduledAutoTuneSeverityType_HIGH,+ ScheduledAutoTuneSeverityType_LOW,+ ScheduledAutoTuneSeverityType_MEDIUM,+ ScheduledAutoTuneSeverityType'+ #-}
+ gen/Amazonka/OpenSearch/Types/ServiceSoftwareOptions.hs view
@@ -0,0 +1,178 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.OpenSearch.Types.ServiceSoftwareOptions+-- 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.OpenSearch.Types.ServiceSoftwareOptions where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.DeploymentStatus+import qualified Amazonka.Prelude as Prelude++-- | The current status of the service software for an Amazon OpenSearch+-- Service domain. For more information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/service-software.html Service software updates in Amazon OpenSearch Service>.+--+-- /See:/ 'newServiceSoftwareOptions' smart constructor.+data ServiceSoftwareOptions = ServiceSoftwareOptions'+ { -- | The timestamp, in Epoch time, until which you can manually request a+ -- service software update. After this date, we automatically update your+ -- service software.+ automatedUpdateDate :: Prelude.Maybe Data.POSIX,+ -- | True if you\'re able to cancel your service software version update.+ -- False if you can\'t cancel your service software update.+ cancellable :: Prelude.Maybe Prelude.Bool,+ -- | The current service software version present on the domain.+ currentVersion :: Prelude.Maybe Prelude.Text,+ -- | A description of the service software update status.+ description :: Prelude.Maybe Prelude.Text,+ -- | The new service software version, if one is available.+ newVersion' :: Prelude.Maybe Prelude.Text,+ -- | True if a service software is never automatically updated. False if a+ -- service software is automatically updated after the automated update+ -- date.+ optionalDeployment :: Prelude.Maybe Prelude.Bool,+ -- | True if you\'re able to update your service software version. False if+ -- you can\'t update your service software version.+ updateAvailable :: Prelude.Maybe Prelude.Bool,+ -- | The status of your service software update.+ updateStatus :: Prelude.Maybe DeploymentStatus+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ServiceSoftwareOptions' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'automatedUpdateDate', 'serviceSoftwareOptions_automatedUpdateDate' - The timestamp, in Epoch time, until which you can manually request a+-- service software update. After this date, we automatically update your+-- service software.+--+-- 'cancellable', 'serviceSoftwareOptions_cancellable' - True if you\'re able to cancel your service software version update.+-- False if you can\'t cancel your service software update.+--+-- 'currentVersion', 'serviceSoftwareOptions_currentVersion' - The current service software version present on the domain.+--+-- 'description', 'serviceSoftwareOptions_description' - A description of the service software update status.+--+-- 'newVersion'', 'serviceSoftwareOptions_newVersion' - The new service software version, if one is available.+--+-- 'optionalDeployment', 'serviceSoftwareOptions_optionalDeployment' - True if a service software is never automatically updated. False if a+-- service software is automatically updated after the automated update+-- date.+--+-- 'updateAvailable', 'serviceSoftwareOptions_updateAvailable' - True if you\'re able to update your service software version. False if+-- you can\'t update your service software version.+--+-- 'updateStatus', 'serviceSoftwareOptions_updateStatus' - The status of your service software update.+newServiceSoftwareOptions ::+ ServiceSoftwareOptions+newServiceSoftwareOptions =+ ServiceSoftwareOptions'+ { automatedUpdateDate =+ Prelude.Nothing,+ cancellable = Prelude.Nothing,+ currentVersion = Prelude.Nothing,+ description = Prelude.Nothing,+ newVersion' = Prelude.Nothing,+ optionalDeployment = Prelude.Nothing,+ updateAvailable = Prelude.Nothing,+ updateStatus = Prelude.Nothing+ }++-- | The timestamp, in Epoch time, until which you can manually request a+-- service software update. After this date, we automatically update your+-- service software.+serviceSoftwareOptions_automatedUpdateDate :: Lens.Lens' ServiceSoftwareOptions (Prelude.Maybe Prelude.UTCTime)+serviceSoftwareOptions_automatedUpdateDate = Lens.lens (\ServiceSoftwareOptions' {automatedUpdateDate} -> automatedUpdateDate) (\s@ServiceSoftwareOptions' {} a -> s {automatedUpdateDate = a} :: ServiceSoftwareOptions) Prelude.. Lens.mapping Data._Time++-- | True if you\'re able to cancel your service software version update.+-- False if you can\'t cancel your service software update.+serviceSoftwareOptions_cancellable :: Lens.Lens' ServiceSoftwareOptions (Prelude.Maybe Prelude.Bool)+serviceSoftwareOptions_cancellable = Lens.lens (\ServiceSoftwareOptions' {cancellable} -> cancellable) (\s@ServiceSoftwareOptions' {} a -> s {cancellable = a} :: ServiceSoftwareOptions)++-- | The current service software version present on the domain.+serviceSoftwareOptions_currentVersion :: Lens.Lens' ServiceSoftwareOptions (Prelude.Maybe Prelude.Text)+serviceSoftwareOptions_currentVersion = Lens.lens (\ServiceSoftwareOptions' {currentVersion} -> currentVersion) (\s@ServiceSoftwareOptions' {} a -> s {currentVersion = a} :: ServiceSoftwareOptions)++-- | A description of the service software update status.+serviceSoftwareOptions_description :: Lens.Lens' ServiceSoftwareOptions (Prelude.Maybe Prelude.Text)+serviceSoftwareOptions_description = Lens.lens (\ServiceSoftwareOptions' {description} -> description) (\s@ServiceSoftwareOptions' {} a -> s {description = a} :: ServiceSoftwareOptions)++-- | The new service software version, if one is available.+serviceSoftwareOptions_newVersion :: Lens.Lens' ServiceSoftwareOptions (Prelude.Maybe Prelude.Text)+serviceSoftwareOptions_newVersion = Lens.lens (\ServiceSoftwareOptions' {newVersion'} -> newVersion') (\s@ServiceSoftwareOptions' {} a -> s {newVersion' = a} :: ServiceSoftwareOptions)++-- | True if a service software is never automatically updated. False if a+-- service software is automatically updated after the automated update+-- date.+serviceSoftwareOptions_optionalDeployment :: Lens.Lens' ServiceSoftwareOptions (Prelude.Maybe Prelude.Bool)+serviceSoftwareOptions_optionalDeployment = Lens.lens (\ServiceSoftwareOptions' {optionalDeployment} -> optionalDeployment) (\s@ServiceSoftwareOptions' {} a -> s {optionalDeployment = a} :: ServiceSoftwareOptions)++-- | True if you\'re able to update your service software version. False if+-- you can\'t update your service software version.+serviceSoftwareOptions_updateAvailable :: Lens.Lens' ServiceSoftwareOptions (Prelude.Maybe Prelude.Bool)+serviceSoftwareOptions_updateAvailable = Lens.lens (\ServiceSoftwareOptions' {updateAvailable} -> updateAvailable) (\s@ServiceSoftwareOptions' {} a -> s {updateAvailable = a} :: ServiceSoftwareOptions)++-- | The status of your service software update.+serviceSoftwareOptions_updateStatus :: Lens.Lens' ServiceSoftwareOptions (Prelude.Maybe DeploymentStatus)+serviceSoftwareOptions_updateStatus = Lens.lens (\ServiceSoftwareOptions' {updateStatus} -> updateStatus) (\s@ServiceSoftwareOptions' {} a -> s {updateStatus = a} :: ServiceSoftwareOptions)++instance Data.FromJSON ServiceSoftwareOptions where+ parseJSON =+ Data.withObject+ "ServiceSoftwareOptions"+ ( \x ->+ ServiceSoftwareOptions'+ Prelude.<$> (x Data..:? "AutomatedUpdateDate")+ Prelude.<*> (x Data..:? "Cancellable")+ Prelude.<*> (x Data..:? "CurrentVersion")+ Prelude.<*> (x Data..:? "Description")+ Prelude.<*> (x Data..:? "NewVersion")+ Prelude.<*> (x Data..:? "OptionalDeployment")+ Prelude.<*> (x Data..:? "UpdateAvailable")+ Prelude.<*> (x Data..:? "UpdateStatus")+ )++instance Prelude.Hashable ServiceSoftwareOptions where+ hashWithSalt _salt ServiceSoftwareOptions' {..} =+ _salt+ `Prelude.hashWithSalt` automatedUpdateDate+ `Prelude.hashWithSalt` cancellable+ `Prelude.hashWithSalt` currentVersion+ `Prelude.hashWithSalt` description+ `Prelude.hashWithSalt` newVersion'+ `Prelude.hashWithSalt` optionalDeployment+ `Prelude.hashWithSalt` updateAvailable+ `Prelude.hashWithSalt` updateStatus++instance Prelude.NFData ServiceSoftwareOptions where+ rnf ServiceSoftwareOptions' {..} =+ Prelude.rnf automatedUpdateDate+ `Prelude.seq` Prelude.rnf cancellable+ `Prelude.seq` Prelude.rnf currentVersion+ `Prelude.seq` Prelude.rnf description+ `Prelude.seq` Prelude.rnf newVersion'+ `Prelude.seq` Prelude.rnf optionalDeployment+ `Prelude.seq` Prelude.rnf updateAvailable+ `Prelude.seq` Prelude.rnf updateStatus
+ gen/Amazonka/OpenSearch/Types/SnapshotOptions.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.OpenSearch.Types.SnapshotOptions+-- 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.OpenSearch.Types.SnapshotOptions 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 time, in UTC format, when OpenSearch Service takes a daily automated+-- snapshot of the specified domain. Default is @0@ hours.+--+-- /See:/ 'newSnapshotOptions' smart constructor.+data SnapshotOptions = SnapshotOptions'+ { -- | The time, in UTC format, when OpenSearch Service takes a daily automated+ -- snapshot of the specified domain. Default is @0@ hours.+ automatedSnapshotStartHour :: Prelude.Maybe Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SnapshotOptions' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'automatedSnapshotStartHour', 'snapshotOptions_automatedSnapshotStartHour' - The time, in UTC format, when OpenSearch Service takes a daily automated+-- snapshot of the specified domain. Default is @0@ hours.+newSnapshotOptions ::+ SnapshotOptions+newSnapshotOptions =+ SnapshotOptions'+ { automatedSnapshotStartHour =+ Prelude.Nothing+ }++-- | The time, in UTC format, when OpenSearch Service takes a daily automated+-- snapshot of the specified domain. Default is @0@ hours.+snapshotOptions_automatedSnapshotStartHour :: Lens.Lens' SnapshotOptions (Prelude.Maybe Prelude.Int)+snapshotOptions_automatedSnapshotStartHour = Lens.lens (\SnapshotOptions' {automatedSnapshotStartHour} -> automatedSnapshotStartHour) (\s@SnapshotOptions' {} a -> s {automatedSnapshotStartHour = a} :: SnapshotOptions)++instance Data.FromJSON SnapshotOptions where+ parseJSON =+ Data.withObject+ "SnapshotOptions"+ ( \x ->+ SnapshotOptions'+ Prelude.<$> (x Data..:? "AutomatedSnapshotStartHour")+ )++instance Prelude.Hashable SnapshotOptions where+ hashWithSalt _salt SnapshotOptions' {..} =+ _salt+ `Prelude.hashWithSalt` automatedSnapshotStartHour++instance Prelude.NFData SnapshotOptions where+ rnf SnapshotOptions' {..} =+ Prelude.rnf automatedSnapshotStartHour++instance Data.ToJSON SnapshotOptions where+ toJSON SnapshotOptions' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("AutomatedSnapshotStartHour" Data..=)+ Prelude.<$> automatedSnapshotStartHour+ ]+ )
+ gen/Amazonka/OpenSearch/Types/SnapshotOptionsStatus.hs view
@@ -0,0 +1,91 @@+{-# 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.OpenSearch.Types.SnapshotOptionsStatus+-- 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.OpenSearch.Types.SnapshotOptionsStatus where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.OptionStatus+import Amazonka.OpenSearch.Types.SnapshotOptions+import qualified Amazonka.Prelude as Prelude++-- | Container for information about a daily automated snapshot for an+-- OpenSearch Service domain.+--+-- /See:/ 'newSnapshotOptionsStatus' smart constructor.+data SnapshotOptionsStatus = SnapshotOptionsStatus'+ { -- | The daily snapshot options specified for the domain.+ options :: SnapshotOptions,+ -- | The status of a daily automated snapshot.+ status :: OptionStatus+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SnapshotOptionsStatus' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'options', 'snapshotOptionsStatus_options' - The daily snapshot options specified for the domain.+--+-- 'status', 'snapshotOptionsStatus_status' - The status of a daily automated snapshot.+newSnapshotOptionsStatus ::+ -- | 'options'+ SnapshotOptions ->+ -- | 'status'+ OptionStatus ->+ SnapshotOptionsStatus+newSnapshotOptionsStatus pOptions_ pStatus_ =+ SnapshotOptionsStatus'+ { options = pOptions_,+ status = pStatus_+ }++-- | The daily snapshot options specified for the domain.+snapshotOptionsStatus_options :: Lens.Lens' SnapshotOptionsStatus SnapshotOptions+snapshotOptionsStatus_options = Lens.lens (\SnapshotOptionsStatus' {options} -> options) (\s@SnapshotOptionsStatus' {} a -> s {options = a} :: SnapshotOptionsStatus)++-- | The status of a daily automated snapshot.+snapshotOptionsStatus_status :: Lens.Lens' SnapshotOptionsStatus OptionStatus+snapshotOptionsStatus_status = Lens.lens (\SnapshotOptionsStatus' {status} -> status) (\s@SnapshotOptionsStatus' {} a -> s {status = a} :: SnapshotOptionsStatus)++instance Data.FromJSON SnapshotOptionsStatus where+ parseJSON =+ Data.withObject+ "SnapshotOptionsStatus"+ ( \x ->+ SnapshotOptionsStatus'+ Prelude.<$> (x Data..: "Options")+ Prelude.<*> (x Data..: "Status")+ )++instance Prelude.Hashable SnapshotOptionsStatus where+ hashWithSalt _salt SnapshotOptionsStatus' {..} =+ _salt+ `Prelude.hashWithSalt` options+ `Prelude.hashWithSalt` status++instance Prelude.NFData SnapshotOptionsStatus where+ rnf SnapshotOptionsStatus' {..} =+ Prelude.rnf options+ `Prelude.seq` Prelude.rnf status
+ gen/Amazonka/OpenSearch/Types/StorageType.hs view
@@ -0,0 +1,101 @@+{-# 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.OpenSearch.Types.StorageType+-- 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.OpenSearch.Types.StorageType where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.StorageTypeLimit+import qualified Amazonka.Prelude as Prelude++-- | A list of storage types for an Amazon OpenSearch Service domain that are+-- available for a given intance type.+--+-- /See:/ 'newStorageType' smart constructor.+data StorageType = StorageType'+ { -- | The storage sub-type, such as @gp3@ or @io1@.+ storageSubTypeName :: Prelude.Maybe Prelude.Text,+ -- | Limits that are applicable for the given storage type.+ storageTypeLimits :: Prelude.Maybe [StorageTypeLimit],+ -- | The name of the storage type.+ storageTypeName :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'StorageType' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'storageSubTypeName', 'storageType_storageSubTypeName' - The storage sub-type, such as @gp3@ or @io1@.+--+-- 'storageTypeLimits', 'storageType_storageTypeLimits' - Limits that are applicable for the given storage type.+--+-- 'storageTypeName', 'storageType_storageTypeName' - The name of the storage type.+newStorageType ::+ StorageType+newStorageType =+ StorageType'+ { storageSubTypeName = Prelude.Nothing,+ storageTypeLimits = Prelude.Nothing,+ storageTypeName = Prelude.Nothing+ }++-- | The storage sub-type, such as @gp3@ or @io1@.+storageType_storageSubTypeName :: Lens.Lens' StorageType (Prelude.Maybe Prelude.Text)+storageType_storageSubTypeName = Lens.lens (\StorageType' {storageSubTypeName} -> storageSubTypeName) (\s@StorageType' {} a -> s {storageSubTypeName = a} :: StorageType)++-- | Limits that are applicable for the given storage type.+storageType_storageTypeLimits :: Lens.Lens' StorageType (Prelude.Maybe [StorageTypeLimit])+storageType_storageTypeLimits = Lens.lens (\StorageType' {storageTypeLimits} -> storageTypeLimits) (\s@StorageType' {} a -> s {storageTypeLimits = a} :: StorageType) Prelude.. Lens.mapping Lens.coerced++-- | The name of the storage type.+storageType_storageTypeName :: Lens.Lens' StorageType (Prelude.Maybe Prelude.Text)+storageType_storageTypeName = Lens.lens (\StorageType' {storageTypeName} -> storageTypeName) (\s@StorageType' {} a -> s {storageTypeName = a} :: StorageType)++instance Data.FromJSON StorageType where+ parseJSON =+ Data.withObject+ "StorageType"+ ( \x ->+ StorageType'+ Prelude.<$> (x Data..:? "StorageSubTypeName")+ Prelude.<*> ( x+ Data..:? "StorageTypeLimits"+ Data..!= Prelude.mempty+ )+ Prelude.<*> (x Data..:? "StorageTypeName")+ )++instance Prelude.Hashable StorageType where+ hashWithSalt _salt StorageType' {..} =+ _salt+ `Prelude.hashWithSalt` storageSubTypeName+ `Prelude.hashWithSalt` storageTypeLimits+ `Prelude.hashWithSalt` storageTypeName++instance Prelude.NFData StorageType where+ rnf StorageType' {..} =+ Prelude.rnf storageSubTypeName+ `Prelude.seq` Prelude.rnf storageTypeLimits+ `Prelude.seq` Prelude.rnf storageTypeName
+ gen/Amazonka/OpenSearch/Types/StorageTypeLimit.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.OpenSearch.Types.StorageTypeLimit+-- 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.OpenSearch.Types.StorageTypeLimit 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++-- | Limits that are applicable for the given Amazon OpenSearch Service+-- storage type.+--+-- /See:/ 'newStorageTypeLimit' smart constructor.+data StorageTypeLimit = StorageTypeLimit'+ { -- | Name of storage limits that are applicable for the given storage type.+ -- If @StorageType@ is @ebs@, the following options are available:+ --+ -- - __MinimumVolumeSize__ - Minimum volume size that is available for+ -- the given storage type. Can be empty if not applicable.+ --+ -- - __MaximumVolumeSize__ - Maximum volume size that is available for+ -- the given storage type. Can be empty if not applicable.+ --+ -- - __MaximumIops__ - Maximum amount of IOPS that is available for the+ -- given the storage type. Can be empty if not applicable.+ --+ -- - __MinimumIops__ - Minimum amount of IOPS that is available for the+ -- given the storage type. Can be empty if not applicable.+ --+ -- - __MaximumThroughput__ - Maximum amount of throughput that is+ -- available for the given the storage type. Can be empty if not+ -- applicable.+ --+ -- - __MinimumThroughput__ - Minimum amount of throughput that is+ -- available for the given the storage type. Can be empty if not+ -- applicable.+ limitName :: Prelude.Maybe Prelude.Text,+ -- | The limit values.+ limitValues :: Prelude.Maybe [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'StorageTypeLimit' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'limitName', 'storageTypeLimit_limitName' - Name of storage limits that are applicable for the given storage type.+-- If @StorageType@ is @ebs@, the following options are available:+--+-- - __MinimumVolumeSize__ - Minimum volume size that is available for+-- the given storage type. Can be empty if not applicable.+--+-- - __MaximumVolumeSize__ - Maximum volume size that is available for+-- the given storage type. Can be empty if not applicable.+--+-- - __MaximumIops__ - Maximum amount of IOPS that is available for the+-- given the storage type. Can be empty if not applicable.+--+-- - __MinimumIops__ - Minimum amount of IOPS that is available for the+-- given the storage type. Can be empty if not applicable.+--+-- - __MaximumThroughput__ - Maximum amount of throughput that is+-- available for the given the storage type. Can be empty if not+-- applicable.+--+-- - __MinimumThroughput__ - Minimum amount of throughput that is+-- available for the given the storage type. Can be empty if not+-- applicable.+--+-- 'limitValues', 'storageTypeLimit_limitValues' - The limit values.+newStorageTypeLimit ::+ StorageTypeLimit+newStorageTypeLimit =+ StorageTypeLimit'+ { limitName = Prelude.Nothing,+ limitValues = Prelude.Nothing+ }++-- | Name of storage limits that are applicable for the given storage type.+-- If @StorageType@ is @ebs@, the following options are available:+--+-- - __MinimumVolumeSize__ - Minimum volume size that is available for+-- the given storage type. Can be empty if not applicable.+--+-- - __MaximumVolumeSize__ - Maximum volume size that is available for+-- the given storage type. Can be empty if not applicable.+--+-- - __MaximumIops__ - Maximum amount of IOPS that is available for the+-- given the storage type. Can be empty if not applicable.+--+-- - __MinimumIops__ - Minimum amount of IOPS that is available for the+-- given the storage type. Can be empty if not applicable.+--+-- - __MaximumThroughput__ - Maximum amount of throughput that is+-- available for the given the storage type. Can be empty if not+-- applicable.+--+-- - __MinimumThroughput__ - Minimum amount of throughput that is+-- available for the given the storage type. Can be empty if not+-- applicable.+storageTypeLimit_limitName :: Lens.Lens' StorageTypeLimit (Prelude.Maybe Prelude.Text)+storageTypeLimit_limitName = Lens.lens (\StorageTypeLimit' {limitName} -> limitName) (\s@StorageTypeLimit' {} a -> s {limitName = a} :: StorageTypeLimit)++-- | The limit values.+storageTypeLimit_limitValues :: Lens.Lens' StorageTypeLimit (Prelude.Maybe [Prelude.Text])+storageTypeLimit_limitValues = Lens.lens (\StorageTypeLimit' {limitValues} -> limitValues) (\s@StorageTypeLimit' {} a -> s {limitValues = a} :: StorageTypeLimit) Prelude.. Lens.mapping Lens.coerced++instance Data.FromJSON StorageTypeLimit where+ parseJSON =+ Data.withObject+ "StorageTypeLimit"+ ( \x ->+ StorageTypeLimit'+ Prelude.<$> (x Data..:? "LimitName")+ Prelude.<*> (x Data..:? "LimitValues" Data..!= Prelude.mempty)+ )++instance Prelude.Hashable StorageTypeLimit where+ hashWithSalt _salt StorageTypeLimit' {..} =+ _salt+ `Prelude.hashWithSalt` limitName+ `Prelude.hashWithSalt` limitValues++instance Prelude.NFData StorageTypeLimit where+ rnf StorageTypeLimit' {..} =+ Prelude.rnf limitName+ `Prelude.seq` Prelude.rnf limitValues
+ gen/Amazonka/OpenSearch/Types/TLSSecurityPolicy.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.OpenSearch.Types.TLSSecurityPolicy+-- 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.OpenSearch.Types.TLSSecurityPolicy+ ( TLSSecurityPolicy+ ( ..,+ TLSSecurityPolicy_Policy_Min_TLS_1_0_2019_07,+ TLSSecurityPolicy_Policy_Min_TLS_1_2_2019_07+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype TLSSecurityPolicy = TLSSecurityPolicy'+ { fromTLSSecurityPolicy ::+ 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 TLSSecurityPolicy_Policy_Min_TLS_1_0_2019_07 :: TLSSecurityPolicy+pattern TLSSecurityPolicy_Policy_Min_TLS_1_0_2019_07 = TLSSecurityPolicy' "Policy-Min-TLS-1-0-2019-07"++pattern TLSSecurityPolicy_Policy_Min_TLS_1_2_2019_07 :: TLSSecurityPolicy+pattern TLSSecurityPolicy_Policy_Min_TLS_1_2_2019_07 = TLSSecurityPolicy' "Policy-Min-TLS-1-2-2019-07"++{-# COMPLETE+ TLSSecurityPolicy_Policy_Min_TLS_1_0_2019_07,+ TLSSecurityPolicy_Policy_Min_TLS_1_2_2019_07,+ TLSSecurityPolicy'+ #-}
+ gen/Amazonka/OpenSearch/Types/Tag.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.OpenSearch.Types.Tag+-- 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.OpenSearch.Types.Tag 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++-- | A tag (key-value pair) for an Amazon OpenSearch Service resource.+--+-- /See:/ 'newTag' smart constructor.+data Tag = Tag'+ { -- | The tag key. Tag keys must be unique for the domain to which they are+ -- attached.+ key :: Prelude.Text,+ -- | The value assigned to the corresponding tag key. Tag values can be null+ -- and don\'t have to be unique in a tag set. For example, you can have a+ -- key value pair in a tag set of @project : Trinity@ and+ -- @cost-center : Trinity@+ value :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Tag' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'key', 'tag_key' - The tag key. Tag keys must be unique for the domain to which they are+-- attached.+--+-- 'value', 'tag_value' - The value assigned to the corresponding tag key. Tag values can be null+-- and don\'t have to be unique in a tag set. For example, you can have a+-- key value pair in a tag set of @project : Trinity@ and+-- @cost-center : Trinity@+newTag ::+ -- | 'key'+ Prelude.Text ->+ -- | 'value'+ Prelude.Text ->+ Tag+newTag pKey_ pValue_ =+ Tag' {key = pKey_, value = pValue_}++-- | The tag key. Tag keys must be unique for the domain to which they are+-- attached.+tag_key :: Lens.Lens' Tag Prelude.Text+tag_key = Lens.lens (\Tag' {key} -> key) (\s@Tag' {} a -> s {key = a} :: Tag)++-- | The value assigned to the corresponding tag key. Tag values can be null+-- and don\'t have to be unique in a tag set. For example, you can have a+-- key value pair in a tag set of @project : Trinity@ and+-- @cost-center : Trinity@+tag_value :: Lens.Lens' Tag Prelude.Text+tag_value = Lens.lens (\Tag' {value} -> value) (\s@Tag' {} a -> s {value = a} :: Tag)++instance Data.FromJSON Tag where+ parseJSON =+ Data.withObject+ "Tag"+ ( \x ->+ Tag'+ Prelude.<$> (x Data..: "Key")+ Prelude.<*> (x Data..: "Value")+ )++instance Prelude.Hashable Tag where+ hashWithSalt _salt Tag' {..} =+ _salt+ `Prelude.hashWithSalt` key+ `Prelude.hashWithSalt` value++instance Prelude.NFData Tag where+ rnf Tag' {..} =+ Prelude.rnf key `Prelude.seq` Prelude.rnf value++instance Data.ToJSON Tag where+ toJSON Tag' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("Key" Data..= key),+ Prelude.Just ("Value" Data..= value)+ ]+ )
+ gen/Amazonka/OpenSearch/Types/TimeUnit.hs view
@@ -0,0 +1,67 @@+{-# 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.OpenSearch.Types.TimeUnit+-- 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.OpenSearch.Types.TimeUnit+ ( TimeUnit+ ( ..,+ TimeUnit_HOURS+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | The unit of a maintenance schedule duration. Valid value is @HOUR@.+newtype TimeUnit = TimeUnit'+ { fromTimeUnit ::+ 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 TimeUnit_HOURS :: TimeUnit+pattern TimeUnit_HOURS = TimeUnit' "HOURS"++{-# COMPLETE+ TimeUnit_HOURS,+ TimeUnit'+ #-}
+ gen/Amazonka/OpenSearch/Types/UpgradeHistory.hs view
@@ -0,0 +1,144 @@+{-# 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.OpenSearch.Types.UpgradeHistory+-- 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.OpenSearch.Types.UpgradeHistory where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.UpgradeStatus+import Amazonka.OpenSearch.Types.UpgradeStepItem+import qualified Amazonka.Prelude as Prelude++-- | History of the last 10 upgrades and upgrade eligibility checks for an+-- Amazon OpenSearch Service domain.+--+-- /See:/ 'newUpgradeHistory' smart constructor.+data UpgradeHistory = UpgradeHistory'+ { -- | UTC timestamp at which the upgrade API call was made, in the format+ -- @yyyy-MM-ddTHH:mm:ssZ@.+ startTimestamp :: Prelude.Maybe Data.POSIX,+ -- | A list of each step performed as part of a specific upgrade or upgrade+ -- eligibility check.+ stepsList :: Prelude.Maybe [UpgradeStepItem],+ -- | A string that describes the upgrade.+ upgradeName :: Prelude.Maybe Prelude.Text,+ -- | The current status of the upgrade. The status can take one of the+ -- following values:+ --+ -- - In Progress+ --+ -- - Succeeded+ --+ -- - Succeeded with Issues+ --+ -- - Failed+ upgradeStatus :: Prelude.Maybe UpgradeStatus+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpgradeHistory' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'startTimestamp', 'upgradeHistory_startTimestamp' - UTC timestamp at which the upgrade API call was made, in the format+-- @yyyy-MM-ddTHH:mm:ssZ@.+--+-- 'stepsList', 'upgradeHistory_stepsList' - A list of each step performed as part of a specific upgrade or upgrade+-- eligibility check.+--+-- 'upgradeName', 'upgradeHistory_upgradeName' - A string that describes the upgrade.+--+-- 'upgradeStatus', 'upgradeHistory_upgradeStatus' - The current status of the upgrade. The status can take one of the+-- following values:+--+-- - In Progress+--+-- - Succeeded+--+-- - Succeeded with Issues+--+-- - Failed+newUpgradeHistory ::+ UpgradeHistory+newUpgradeHistory =+ UpgradeHistory'+ { startTimestamp = Prelude.Nothing,+ stepsList = Prelude.Nothing,+ upgradeName = Prelude.Nothing,+ upgradeStatus = Prelude.Nothing+ }++-- | UTC timestamp at which the upgrade API call was made, in the format+-- @yyyy-MM-ddTHH:mm:ssZ@.+upgradeHistory_startTimestamp :: Lens.Lens' UpgradeHistory (Prelude.Maybe Prelude.UTCTime)+upgradeHistory_startTimestamp = Lens.lens (\UpgradeHistory' {startTimestamp} -> startTimestamp) (\s@UpgradeHistory' {} a -> s {startTimestamp = a} :: UpgradeHistory) Prelude.. Lens.mapping Data._Time++-- | A list of each step performed as part of a specific upgrade or upgrade+-- eligibility check.+upgradeHistory_stepsList :: Lens.Lens' UpgradeHistory (Prelude.Maybe [UpgradeStepItem])+upgradeHistory_stepsList = Lens.lens (\UpgradeHistory' {stepsList} -> stepsList) (\s@UpgradeHistory' {} a -> s {stepsList = a} :: UpgradeHistory) Prelude.. Lens.mapping Lens.coerced++-- | A string that describes the upgrade.+upgradeHistory_upgradeName :: Lens.Lens' UpgradeHistory (Prelude.Maybe Prelude.Text)+upgradeHistory_upgradeName = Lens.lens (\UpgradeHistory' {upgradeName} -> upgradeName) (\s@UpgradeHistory' {} a -> s {upgradeName = a} :: UpgradeHistory)++-- | The current status of the upgrade. The status can take one of the+-- following values:+--+-- - In Progress+--+-- - Succeeded+--+-- - Succeeded with Issues+--+-- - Failed+upgradeHistory_upgradeStatus :: Lens.Lens' UpgradeHistory (Prelude.Maybe UpgradeStatus)+upgradeHistory_upgradeStatus = Lens.lens (\UpgradeHistory' {upgradeStatus} -> upgradeStatus) (\s@UpgradeHistory' {} a -> s {upgradeStatus = a} :: UpgradeHistory)++instance Data.FromJSON UpgradeHistory where+ parseJSON =+ Data.withObject+ "UpgradeHistory"+ ( \x ->+ UpgradeHistory'+ Prelude.<$> (x Data..:? "StartTimestamp")+ Prelude.<*> (x Data..:? "StepsList" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "UpgradeName")+ Prelude.<*> (x Data..:? "UpgradeStatus")+ )++instance Prelude.Hashable UpgradeHistory where+ hashWithSalt _salt UpgradeHistory' {..} =+ _salt+ `Prelude.hashWithSalt` startTimestamp+ `Prelude.hashWithSalt` stepsList+ `Prelude.hashWithSalt` upgradeName+ `Prelude.hashWithSalt` upgradeStatus++instance Prelude.NFData UpgradeHistory where+ rnf UpgradeHistory' {..} =+ Prelude.rnf startTimestamp+ `Prelude.seq` Prelude.rnf stepsList+ `Prelude.seq` Prelude.rnf upgradeName+ `Prelude.seq` Prelude.rnf upgradeStatus
+ gen/Amazonka/OpenSearch/Types/UpgradeStatus.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.OpenSearch.Types.UpgradeStatus+-- 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.OpenSearch.Types.UpgradeStatus+ ( UpgradeStatus+ ( ..,+ UpgradeStatus_FAILED,+ UpgradeStatus_IN_PROGRESS,+ UpgradeStatus_SUCCEEDED,+ UpgradeStatus_SUCCEEDED_WITH_ISSUES+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype UpgradeStatus = UpgradeStatus'+ { fromUpgradeStatus ::+ 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 UpgradeStatus_FAILED :: UpgradeStatus+pattern UpgradeStatus_FAILED = UpgradeStatus' "FAILED"++pattern UpgradeStatus_IN_PROGRESS :: UpgradeStatus+pattern UpgradeStatus_IN_PROGRESS = UpgradeStatus' "IN_PROGRESS"++pattern UpgradeStatus_SUCCEEDED :: UpgradeStatus+pattern UpgradeStatus_SUCCEEDED = UpgradeStatus' "SUCCEEDED"++pattern UpgradeStatus_SUCCEEDED_WITH_ISSUES :: UpgradeStatus+pattern UpgradeStatus_SUCCEEDED_WITH_ISSUES = UpgradeStatus' "SUCCEEDED_WITH_ISSUES"++{-# COMPLETE+ UpgradeStatus_FAILED,+ UpgradeStatus_IN_PROGRESS,+ UpgradeStatus_SUCCEEDED,+ UpgradeStatus_SUCCEEDED_WITH_ISSUES,+ UpgradeStatus'+ #-}
+ gen/Amazonka/OpenSearch/Types/UpgradeStep.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.OpenSearch.Types.UpgradeStep+-- 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.OpenSearch.Types.UpgradeStep+ ( UpgradeStep+ ( ..,+ UpgradeStep_PRE_UPGRADE_CHECK,+ UpgradeStep_SNAPSHOT,+ UpgradeStep_UPGRADE+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype UpgradeStep = UpgradeStep'+ { fromUpgradeStep ::+ 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 UpgradeStep_PRE_UPGRADE_CHECK :: UpgradeStep+pattern UpgradeStep_PRE_UPGRADE_CHECK = UpgradeStep' "PRE_UPGRADE_CHECK"++pattern UpgradeStep_SNAPSHOT :: UpgradeStep+pattern UpgradeStep_SNAPSHOT = UpgradeStep' "SNAPSHOT"++pattern UpgradeStep_UPGRADE :: UpgradeStep+pattern UpgradeStep_UPGRADE = UpgradeStep' "UPGRADE"++{-# COMPLETE+ UpgradeStep_PRE_UPGRADE_CHECK,+ UpgradeStep_SNAPSHOT,+ UpgradeStep_UPGRADE,+ UpgradeStep'+ #-}
+ gen/Amazonka/OpenSearch/Types/UpgradeStepItem.hs view
@@ -0,0 +1,165 @@+{-# 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.OpenSearch.Types.UpgradeStepItem+-- 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.OpenSearch.Types.UpgradeStepItem where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.UpgradeStatus+import Amazonka.OpenSearch.Types.UpgradeStep+import qualified Amazonka.Prelude as Prelude++-- | Represents a single step of an upgrade or upgrade eligibility check+-- workflow.+--+-- /See:/ 'newUpgradeStepItem' smart constructor.+data UpgradeStepItem = UpgradeStepItem'+ { -- | A list of strings containing detailed information about the errors+ -- encountered in a particular step.+ issues :: Prelude.Maybe [Prelude.Text],+ -- | The floating point value representing the progress percentage of a+ -- particular step.+ progressPercent :: Prelude.Maybe Prelude.Double,+ -- | One of three steps that an upgrade or upgrade eligibility check goes+ -- through:+ --+ -- - PreUpgradeCheck+ --+ -- - Snapshot+ --+ -- - Upgrade+ upgradeStep :: Prelude.Maybe UpgradeStep,+ -- | The current status of the upgrade. The status can take one of the+ -- following values:+ --+ -- - In Progress+ --+ -- - Succeeded+ --+ -- - Succeeded with Issues+ --+ -- - Failed+ upgradeStepStatus :: Prelude.Maybe UpgradeStatus+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpgradeStepItem' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'issues', 'upgradeStepItem_issues' - A list of strings containing detailed information about the errors+-- encountered in a particular step.+--+-- 'progressPercent', 'upgradeStepItem_progressPercent' - The floating point value representing the progress percentage of a+-- particular step.+--+-- 'upgradeStep', 'upgradeStepItem_upgradeStep' - One of three steps that an upgrade or upgrade eligibility check goes+-- through:+--+-- - PreUpgradeCheck+--+-- - Snapshot+--+-- - Upgrade+--+-- 'upgradeStepStatus', 'upgradeStepItem_upgradeStepStatus' - The current status of the upgrade. The status can take one of the+-- following values:+--+-- - In Progress+--+-- - Succeeded+--+-- - Succeeded with Issues+--+-- - Failed+newUpgradeStepItem ::+ UpgradeStepItem+newUpgradeStepItem =+ UpgradeStepItem'+ { issues = Prelude.Nothing,+ progressPercent = Prelude.Nothing,+ upgradeStep = Prelude.Nothing,+ upgradeStepStatus = Prelude.Nothing+ }++-- | A list of strings containing detailed information about the errors+-- encountered in a particular step.+upgradeStepItem_issues :: Lens.Lens' UpgradeStepItem (Prelude.Maybe [Prelude.Text])+upgradeStepItem_issues = Lens.lens (\UpgradeStepItem' {issues} -> issues) (\s@UpgradeStepItem' {} a -> s {issues = a} :: UpgradeStepItem) Prelude.. Lens.mapping Lens.coerced++-- | The floating point value representing the progress percentage of a+-- particular step.+upgradeStepItem_progressPercent :: Lens.Lens' UpgradeStepItem (Prelude.Maybe Prelude.Double)+upgradeStepItem_progressPercent = Lens.lens (\UpgradeStepItem' {progressPercent} -> progressPercent) (\s@UpgradeStepItem' {} a -> s {progressPercent = a} :: UpgradeStepItem)++-- | One of three steps that an upgrade or upgrade eligibility check goes+-- through:+--+-- - PreUpgradeCheck+--+-- - Snapshot+--+-- - Upgrade+upgradeStepItem_upgradeStep :: Lens.Lens' UpgradeStepItem (Prelude.Maybe UpgradeStep)+upgradeStepItem_upgradeStep = Lens.lens (\UpgradeStepItem' {upgradeStep} -> upgradeStep) (\s@UpgradeStepItem' {} a -> s {upgradeStep = a} :: UpgradeStepItem)++-- | The current status of the upgrade. The status can take one of the+-- following values:+--+-- - In Progress+--+-- - Succeeded+--+-- - Succeeded with Issues+--+-- - Failed+upgradeStepItem_upgradeStepStatus :: Lens.Lens' UpgradeStepItem (Prelude.Maybe UpgradeStatus)+upgradeStepItem_upgradeStepStatus = Lens.lens (\UpgradeStepItem' {upgradeStepStatus} -> upgradeStepStatus) (\s@UpgradeStepItem' {} a -> s {upgradeStepStatus = a} :: UpgradeStepItem)++instance Data.FromJSON UpgradeStepItem where+ parseJSON =+ Data.withObject+ "UpgradeStepItem"+ ( \x ->+ UpgradeStepItem'+ Prelude.<$> (x Data..:? "Issues" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "ProgressPercent")+ Prelude.<*> (x Data..:? "UpgradeStep")+ Prelude.<*> (x Data..:? "UpgradeStepStatus")+ )++instance Prelude.Hashable UpgradeStepItem where+ hashWithSalt _salt UpgradeStepItem' {..} =+ _salt+ `Prelude.hashWithSalt` issues+ `Prelude.hashWithSalt` progressPercent+ `Prelude.hashWithSalt` upgradeStep+ `Prelude.hashWithSalt` upgradeStepStatus++instance Prelude.NFData UpgradeStepItem where+ rnf UpgradeStepItem' {..} =+ Prelude.rnf issues+ `Prelude.seq` Prelude.rnf progressPercent+ `Prelude.seq` Prelude.rnf upgradeStep+ `Prelude.seq` Prelude.rnf upgradeStepStatus
+ gen/Amazonka/OpenSearch/Types/VPCDerivedInfo.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.OpenSearch.Types.VPCDerivedInfo+-- 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.OpenSearch.Types.VPCDerivedInfo where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Information about the subnets and security groups for an Amazon+-- OpenSearch Service domain provisioned within a virtual private cloud+-- (VPC). For more information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/vpc.html Launching your Amazon OpenSearch Service domains using a VPC>.+-- This information only exists if the domain was created with+-- @VPCOptions@.+--+-- /See:/ 'newVPCDerivedInfo' smart constructor.+data VPCDerivedInfo = VPCDerivedInfo'+ { -- | The list of Availability Zones associated with the VPC subnets.+ availabilityZones :: Prelude.Maybe [Prelude.Text],+ -- | The list of security group IDs associated with the VPC endpoints for the+ -- domain.+ securityGroupIds :: Prelude.Maybe [Prelude.Text],+ -- | A list of subnet IDs associated with the VPC endpoints for the domain.+ subnetIds :: Prelude.Maybe [Prelude.Text],+ -- | The ID for your VPC. Amazon VPC generates this value when you create a+ -- VPC.+ vPCId :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'VPCDerivedInfo' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'availabilityZones', 'vPCDerivedInfo_availabilityZones' - The list of Availability Zones associated with the VPC subnets.+--+-- 'securityGroupIds', 'vPCDerivedInfo_securityGroupIds' - The list of security group IDs associated with the VPC endpoints for the+-- domain.+--+-- 'subnetIds', 'vPCDerivedInfo_subnetIds' - A list of subnet IDs associated with the VPC endpoints for the domain.+--+-- 'vPCId', 'vPCDerivedInfo_vPCId' - The ID for your VPC. Amazon VPC generates this value when you create a+-- VPC.+newVPCDerivedInfo ::+ VPCDerivedInfo+newVPCDerivedInfo =+ VPCDerivedInfo'+ { availabilityZones =+ Prelude.Nothing,+ securityGroupIds = Prelude.Nothing,+ subnetIds = Prelude.Nothing,+ vPCId = Prelude.Nothing+ }++-- | The list of Availability Zones associated with the VPC subnets.+vPCDerivedInfo_availabilityZones :: Lens.Lens' VPCDerivedInfo (Prelude.Maybe [Prelude.Text])+vPCDerivedInfo_availabilityZones = Lens.lens (\VPCDerivedInfo' {availabilityZones} -> availabilityZones) (\s@VPCDerivedInfo' {} a -> s {availabilityZones = a} :: VPCDerivedInfo) Prelude.. Lens.mapping Lens.coerced++-- | The list of security group IDs associated with the VPC endpoints for the+-- domain.+vPCDerivedInfo_securityGroupIds :: Lens.Lens' VPCDerivedInfo (Prelude.Maybe [Prelude.Text])+vPCDerivedInfo_securityGroupIds = Lens.lens (\VPCDerivedInfo' {securityGroupIds} -> securityGroupIds) (\s@VPCDerivedInfo' {} a -> s {securityGroupIds = a} :: VPCDerivedInfo) Prelude.. Lens.mapping Lens.coerced++-- | A list of subnet IDs associated with the VPC endpoints for the domain.+vPCDerivedInfo_subnetIds :: Lens.Lens' VPCDerivedInfo (Prelude.Maybe [Prelude.Text])+vPCDerivedInfo_subnetIds = Lens.lens (\VPCDerivedInfo' {subnetIds} -> subnetIds) (\s@VPCDerivedInfo' {} a -> s {subnetIds = a} :: VPCDerivedInfo) Prelude.. Lens.mapping Lens.coerced++-- | The ID for your VPC. Amazon VPC generates this value when you create a+-- VPC.+vPCDerivedInfo_vPCId :: Lens.Lens' VPCDerivedInfo (Prelude.Maybe Prelude.Text)+vPCDerivedInfo_vPCId = Lens.lens (\VPCDerivedInfo' {vPCId} -> vPCId) (\s@VPCDerivedInfo' {} a -> s {vPCId = a} :: VPCDerivedInfo)++instance Data.FromJSON VPCDerivedInfo where+ parseJSON =+ Data.withObject+ "VPCDerivedInfo"+ ( \x ->+ VPCDerivedInfo'+ Prelude.<$> ( x+ Data..:? "AvailabilityZones"+ Data..!= Prelude.mempty+ )+ Prelude.<*> ( x+ Data..:? "SecurityGroupIds"+ Data..!= Prelude.mempty+ )+ Prelude.<*> (x Data..:? "SubnetIds" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "VPCId")+ )++instance Prelude.Hashable VPCDerivedInfo where+ hashWithSalt _salt VPCDerivedInfo' {..} =+ _salt+ `Prelude.hashWithSalt` availabilityZones+ `Prelude.hashWithSalt` securityGroupIds+ `Prelude.hashWithSalt` subnetIds+ `Prelude.hashWithSalt` vPCId++instance Prelude.NFData VPCDerivedInfo where+ rnf VPCDerivedInfo' {..} =+ Prelude.rnf availabilityZones+ `Prelude.seq` Prelude.rnf securityGroupIds+ `Prelude.seq` Prelude.rnf subnetIds+ `Prelude.seq` Prelude.rnf vPCId
+ gen/Amazonka/OpenSearch/Types/VPCDerivedInfoStatus.hs view
@@ -0,0 +1,90 @@+{-# 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.OpenSearch.Types.VPCDerivedInfoStatus+-- 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.OpenSearch.Types.VPCDerivedInfoStatus where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.OptionStatus+import Amazonka.OpenSearch.Types.VPCDerivedInfo+import qualified Amazonka.Prelude as Prelude++-- | Status of the VPC options for a specified domain.+--+-- /See:/ 'newVPCDerivedInfoStatus' smart constructor.+data VPCDerivedInfoStatus = VPCDerivedInfoStatus'+ { -- | The VPC options for the specified domain.+ options :: VPCDerivedInfo,+ -- | The status of the VPC options for the specified domain.+ status :: OptionStatus+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'VPCDerivedInfoStatus' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'options', 'vPCDerivedInfoStatus_options' - The VPC options for the specified domain.+--+-- 'status', 'vPCDerivedInfoStatus_status' - The status of the VPC options for the specified domain.+newVPCDerivedInfoStatus ::+ -- | 'options'+ VPCDerivedInfo ->+ -- | 'status'+ OptionStatus ->+ VPCDerivedInfoStatus+newVPCDerivedInfoStatus pOptions_ pStatus_ =+ VPCDerivedInfoStatus'+ { options = pOptions_,+ status = pStatus_+ }++-- | The VPC options for the specified domain.+vPCDerivedInfoStatus_options :: Lens.Lens' VPCDerivedInfoStatus VPCDerivedInfo+vPCDerivedInfoStatus_options = Lens.lens (\VPCDerivedInfoStatus' {options} -> options) (\s@VPCDerivedInfoStatus' {} a -> s {options = a} :: VPCDerivedInfoStatus)++-- | The status of the VPC options for the specified domain.+vPCDerivedInfoStatus_status :: Lens.Lens' VPCDerivedInfoStatus OptionStatus+vPCDerivedInfoStatus_status = Lens.lens (\VPCDerivedInfoStatus' {status} -> status) (\s@VPCDerivedInfoStatus' {} a -> s {status = a} :: VPCDerivedInfoStatus)++instance Data.FromJSON VPCDerivedInfoStatus where+ parseJSON =+ Data.withObject+ "VPCDerivedInfoStatus"+ ( \x ->+ VPCDerivedInfoStatus'+ Prelude.<$> (x Data..: "Options")+ Prelude.<*> (x Data..: "Status")+ )++instance Prelude.Hashable VPCDerivedInfoStatus where+ hashWithSalt _salt VPCDerivedInfoStatus' {..} =+ _salt+ `Prelude.hashWithSalt` options+ `Prelude.hashWithSalt` status++instance Prelude.NFData VPCDerivedInfoStatus where+ rnf VPCDerivedInfoStatus' {..} =+ Prelude.rnf options+ `Prelude.seq` Prelude.rnf status
+ gen/Amazonka/OpenSearch/Types/VPCOptions.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.OpenSearch.Types.VPCOptions+-- 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.OpenSearch.Types.VPCOptions 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++-- | Options to specify the subnets and security groups for an Amazon+-- OpenSearch Service VPC endpoint. For more information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/vpc.html Launching your Amazon OpenSearch Service domains using a VPC>.+--+-- /See:/ 'newVPCOptions' smart constructor.+data VPCOptions = VPCOptions'+ { -- | The list of security group IDs associated with the VPC endpoints for the+ -- domain. If you do not provide a security group ID, OpenSearch Service+ -- uses the default security group for the VPC.+ securityGroupIds :: Prelude.Maybe [Prelude.Text],+ -- | A list of subnet IDs associated with the VPC endpoints for the domain.+ -- If your domain uses multiple Availability Zones, you need to provide two+ -- subnet IDs, one per zone. Otherwise, provide only one.+ subnetIds :: Prelude.Maybe [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'VPCOptions' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'securityGroupIds', 'vPCOptions_securityGroupIds' - The list of security group IDs associated with the VPC endpoints for the+-- domain. If you do not provide a security group ID, OpenSearch Service+-- uses the default security group for the VPC.+--+-- 'subnetIds', 'vPCOptions_subnetIds' - A list of subnet IDs associated with the VPC endpoints for the domain.+-- If your domain uses multiple Availability Zones, you need to provide two+-- subnet IDs, one per zone. Otherwise, provide only one.+newVPCOptions ::+ VPCOptions+newVPCOptions =+ VPCOptions'+ { securityGroupIds = Prelude.Nothing,+ subnetIds = Prelude.Nothing+ }++-- | The list of security group IDs associated with the VPC endpoints for the+-- domain. If you do not provide a security group ID, OpenSearch Service+-- uses the default security group for the VPC.+vPCOptions_securityGroupIds :: Lens.Lens' VPCOptions (Prelude.Maybe [Prelude.Text])+vPCOptions_securityGroupIds = Lens.lens (\VPCOptions' {securityGroupIds} -> securityGroupIds) (\s@VPCOptions' {} a -> s {securityGroupIds = a} :: VPCOptions) Prelude.. Lens.mapping Lens.coerced++-- | A list of subnet IDs associated with the VPC endpoints for the domain.+-- If your domain uses multiple Availability Zones, you need to provide two+-- subnet IDs, one per zone. Otherwise, provide only one.+vPCOptions_subnetIds :: Lens.Lens' VPCOptions (Prelude.Maybe [Prelude.Text])+vPCOptions_subnetIds = Lens.lens (\VPCOptions' {subnetIds} -> subnetIds) (\s@VPCOptions' {} a -> s {subnetIds = a} :: VPCOptions) Prelude.. Lens.mapping Lens.coerced++instance Prelude.Hashable VPCOptions where+ hashWithSalt _salt VPCOptions' {..} =+ _salt+ `Prelude.hashWithSalt` securityGroupIds+ `Prelude.hashWithSalt` subnetIds++instance Prelude.NFData VPCOptions where+ rnf VPCOptions' {..} =+ Prelude.rnf securityGroupIds+ `Prelude.seq` Prelude.rnf subnetIds++instance Data.ToJSON VPCOptions where+ toJSON VPCOptions' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("SecurityGroupIds" Data..=)+ Prelude.<$> securityGroupIds,+ ("SubnetIds" Data..=) Prelude.<$> subnetIds+ ]+ )
+ gen/Amazonka/OpenSearch/Types/VersionStatus.hs view
@@ -0,0 +1,90 @@+{-# 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.OpenSearch.Types.VersionStatus+-- 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.OpenSearch.Types.VersionStatus where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.OptionStatus+import qualified Amazonka.Prelude as Prelude++-- | The status of the the OpenSearch or Elasticsearch version options for+-- the specified Amazon OpenSearch Service domain.+--+-- /See:/ 'newVersionStatus' smart constructor.+data VersionStatus = VersionStatus'+ { -- | The OpenSearch or Elasticsearch version for the specified domain.+ options :: Prelude.Text,+ -- | The status of the version options for the specified domain.+ status :: OptionStatus+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'VersionStatus' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'options', 'versionStatus_options' - The OpenSearch or Elasticsearch version for the specified domain.+--+-- 'status', 'versionStatus_status' - The status of the version options for the specified domain.+newVersionStatus ::+ -- | 'options'+ Prelude.Text ->+ -- | 'status'+ OptionStatus ->+ VersionStatus+newVersionStatus pOptions_ pStatus_ =+ VersionStatus'+ { options = pOptions_,+ status = pStatus_+ }++-- | The OpenSearch or Elasticsearch version for the specified domain.+versionStatus_options :: Lens.Lens' VersionStatus Prelude.Text+versionStatus_options = Lens.lens (\VersionStatus' {options} -> options) (\s@VersionStatus' {} a -> s {options = a} :: VersionStatus)++-- | The status of the version options for the specified domain.+versionStatus_status :: Lens.Lens' VersionStatus OptionStatus+versionStatus_status = Lens.lens (\VersionStatus' {status} -> status) (\s@VersionStatus' {} a -> s {status = a} :: VersionStatus)++instance Data.FromJSON VersionStatus where+ parseJSON =+ Data.withObject+ "VersionStatus"+ ( \x ->+ VersionStatus'+ Prelude.<$> (x Data..: "Options")+ Prelude.<*> (x Data..: "Status")+ )++instance Prelude.Hashable VersionStatus where+ hashWithSalt _salt VersionStatus' {..} =+ _salt+ `Prelude.hashWithSalt` options+ `Prelude.hashWithSalt` status++instance Prelude.NFData VersionStatus where+ rnf VersionStatus' {..} =+ Prelude.rnf options+ `Prelude.seq` Prelude.rnf status
+ gen/Amazonka/OpenSearch/Types/VolumeType.hs view
@@ -0,0 +1,83 @@+{-# 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.OpenSearch.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.OpenSearch.Types.VolumeType+ ( VolumeType+ ( ..,+ VolumeType_Gp2,+ VolumeType_Gp3,+ VolumeType_Io1,+ VolumeType_Standard+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | The type of EBS volume that a domain uses. For more information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/opensearch-createupdatedomains.html#opensearch-createdomain-configure-ebs Configuring EBS-based storage>.+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_Standard :: VolumeType+pattern VolumeType_Standard = VolumeType' "standard"++{-# COMPLETE+ VolumeType_Gp2,+ VolumeType_Gp3,+ VolumeType_Io1,+ VolumeType_Standard,+ VolumeType'+ #-}
+ gen/Amazonka/OpenSearch/Types/VpcEndpoint.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.OpenSearch.Types.VpcEndpoint+-- 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.OpenSearch.Types.VpcEndpoint where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.VPCDerivedInfo+import Amazonka.OpenSearch.Types.VpcEndpointStatus+import qualified Amazonka.Prelude as Prelude++-- | The connection endpoint for connecting to an Amazon OpenSearch Service+-- domain through a proxy.+--+-- /See:/ 'newVpcEndpoint' smart constructor.+data VpcEndpoint = VpcEndpoint'+ { -- | The Amazon Resource Name (ARN) of the domain associated with the+ -- endpoint.+ domainArn :: Prelude.Maybe Prelude.Text,+ -- | The connection endpoint ID for connecting to the domain.+ endpoint :: Prelude.Maybe Prelude.Text,+ -- | The current status of the endpoint.+ status :: Prelude.Maybe VpcEndpointStatus,+ -- | The unique identifier of the endpoint.+ vpcEndpointId :: Prelude.Maybe Prelude.Text,+ -- | The creator of the endpoint.+ vpcEndpointOwner :: Prelude.Maybe Prelude.Text,+ -- | Options to specify the subnets and security groups for an Amazon+ -- OpenSearch Service VPC endpoint.+ vpcOptions :: Prelude.Maybe VPCDerivedInfo+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'VpcEndpoint' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domainArn', 'vpcEndpoint_domainArn' - The Amazon Resource Name (ARN) of the domain associated with the+-- endpoint.+--+-- 'endpoint', 'vpcEndpoint_endpoint' - The connection endpoint ID for connecting to the domain.+--+-- 'status', 'vpcEndpoint_status' - The current status of the endpoint.+--+-- 'vpcEndpointId', 'vpcEndpoint_vpcEndpointId' - The unique identifier of the endpoint.+--+-- 'vpcEndpointOwner', 'vpcEndpoint_vpcEndpointOwner' - The creator of the endpoint.+--+-- 'vpcOptions', 'vpcEndpoint_vpcOptions' - Options to specify the subnets and security groups for an Amazon+-- OpenSearch Service VPC endpoint.+newVpcEndpoint ::+ VpcEndpoint+newVpcEndpoint =+ VpcEndpoint'+ { domainArn = Prelude.Nothing,+ endpoint = Prelude.Nothing,+ status = Prelude.Nothing,+ vpcEndpointId = Prelude.Nothing,+ vpcEndpointOwner = Prelude.Nothing,+ vpcOptions = Prelude.Nothing+ }++-- | The Amazon Resource Name (ARN) of the domain associated with the+-- endpoint.+vpcEndpoint_domainArn :: Lens.Lens' VpcEndpoint (Prelude.Maybe Prelude.Text)+vpcEndpoint_domainArn = Lens.lens (\VpcEndpoint' {domainArn} -> domainArn) (\s@VpcEndpoint' {} a -> s {domainArn = a} :: VpcEndpoint)++-- | The connection endpoint ID for connecting to the domain.+vpcEndpoint_endpoint :: Lens.Lens' VpcEndpoint (Prelude.Maybe Prelude.Text)+vpcEndpoint_endpoint = Lens.lens (\VpcEndpoint' {endpoint} -> endpoint) (\s@VpcEndpoint' {} a -> s {endpoint = a} :: VpcEndpoint)++-- | The current status of the endpoint.+vpcEndpoint_status :: Lens.Lens' VpcEndpoint (Prelude.Maybe VpcEndpointStatus)+vpcEndpoint_status = Lens.lens (\VpcEndpoint' {status} -> status) (\s@VpcEndpoint' {} a -> s {status = a} :: VpcEndpoint)++-- | The unique identifier of the endpoint.+vpcEndpoint_vpcEndpointId :: Lens.Lens' VpcEndpoint (Prelude.Maybe Prelude.Text)+vpcEndpoint_vpcEndpointId = Lens.lens (\VpcEndpoint' {vpcEndpointId} -> vpcEndpointId) (\s@VpcEndpoint' {} a -> s {vpcEndpointId = a} :: VpcEndpoint)++-- | The creator of the endpoint.+vpcEndpoint_vpcEndpointOwner :: Lens.Lens' VpcEndpoint (Prelude.Maybe Prelude.Text)+vpcEndpoint_vpcEndpointOwner = Lens.lens (\VpcEndpoint' {vpcEndpointOwner} -> vpcEndpointOwner) (\s@VpcEndpoint' {} a -> s {vpcEndpointOwner = a} :: VpcEndpoint)++-- | Options to specify the subnets and security groups for an Amazon+-- OpenSearch Service VPC endpoint.+vpcEndpoint_vpcOptions :: Lens.Lens' VpcEndpoint (Prelude.Maybe VPCDerivedInfo)+vpcEndpoint_vpcOptions = Lens.lens (\VpcEndpoint' {vpcOptions} -> vpcOptions) (\s@VpcEndpoint' {} a -> s {vpcOptions = a} :: VpcEndpoint)++instance Data.FromJSON VpcEndpoint where+ parseJSON =+ Data.withObject+ "VpcEndpoint"+ ( \x ->+ VpcEndpoint'+ Prelude.<$> (x Data..:? "DomainArn")+ Prelude.<*> (x Data..:? "Endpoint")+ Prelude.<*> (x Data..:? "Status")+ Prelude.<*> (x Data..:? "VpcEndpointId")+ Prelude.<*> (x Data..:? "VpcEndpointOwner")+ Prelude.<*> (x Data..:? "VpcOptions")+ )++instance Prelude.Hashable VpcEndpoint where+ hashWithSalt _salt VpcEndpoint' {..} =+ _salt+ `Prelude.hashWithSalt` domainArn+ `Prelude.hashWithSalt` endpoint+ `Prelude.hashWithSalt` status+ `Prelude.hashWithSalt` vpcEndpointId+ `Prelude.hashWithSalt` vpcEndpointOwner+ `Prelude.hashWithSalt` vpcOptions++instance Prelude.NFData VpcEndpoint where+ rnf VpcEndpoint' {..} =+ Prelude.rnf domainArn+ `Prelude.seq` Prelude.rnf endpoint+ `Prelude.seq` Prelude.rnf status+ `Prelude.seq` Prelude.rnf vpcEndpointId+ `Prelude.seq` Prelude.rnf vpcEndpointOwner+ `Prelude.seq` Prelude.rnf vpcOptions
+ gen/Amazonka/OpenSearch/Types/VpcEndpointError.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.OpenSearch.Types.VpcEndpointError+-- 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.OpenSearch.Types.VpcEndpointError where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.VpcEndpointErrorCode+import qualified Amazonka.Prelude as Prelude++-- | Error information when attempting to describe an Amazon OpenSearch+-- Service-managed VPC endpoint.+--+-- /See:/ 'newVpcEndpointError' smart constructor.+data VpcEndpointError = VpcEndpointError'+ { -- | The code associated with the error.+ errorCode :: Prelude.Maybe VpcEndpointErrorCode,+ -- | A message describing the error.+ errorMessage :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier of the endpoint.+ vpcEndpointId :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'VpcEndpointError' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'errorCode', 'vpcEndpointError_errorCode' - The code associated with the error.+--+-- 'errorMessage', 'vpcEndpointError_errorMessage' - A message describing the error.+--+-- 'vpcEndpointId', 'vpcEndpointError_vpcEndpointId' - The unique identifier of the endpoint.+newVpcEndpointError ::+ VpcEndpointError+newVpcEndpointError =+ VpcEndpointError'+ { errorCode = Prelude.Nothing,+ errorMessage = Prelude.Nothing,+ vpcEndpointId = Prelude.Nothing+ }++-- | The code associated with the error.+vpcEndpointError_errorCode :: Lens.Lens' VpcEndpointError (Prelude.Maybe VpcEndpointErrorCode)+vpcEndpointError_errorCode = Lens.lens (\VpcEndpointError' {errorCode} -> errorCode) (\s@VpcEndpointError' {} a -> s {errorCode = a} :: VpcEndpointError)++-- | A message describing the error.+vpcEndpointError_errorMessage :: Lens.Lens' VpcEndpointError (Prelude.Maybe Prelude.Text)+vpcEndpointError_errorMessage = Lens.lens (\VpcEndpointError' {errorMessage} -> errorMessage) (\s@VpcEndpointError' {} a -> s {errorMessage = a} :: VpcEndpointError)++-- | The unique identifier of the endpoint.+vpcEndpointError_vpcEndpointId :: Lens.Lens' VpcEndpointError (Prelude.Maybe Prelude.Text)+vpcEndpointError_vpcEndpointId = Lens.lens (\VpcEndpointError' {vpcEndpointId} -> vpcEndpointId) (\s@VpcEndpointError' {} a -> s {vpcEndpointId = a} :: VpcEndpointError)++instance Data.FromJSON VpcEndpointError where+ parseJSON =+ Data.withObject+ "VpcEndpointError"+ ( \x ->+ VpcEndpointError'+ Prelude.<$> (x Data..:? "ErrorCode")+ Prelude.<*> (x Data..:? "ErrorMessage")+ Prelude.<*> (x Data..:? "VpcEndpointId")+ )++instance Prelude.Hashable VpcEndpointError where+ hashWithSalt _salt VpcEndpointError' {..} =+ _salt+ `Prelude.hashWithSalt` errorCode+ `Prelude.hashWithSalt` errorMessage+ `Prelude.hashWithSalt` vpcEndpointId++instance Prelude.NFData VpcEndpointError where+ rnf VpcEndpointError' {..} =+ Prelude.rnf errorCode+ `Prelude.seq` Prelude.rnf errorMessage+ `Prelude.seq` Prelude.rnf vpcEndpointId
+ gen/Amazonka/OpenSearch/Types/VpcEndpointErrorCode.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.OpenSearch.Types.VpcEndpointErrorCode+-- 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.OpenSearch.Types.VpcEndpointErrorCode+ ( VpcEndpointErrorCode+ ( ..,+ VpcEndpointErrorCode_ENDPOINT_NOT_FOUND,+ VpcEndpointErrorCode_SERVER_ERROR+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype VpcEndpointErrorCode = VpcEndpointErrorCode'+ { fromVpcEndpointErrorCode ::+ 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 VpcEndpointErrorCode_ENDPOINT_NOT_FOUND :: VpcEndpointErrorCode+pattern VpcEndpointErrorCode_ENDPOINT_NOT_FOUND = VpcEndpointErrorCode' "ENDPOINT_NOT_FOUND"++pattern VpcEndpointErrorCode_SERVER_ERROR :: VpcEndpointErrorCode+pattern VpcEndpointErrorCode_SERVER_ERROR = VpcEndpointErrorCode' "SERVER_ERROR"++{-# COMPLETE+ VpcEndpointErrorCode_ENDPOINT_NOT_FOUND,+ VpcEndpointErrorCode_SERVER_ERROR,+ VpcEndpointErrorCode'+ #-}
+ gen/Amazonka/OpenSearch/Types/VpcEndpointStatus.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.OpenSearch.Types.VpcEndpointStatus+-- 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.OpenSearch.Types.VpcEndpointStatus+ ( VpcEndpointStatus+ ( ..,+ VpcEndpointStatus_ACTIVE,+ VpcEndpointStatus_CREATE_FAILED,+ VpcEndpointStatus_CREATING,+ VpcEndpointStatus_DELETE_FAILED,+ VpcEndpointStatus_DELETING,+ VpcEndpointStatus_UPDATE_FAILED,+ VpcEndpointStatus_UPDATING+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype VpcEndpointStatus = VpcEndpointStatus'+ { fromVpcEndpointStatus ::+ 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 VpcEndpointStatus_ACTIVE :: VpcEndpointStatus+pattern VpcEndpointStatus_ACTIVE = VpcEndpointStatus' "ACTIVE"++pattern VpcEndpointStatus_CREATE_FAILED :: VpcEndpointStatus+pattern VpcEndpointStatus_CREATE_FAILED = VpcEndpointStatus' "CREATE_FAILED"++pattern VpcEndpointStatus_CREATING :: VpcEndpointStatus+pattern VpcEndpointStatus_CREATING = VpcEndpointStatus' "CREATING"++pattern VpcEndpointStatus_DELETE_FAILED :: VpcEndpointStatus+pattern VpcEndpointStatus_DELETE_FAILED = VpcEndpointStatus' "DELETE_FAILED"++pattern VpcEndpointStatus_DELETING :: VpcEndpointStatus+pattern VpcEndpointStatus_DELETING = VpcEndpointStatus' "DELETING"++pattern VpcEndpointStatus_UPDATE_FAILED :: VpcEndpointStatus+pattern VpcEndpointStatus_UPDATE_FAILED = VpcEndpointStatus' "UPDATE_FAILED"++pattern VpcEndpointStatus_UPDATING :: VpcEndpointStatus+pattern VpcEndpointStatus_UPDATING = VpcEndpointStatus' "UPDATING"++{-# COMPLETE+ VpcEndpointStatus_ACTIVE,+ VpcEndpointStatus_CREATE_FAILED,+ VpcEndpointStatus_CREATING,+ VpcEndpointStatus_DELETE_FAILED,+ VpcEndpointStatus_DELETING,+ VpcEndpointStatus_UPDATE_FAILED,+ VpcEndpointStatus_UPDATING,+ VpcEndpointStatus'+ #-}
+ gen/Amazonka/OpenSearch/Types/VpcEndpointSummary.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.OpenSearch.Types.VpcEndpointSummary+-- 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.OpenSearch.Types.VpcEndpointSummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types.VpcEndpointStatus+import qualified Amazonka.Prelude as Prelude++-- | Summary information for an Amazon OpenSearch Service-managed VPC+-- endpoint.+--+-- /See:/ 'newVpcEndpointSummary' smart constructor.+data VpcEndpointSummary = VpcEndpointSummary'+ { -- | The Amazon Resource Name (ARN) of the domain associated with the+ -- endpoint.+ domainArn :: Prelude.Maybe Prelude.Text,+ -- | The current status of the endpoint.+ status :: Prelude.Maybe VpcEndpointStatus,+ -- | The unique identifier of the endpoint.+ vpcEndpointId :: Prelude.Maybe Prelude.Text,+ -- | The creator of the endpoint.+ vpcEndpointOwner :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'VpcEndpointSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domainArn', 'vpcEndpointSummary_domainArn' - The Amazon Resource Name (ARN) of the domain associated with the+-- endpoint.+--+-- 'status', 'vpcEndpointSummary_status' - The current status of the endpoint.+--+-- 'vpcEndpointId', 'vpcEndpointSummary_vpcEndpointId' - The unique identifier of the endpoint.+--+-- 'vpcEndpointOwner', 'vpcEndpointSummary_vpcEndpointOwner' - The creator of the endpoint.+newVpcEndpointSummary ::+ VpcEndpointSummary+newVpcEndpointSummary =+ VpcEndpointSummary'+ { domainArn = Prelude.Nothing,+ status = Prelude.Nothing,+ vpcEndpointId = Prelude.Nothing,+ vpcEndpointOwner = Prelude.Nothing+ }++-- | The Amazon Resource Name (ARN) of the domain associated with the+-- endpoint.+vpcEndpointSummary_domainArn :: Lens.Lens' VpcEndpointSummary (Prelude.Maybe Prelude.Text)+vpcEndpointSummary_domainArn = Lens.lens (\VpcEndpointSummary' {domainArn} -> domainArn) (\s@VpcEndpointSummary' {} a -> s {domainArn = a} :: VpcEndpointSummary)++-- | The current status of the endpoint.+vpcEndpointSummary_status :: Lens.Lens' VpcEndpointSummary (Prelude.Maybe VpcEndpointStatus)+vpcEndpointSummary_status = Lens.lens (\VpcEndpointSummary' {status} -> status) (\s@VpcEndpointSummary' {} a -> s {status = a} :: VpcEndpointSummary)++-- | The unique identifier of the endpoint.+vpcEndpointSummary_vpcEndpointId :: Lens.Lens' VpcEndpointSummary (Prelude.Maybe Prelude.Text)+vpcEndpointSummary_vpcEndpointId = Lens.lens (\VpcEndpointSummary' {vpcEndpointId} -> vpcEndpointId) (\s@VpcEndpointSummary' {} a -> s {vpcEndpointId = a} :: VpcEndpointSummary)++-- | The creator of the endpoint.+vpcEndpointSummary_vpcEndpointOwner :: Lens.Lens' VpcEndpointSummary (Prelude.Maybe Prelude.Text)+vpcEndpointSummary_vpcEndpointOwner = Lens.lens (\VpcEndpointSummary' {vpcEndpointOwner} -> vpcEndpointOwner) (\s@VpcEndpointSummary' {} a -> s {vpcEndpointOwner = a} :: VpcEndpointSummary)++instance Data.FromJSON VpcEndpointSummary where+ parseJSON =+ Data.withObject+ "VpcEndpointSummary"+ ( \x ->+ VpcEndpointSummary'+ Prelude.<$> (x Data..:? "DomainArn")+ Prelude.<*> (x Data..:? "Status")+ Prelude.<*> (x Data..:? "VpcEndpointId")+ Prelude.<*> (x Data..:? "VpcEndpointOwner")+ )++instance Prelude.Hashable VpcEndpointSummary where+ hashWithSalt _salt VpcEndpointSummary' {..} =+ _salt+ `Prelude.hashWithSalt` domainArn+ `Prelude.hashWithSalt` status+ `Prelude.hashWithSalt` vpcEndpointId+ `Prelude.hashWithSalt` vpcEndpointOwner++instance Prelude.NFData VpcEndpointSummary where+ rnf VpcEndpointSummary' {..} =+ Prelude.rnf domainArn+ `Prelude.seq` Prelude.rnf status+ `Prelude.seq` Prelude.rnf vpcEndpointId+ `Prelude.seq` Prelude.rnf vpcEndpointOwner
+ gen/Amazonka/OpenSearch/Types/ZoneAwarenessConfig.hs view
@@ -0,0 +1,91 @@+{-# 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.OpenSearch.Types.ZoneAwarenessConfig+-- 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.OpenSearch.Types.ZoneAwarenessConfig 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 zone awareness configuration for an Amazon OpenSearch Service+-- domain.+--+-- /See:/ 'newZoneAwarenessConfig' smart constructor.+data ZoneAwarenessConfig = ZoneAwarenessConfig'+ { -- | If you enabled multiple Availability Zones, this value is the number of+ -- zones that you want the domain to use. Valid values are @2@ and @3@. If+ -- your domain is provisioned within a VPC, this value be equal to number+ -- of subnets.+ availabilityZoneCount :: Prelude.Maybe Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ZoneAwarenessConfig' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'availabilityZoneCount', 'zoneAwarenessConfig_availabilityZoneCount' - If you enabled multiple Availability Zones, this value is the number of+-- zones that you want the domain to use. Valid values are @2@ and @3@. If+-- your domain is provisioned within a VPC, this value be equal to number+-- of subnets.+newZoneAwarenessConfig ::+ ZoneAwarenessConfig+newZoneAwarenessConfig =+ ZoneAwarenessConfig'+ { availabilityZoneCount =+ Prelude.Nothing+ }++-- | If you enabled multiple Availability Zones, this value is the number of+-- zones that you want the domain to use. Valid values are @2@ and @3@. If+-- your domain is provisioned within a VPC, this value be equal to number+-- of subnets.+zoneAwarenessConfig_availabilityZoneCount :: Lens.Lens' ZoneAwarenessConfig (Prelude.Maybe Prelude.Int)+zoneAwarenessConfig_availabilityZoneCount = Lens.lens (\ZoneAwarenessConfig' {availabilityZoneCount} -> availabilityZoneCount) (\s@ZoneAwarenessConfig' {} a -> s {availabilityZoneCount = a} :: ZoneAwarenessConfig)++instance Data.FromJSON ZoneAwarenessConfig where+ parseJSON =+ Data.withObject+ "ZoneAwarenessConfig"+ ( \x ->+ ZoneAwarenessConfig'+ Prelude.<$> (x Data..:? "AvailabilityZoneCount")+ )++instance Prelude.Hashable ZoneAwarenessConfig where+ hashWithSalt _salt ZoneAwarenessConfig' {..} =+ _salt `Prelude.hashWithSalt` availabilityZoneCount++instance Prelude.NFData ZoneAwarenessConfig where+ rnf ZoneAwarenessConfig' {..} =+ Prelude.rnf availabilityZoneCount++instance Data.ToJSON ZoneAwarenessConfig where+ toJSON ZoneAwarenessConfig' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("AvailabilityZoneCount" Data..=)+ Prelude.<$> availabilityZoneCount+ ]+ )
+ gen/Amazonka/OpenSearch/UpdateDomainConfig.hs view
@@ -0,0 +1,491 @@+{-# 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.OpenSearch.UpdateDomainConfig+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Modifies the cluster configuration of the specified Amazon OpenSearch+-- Service domain.+module Amazonka.OpenSearch.UpdateDomainConfig+ ( -- * Creating a Request+ UpdateDomainConfig (..),+ newUpdateDomainConfig,++ -- * Request Lenses+ updateDomainConfig_accessPolicies,+ updateDomainConfig_advancedOptions,+ updateDomainConfig_advancedSecurityOptions,+ updateDomainConfig_autoTuneOptions,+ updateDomainConfig_clusterConfig,+ updateDomainConfig_cognitoOptions,+ updateDomainConfig_domainEndpointOptions,+ updateDomainConfig_dryRun,+ updateDomainConfig_eBSOptions,+ updateDomainConfig_encryptionAtRestOptions,+ updateDomainConfig_logPublishingOptions,+ updateDomainConfig_nodeToNodeEncryptionOptions,+ updateDomainConfig_snapshotOptions,+ updateDomainConfig_vPCOptions,+ updateDomainConfig_domainName,++ -- * Destructuring the Response+ UpdateDomainConfigResponse (..),+ newUpdateDomainConfigResponse,++ -- * Response Lenses+ updateDomainConfigResponse_dryRunResults,+ updateDomainConfigResponse_httpStatus,+ updateDomainConfigResponse_domainConfig,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Container for the request parameters to the @UpdateDomain@ operation.+--+-- /See:/ 'newUpdateDomainConfig' smart constructor.+data UpdateDomainConfig = UpdateDomainConfig'+ { -- | Identity and Access Management (IAM) access policy as a JSON-formatted+ -- string.+ accessPolicies :: Prelude.Maybe Prelude.Text,+ -- | Key-value pairs to specify advanced configuration options. The following+ -- key-value pairs are supported:+ --+ -- - @\"rest.action.multi.allow_explicit_index\": \"true\" | \"false\"@ -+ -- Note the use of a string rather than a boolean. Specifies whether+ -- explicit references to indexes are allowed inside the body of HTTP+ -- requests. If you want to configure access policies for domain+ -- sub-resources, such as specific indexes and domain APIs, you must+ -- disable this property. Default is true.+ --+ -- - @\"indices.fielddata.cache.size\": \"80\" @ - Note the use of a+ -- string rather than a boolean. Specifies the percentage of heap space+ -- allocated to field data. Default is unbounded.+ --+ -- - @\"indices.query.bool.max_clause_count\": \"1024\"@ - Note the use+ -- of a string rather than a boolean. Specifies the maximum number of+ -- clauses allowed in a Lucene boolean query. Default is 1,024. Queries+ -- with more than the permitted number of clauses result in a+ -- @TooManyClauses@ error.+ --+ -- - @\"override_main_response_version\": \"true\" | \"false\"@ - Note+ -- the use of a string rather than a boolean. Specifies whether the+ -- domain reports its version as 7.10 to allow Elasticsearch OSS+ -- clients and plugins to continue working with it. Default is false+ -- when creating a domain and true when upgrading a domain.+ --+ -- For more information, see+ -- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/createupdatedomains.html#createdomain-configure-advanced-options Advanced cluster parameters>.+ advancedOptions :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | Options for fine-grained access control.+ advancedSecurityOptions :: Prelude.Maybe AdvancedSecurityOptionsInput,+ -- | Options for Auto-Tune.+ autoTuneOptions :: Prelude.Maybe AutoTuneOptions,+ -- | Changes that you want to make to the cluster configuration, such as the+ -- instance type and number of EC2 instances.+ clusterConfig :: Prelude.Maybe ClusterConfig,+ -- | Key-value pairs to configure Amazon Cognito authentication for+ -- OpenSearch Dashboards.+ cognitoOptions :: Prelude.Maybe CognitoOptions,+ -- | Additional options for the domain endpoint, such as whether to require+ -- HTTPS for all traffic.+ domainEndpointOptions :: Prelude.Maybe DomainEndpointOptions,+ -- | This flag, when set to True, specifies whether the @UpdateDomain@+ -- request should return the results of validation check without actually+ -- applying the change.+ dryRun :: Prelude.Maybe Prelude.Bool,+ -- | The type and size of the EBS volume to attach to instances in the+ -- domain.+ eBSOptions :: Prelude.Maybe EBSOptions,+ -- | Encryption at rest options for the domain.+ encryptionAtRestOptions :: Prelude.Maybe EncryptionAtRestOptions,+ -- | Options to publish OpenSearch lots to Amazon CloudWatch Logs.+ logPublishingOptions :: Prelude.Maybe (Prelude.HashMap LogType LogPublishingOption),+ -- | Node-To-Node Encryption options for the domain.+ nodeToNodeEncryptionOptions :: Prelude.Maybe NodeToNodeEncryptionOptions,+ -- | Option to set the time, in UTC format, for the daily automated snapshot.+ -- Default value is @0@ hours.+ snapshotOptions :: Prelude.Maybe SnapshotOptions,+ -- | Options to specify the subnets and security groups for a VPC endpoint.+ -- For more information, see+ -- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/vpc.html Launching your Amazon OpenSearch Service domains using a VPC>.+ vPCOptions :: Prelude.Maybe VPCOptions,+ -- | The name of the domain that you\'re updating.+ domainName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateDomainConfig' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'accessPolicies', 'updateDomainConfig_accessPolicies' - Identity and Access Management (IAM) access policy as a JSON-formatted+-- string.+--+-- 'advancedOptions', 'updateDomainConfig_advancedOptions' - Key-value pairs to specify advanced configuration options. The following+-- key-value pairs are supported:+--+-- - @\"rest.action.multi.allow_explicit_index\": \"true\" | \"false\"@ -+-- Note the use of a string rather than a boolean. Specifies whether+-- explicit references to indexes are allowed inside the body of HTTP+-- requests. If you want to configure access policies for domain+-- sub-resources, such as specific indexes and domain APIs, you must+-- disable this property. Default is true.+--+-- - @\"indices.fielddata.cache.size\": \"80\" @ - Note the use of a+-- string rather than a boolean. Specifies the percentage of heap space+-- allocated to field data. Default is unbounded.+--+-- - @\"indices.query.bool.max_clause_count\": \"1024\"@ - Note the use+-- of a string rather than a boolean. Specifies the maximum number of+-- clauses allowed in a Lucene boolean query. Default is 1,024. Queries+-- with more than the permitted number of clauses result in a+-- @TooManyClauses@ error.+--+-- - @\"override_main_response_version\": \"true\" | \"false\"@ - Note+-- the use of a string rather than a boolean. Specifies whether the+-- domain reports its version as 7.10 to allow Elasticsearch OSS+-- clients and plugins to continue working with it. Default is false+-- when creating a domain and true when upgrading a domain.+--+-- For more information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/createupdatedomains.html#createdomain-configure-advanced-options Advanced cluster parameters>.+--+-- 'advancedSecurityOptions', 'updateDomainConfig_advancedSecurityOptions' - Options for fine-grained access control.+--+-- 'autoTuneOptions', 'updateDomainConfig_autoTuneOptions' - Options for Auto-Tune.+--+-- 'clusterConfig', 'updateDomainConfig_clusterConfig' - Changes that you want to make to the cluster configuration, such as the+-- instance type and number of EC2 instances.+--+-- 'cognitoOptions', 'updateDomainConfig_cognitoOptions' - Key-value pairs to configure Amazon Cognito authentication for+-- OpenSearch Dashboards.+--+-- 'domainEndpointOptions', 'updateDomainConfig_domainEndpointOptions' - Additional options for the domain endpoint, such as whether to require+-- HTTPS for all traffic.+--+-- 'dryRun', 'updateDomainConfig_dryRun' - This flag, when set to True, specifies whether the @UpdateDomain@+-- request should return the results of validation check without actually+-- applying the change.+--+-- 'eBSOptions', 'updateDomainConfig_eBSOptions' - The type and size of the EBS volume to attach to instances in the+-- domain.+--+-- 'encryptionAtRestOptions', 'updateDomainConfig_encryptionAtRestOptions' - Encryption at rest options for the domain.+--+-- 'logPublishingOptions', 'updateDomainConfig_logPublishingOptions' - Options to publish OpenSearch lots to Amazon CloudWatch Logs.+--+-- 'nodeToNodeEncryptionOptions', 'updateDomainConfig_nodeToNodeEncryptionOptions' - Node-To-Node Encryption options for the domain.+--+-- 'snapshotOptions', 'updateDomainConfig_snapshotOptions' - Option to set the time, in UTC format, for the daily automated snapshot.+-- Default value is @0@ hours.+--+-- 'vPCOptions', 'updateDomainConfig_vPCOptions' - Options to specify the subnets and security groups for a VPC endpoint.+-- For more information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/vpc.html Launching your Amazon OpenSearch Service domains using a VPC>.+--+-- 'domainName', 'updateDomainConfig_domainName' - The name of the domain that you\'re updating.+newUpdateDomainConfig ::+ -- | 'domainName'+ Prelude.Text ->+ UpdateDomainConfig+newUpdateDomainConfig pDomainName_ =+ UpdateDomainConfig'+ { accessPolicies =+ Prelude.Nothing,+ advancedOptions = Prelude.Nothing,+ advancedSecurityOptions = Prelude.Nothing,+ autoTuneOptions = Prelude.Nothing,+ clusterConfig = Prelude.Nothing,+ cognitoOptions = Prelude.Nothing,+ domainEndpointOptions = Prelude.Nothing,+ dryRun = Prelude.Nothing,+ eBSOptions = Prelude.Nothing,+ encryptionAtRestOptions = Prelude.Nothing,+ logPublishingOptions = Prelude.Nothing,+ nodeToNodeEncryptionOptions = Prelude.Nothing,+ snapshotOptions = Prelude.Nothing,+ vPCOptions = Prelude.Nothing,+ domainName = pDomainName_+ }++-- | Identity and Access Management (IAM) access policy as a JSON-formatted+-- string.+updateDomainConfig_accessPolicies :: Lens.Lens' UpdateDomainConfig (Prelude.Maybe Prelude.Text)+updateDomainConfig_accessPolicies = Lens.lens (\UpdateDomainConfig' {accessPolicies} -> accessPolicies) (\s@UpdateDomainConfig' {} a -> s {accessPolicies = a} :: UpdateDomainConfig)++-- | Key-value pairs to specify advanced configuration options. The following+-- key-value pairs are supported:+--+-- - @\"rest.action.multi.allow_explicit_index\": \"true\" | \"false\"@ -+-- Note the use of a string rather than a boolean. Specifies whether+-- explicit references to indexes are allowed inside the body of HTTP+-- requests. If you want to configure access policies for domain+-- sub-resources, such as specific indexes and domain APIs, you must+-- disable this property. Default is true.+--+-- - @\"indices.fielddata.cache.size\": \"80\" @ - Note the use of a+-- string rather than a boolean. Specifies the percentage of heap space+-- allocated to field data. Default is unbounded.+--+-- - @\"indices.query.bool.max_clause_count\": \"1024\"@ - Note the use+-- of a string rather than a boolean. Specifies the maximum number of+-- clauses allowed in a Lucene boolean query. Default is 1,024. Queries+-- with more than the permitted number of clauses result in a+-- @TooManyClauses@ error.+--+-- - @\"override_main_response_version\": \"true\" | \"false\"@ - Note+-- the use of a string rather than a boolean. Specifies whether the+-- domain reports its version as 7.10 to allow Elasticsearch OSS+-- clients and plugins to continue working with it. Default is false+-- when creating a domain and true when upgrading a domain.+--+-- For more information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/createupdatedomains.html#createdomain-configure-advanced-options Advanced cluster parameters>.+updateDomainConfig_advancedOptions :: Lens.Lens' UpdateDomainConfig (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+updateDomainConfig_advancedOptions = Lens.lens (\UpdateDomainConfig' {advancedOptions} -> advancedOptions) (\s@UpdateDomainConfig' {} a -> s {advancedOptions = a} :: UpdateDomainConfig) Prelude.. Lens.mapping Lens.coerced++-- | Options for fine-grained access control.+updateDomainConfig_advancedSecurityOptions :: Lens.Lens' UpdateDomainConfig (Prelude.Maybe AdvancedSecurityOptionsInput)+updateDomainConfig_advancedSecurityOptions = Lens.lens (\UpdateDomainConfig' {advancedSecurityOptions} -> advancedSecurityOptions) (\s@UpdateDomainConfig' {} a -> s {advancedSecurityOptions = a} :: UpdateDomainConfig)++-- | Options for Auto-Tune.+updateDomainConfig_autoTuneOptions :: Lens.Lens' UpdateDomainConfig (Prelude.Maybe AutoTuneOptions)+updateDomainConfig_autoTuneOptions = Lens.lens (\UpdateDomainConfig' {autoTuneOptions} -> autoTuneOptions) (\s@UpdateDomainConfig' {} a -> s {autoTuneOptions = a} :: UpdateDomainConfig)++-- | Changes that you want to make to the cluster configuration, such as the+-- instance type and number of EC2 instances.+updateDomainConfig_clusterConfig :: Lens.Lens' UpdateDomainConfig (Prelude.Maybe ClusterConfig)+updateDomainConfig_clusterConfig = Lens.lens (\UpdateDomainConfig' {clusterConfig} -> clusterConfig) (\s@UpdateDomainConfig' {} a -> s {clusterConfig = a} :: UpdateDomainConfig)++-- | Key-value pairs to configure Amazon Cognito authentication for+-- OpenSearch Dashboards.+updateDomainConfig_cognitoOptions :: Lens.Lens' UpdateDomainConfig (Prelude.Maybe CognitoOptions)+updateDomainConfig_cognitoOptions = Lens.lens (\UpdateDomainConfig' {cognitoOptions} -> cognitoOptions) (\s@UpdateDomainConfig' {} a -> s {cognitoOptions = a} :: UpdateDomainConfig)++-- | Additional options for the domain endpoint, such as whether to require+-- HTTPS for all traffic.+updateDomainConfig_domainEndpointOptions :: Lens.Lens' UpdateDomainConfig (Prelude.Maybe DomainEndpointOptions)+updateDomainConfig_domainEndpointOptions = Lens.lens (\UpdateDomainConfig' {domainEndpointOptions} -> domainEndpointOptions) (\s@UpdateDomainConfig' {} a -> s {domainEndpointOptions = a} :: UpdateDomainConfig)++-- | This flag, when set to True, specifies whether the @UpdateDomain@+-- request should return the results of validation check without actually+-- applying the change.+updateDomainConfig_dryRun :: Lens.Lens' UpdateDomainConfig (Prelude.Maybe Prelude.Bool)+updateDomainConfig_dryRun = Lens.lens (\UpdateDomainConfig' {dryRun} -> dryRun) (\s@UpdateDomainConfig' {} a -> s {dryRun = a} :: UpdateDomainConfig)++-- | The type and size of the EBS volume to attach to instances in the+-- domain.+updateDomainConfig_eBSOptions :: Lens.Lens' UpdateDomainConfig (Prelude.Maybe EBSOptions)+updateDomainConfig_eBSOptions = Lens.lens (\UpdateDomainConfig' {eBSOptions} -> eBSOptions) (\s@UpdateDomainConfig' {} a -> s {eBSOptions = a} :: UpdateDomainConfig)++-- | Encryption at rest options for the domain.+updateDomainConfig_encryptionAtRestOptions :: Lens.Lens' UpdateDomainConfig (Prelude.Maybe EncryptionAtRestOptions)+updateDomainConfig_encryptionAtRestOptions = Lens.lens (\UpdateDomainConfig' {encryptionAtRestOptions} -> encryptionAtRestOptions) (\s@UpdateDomainConfig' {} a -> s {encryptionAtRestOptions = a} :: UpdateDomainConfig)++-- | Options to publish OpenSearch lots to Amazon CloudWatch Logs.+updateDomainConfig_logPublishingOptions :: Lens.Lens' UpdateDomainConfig (Prelude.Maybe (Prelude.HashMap LogType LogPublishingOption))+updateDomainConfig_logPublishingOptions = Lens.lens (\UpdateDomainConfig' {logPublishingOptions} -> logPublishingOptions) (\s@UpdateDomainConfig' {} a -> s {logPublishingOptions = a} :: UpdateDomainConfig) Prelude.. Lens.mapping Lens.coerced++-- | Node-To-Node Encryption options for the domain.+updateDomainConfig_nodeToNodeEncryptionOptions :: Lens.Lens' UpdateDomainConfig (Prelude.Maybe NodeToNodeEncryptionOptions)+updateDomainConfig_nodeToNodeEncryptionOptions = Lens.lens (\UpdateDomainConfig' {nodeToNodeEncryptionOptions} -> nodeToNodeEncryptionOptions) (\s@UpdateDomainConfig' {} a -> s {nodeToNodeEncryptionOptions = a} :: UpdateDomainConfig)++-- | Option to set the time, in UTC format, for the daily automated snapshot.+-- Default value is @0@ hours.+updateDomainConfig_snapshotOptions :: Lens.Lens' UpdateDomainConfig (Prelude.Maybe SnapshotOptions)+updateDomainConfig_snapshotOptions = Lens.lens (\UpdateDomainConfig' {snapshotOptions} -> snapshotOptions) (\s@UpdateDomainConfig' {} a -> s {snapshotOptions = a} :: UpdateDomainConfig)++-- | Options to specify the subnets and security groups for a VPC endpoint.+-- For more information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/vpc.html Launching your Amazon OpenSearch Service domains using a VPC>.+updateDomainConfig_vPCOptions :: Lens.Lens' UpdateDomainConfig (Prelude.Maybe VPCOptions)+updateDomainConfig_vPCOptions = Lens.lens (\UpdateDomainConfig' {vPCOptions} -> vPCOptions) (\s@UpdateDomainConfig' {} a -> s {vPCOptions = a} :: UpdateDomainConfig)++-- | The name of the domain that you\'re updating.+updateDomainConfig_domainName :: Lens.Lens' UpdateDomainConfig Prelude.Text+updateDomainConfig_domainName = Lens.lens (\UpdateDomainConfig' {domainName} -> domainName) (\s@UpdateDomainConfig' {} a -> s {domainName = a} :: UpdateDomainConfig)++instance Core.AWSRequest UpdateDomainConfig where+ type+ AWSResponse UpdateDomainConfig =+ UpdateDomainConfigResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ UpdateDomainConfigResponse'+ Prelude.<$> (x Data..?> "DryRunResults")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..:> "DomainConfig")+ )++instance Prelude.Hashable UpdateDomainConfig where+ hashWithSalt _salt UpdateDomainConfig' {..} =+ _salt+ `Prelude.hashWithSalt` accessPolicies+ `Prelude.hashWithSalt` advancedOptions+ `Prelude.hashWithSalt` advancedSecurityOptions+ `Prelude.hashWithSalt` autoTuneOptions+ `Prelude.hashWithSalt` clusterConfig+ `Prelude.hashWithSalt` cognitoOptions+ `Prelude.hashWithSalt` domainEndpointOptions+ `Prelude.hashWithSalt` dryRun+ `Prelude.hashWithSalt` eBSOptions+ `Prelude.hashWithSalt` encryptionAtRestOptions+ `Prelude.hashWithSalt` logPublishingOptions+ `Prelude.hashWithSalt` nodeToNodeEncryptionOptions+ `Prelude.hashWithSalt` snapshotOptions+ `Prelude.hashWithSalt` vPCOptions+ `Prelude.hashWithSalt` domainName++instance Prelude.NFData UpdateDomainConfig where+ rnf UpdateDomainConfig' {..} =+ Prelude.rnf accessPolicies+ `Prelude.seq` Prelude.rnf advancedOptions+ `Prelude.seq` Prelude.rnf advancedSecurityOptions+ `Prelude.seq` Prelude.rnf autoTuneOptions+ `Prelude.seq` Prelude.rnf clusterConfig+ `Prelude.seq` Prelude.rnf cognitoOptions+ `Prelude.seq` Prelude.rnf domainEndpointOptions+ `Prelude.seq` Prelude.rnf dryRun+ `Prelude.seq` Prelude.rnf eBSOptions+ `Prelude.seq` Prelude.rnf encryptionAtRestOptions+ `Prelude.seq` Prelude.rnf logPublishingOptions+ `Prelude.seq` Prelude.rnf nodeToNodeEncryptionOptions+ `Prelude.seq` Prelude.rnf snapshotOptions+ `Prelude.seq` Prelude.rnf vPCOptions+ `Prelude.seq` Prelude.rnf domainName++instance Data.ToHeaders UpdateDomainConfig where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToJSON UpdateDomainConfig where+ toJSON UpdateDomainConfig' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("AccessPolicies" Data..=)+ Prelude.<$> accessPolicies,+ ("AdvancedOptions" Data..=)+ Prelude.<$> advancedOptions,+ ("AdvancedSecurityOptions" Data..=)+ Prelude.<$> advancedSecurityOptions,+ ("AutoTuneOptions" Data..=)+ Prelude.<$> autoTuneOptions,+ ("ClusterConfig" Data..=) Prelude.<$> clusterConfig,+ ("CognitoOptions" Data..=)+ Prelude.<$> cognitoOptions,+ ("DomainEndpointOptions" Data..=)+ Prelude.<$> domainEndpointOptions,+ ("DryRun" Data..=) Prelude.<$> dryRun,+ ("EBSOptions" Data..=) Prelude.<$> eBSOptions,+ ("EncryptionAtRestOptions" Data..=)+ Prelude.<$> encryptionAtRestOptions,+ ("LogPublishingOptions" Data..=)+ Prelude.<$> logPublishingOptions,+ ("NodeToNodeEncryptionOptions" Data..=)+ Prelude.<$> nodeToNodeEncryptionOptions,+ ("SnapshotOptions" Data..=)+ Prelude.<$> snapshotOptions,+ ("VPCOptions" Data..=) Prelude.<$> vPCOptions+ ]+ )++instance Data.ToPath UpdateDomainConfig where+ toPath UpdateDomainConfig' {..} =+ Prelude.mconcat+ [ "/2021-01-01/opensearch/domain/",+ Data.toBS domainName,+ "/config"+ ]++instance Data.ToQuery UpdateDomainConfig where+ toQuery = Prelude.const Prelude.mempty++-- | The results of an @UpdateDomain@ request. Contains the status of the+-- domain being updated.+--+-- /See:/ 'newUpdateDomainConfigResponse' smart constructor.+data UpdateDomainConfigResponse = UpdateDomainConfigResponse'+ { -- | Results of a dry run performed in an update domain request.+ dryRunResults :: Prelude.Maybe DryRunResults,+ -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | The status of the updated domain.+ domainConfig :: DomainConfig+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateDomainConfigResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'dryRunResults', 'updateDomainConfigResponse_dryRunResults' - Results of a dry run performed in an update domain request.+--+-- 'httpStatus', 'updateDomainConfigResponse_httpStatus' - The response's http status code.+--+-- 'domainConfig', 'updateDomainConfigResponse_domainConfig' - The status of the updated domain.+newUpdateDomainConfigResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'domainConfig'+ DomainConfig ->+ UpdateDomainConfigResponse+newUpdateDomainConfigResponse+ pHttpStatus_+ pDomainConfig_ =+ UpdateDomainConfigResponse'+ { dryRunResults =+ Prelude.Nothing,+ httpStatus = pHttpStatus_,+ domainConfig = pDomainConfig_+ }++-- | Results of a dry run performed in an update domain request.+updateDomainConfigResponse_dryRunResults :: Lens.Lens' UpdateDomainConfigResponse (Prelude.Maybe DryRunResults)+updateDomainConfigResponse_dryRunResults = Lens.lens (\UpdateDomainConfigResponse' {dryRunResults} -> dryRunResults) (\s@UpdateDomainConfigResponse' {} a -> s {dryRunResults = a} :: UpdateDomainConfigResponse)++-- | The response's http status code.+updateDomainConfigResponse_httpStatus :: Lens.Lens' UpdateDomainConfigResponse Prelude.Int+updateDomainConfigResponse_httpStatus = Lens.lens (\UpdateDomainConfigResponse' {httpStatus} -> httpStatus) (\s@UpdateDomainConfigResponse' {} a -> s {httpStatus = a} :: UpdateDomainConfigResponse)++-- | The status of the updated domain.+updateDomainConfigResponse_domainConfig :: Lens.Lens' UpdateDomainConfigResponse DomainConfig+updateDomainConfigResponse_domainConfig = Lens.lens (\UpdateDomainConfigResponse' {domainConfig} -> domainConfig) (\s@UpdateDomainConfigResponse' {} a -> s {domainConfig = a} :: UpdateDomainConfigResponse)++instance Prelude.NFData UpdateDomainConfigResponse where+ rnf UpdateDomainConfigResponse' {..} =+ Prelude.rnf dryRunResults+ `Prelude.seq` Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf domainConfig
+ gen/Amazonka/OpenSearch/UpdatePackage.hs view
@@ -0,0 +1,213 @@+{-# 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.OpenSearch.UpdatePackage+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Updates a package for use with Amazon OpenSearch Service domains. For+-- more information, see+-- <https://docs.aws.amazon.com/opensearch-service/latest/developerguide/custom-packages.html Custom packages for Amazon OpenSearch Service>.+module Amazonka.OpenSearch.UpdatePackage+ ( -- * Creating a Request+ UpdatePackage (..),+ newUpdatePackage,++ -- * Request Lenses+ updatePackage_commitMessage,+ updatePackage_packageDescription,+ updatePackage_packageID,+ updatePackage_packageSource,++ -- * Destructuring the Response+ UpdatePackageResponse (..),+ newUpdatePackageResponse,++ -- * Response Lenses+ updatePackageResponse_packageDetails,+ updatePackageResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Container for request parameters to the @UpdatePackage@ operation.+--+-- /See:/ 'newUpdatePackage' smart constructor.+data UpdatePackage = UpdatePackage'+ { -- | Commit message for the updated file, which is shown as part of+ -- @GetPackageVersionHistoryResponse@.+ commitMessage :: Prelude.Maybe Prelude.Text,+ -- | A new description of the package.+ packageDescription :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier for the package.+ packageID :: Prelude.Text,+ -- | Amazon S3 bucket and key for the package.+ packageSource :: PackageSource+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdatePackage' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'commitMessage', 'updatePackage_commitMessage' - Commit message for the updated file, which is shown as part of+-- @GetPackageVersionHistoryResponse@.+--+-- 'packageDescription', 'updatePackage_packageDescription' - A new description of the package.+--+-- 'packageID', 'updatePackage_packageID' - The unique identifier for the package.+--+-- 'packageSource', 'updatePackage_packageSource' - Amazon S3 bucket and key for the package.+newUpdatePackage ::+ -- | 'packageID'+ Prelude.Text ->+ -- | 'packageSource'+ PackageSource ->+ UpdatePackage+newUpdatePackage pPackageID_ pPackageSource_ =+ UpdatePackage'+ { commitMessage = Prelude.Nothing,+ packageDescription = Prelude.Nothing,+ packageID = pPackageID_,+ packageSource = pPackageSource_+ }++-- | Commit message for the updated file, which is shown as part of+-- @GetPackageVersionHistoryResponse@.+updatePackage_commitMessage :: Lens.Lens' UpdatePackage (Prelude.Maybe Prelude.Text)+updatePackage_commitMessage = Lens.lens (\UpdatePackage' {commitMessage} -> commitMessage) (\s@UpdatePackage' {} a -> s {commitMessage = a} :: UpdatePackage)++-- | A new description of the package.+updatePackage_packageDescription :: Lens.Lens' UpdatePackage (Prelude.Maybe Prelude.Text)+updatePackage_packageDescription = Lens.lens (\UpdatePackage' {packageDescription} -> packageDescription) (\s@UpdatePackage' {} a -> s {packageDescription = a} :: UpdatePackage)++-- | The unique identifier for the package.+updatePackage_packageID :: Lens.Lens' UpdatePackage Prelude.Text+updatePackage_packageID = Lens.lens (\UpdatePackage' {packageID} -> packageID) (\s@UpdatePackage' {} a -> s {packageID = a} :: UpdatePackage)++-- | Amazon S3 bucket and key for the package.+updatePackage_packageSource :: Lens.Lens' UpdatePackage PackageSource+updatePackage_packageSource = Lens.lens (\UpdatePackage' {packageSource} -> packageSource) (\s@UpdatePackage' {} a -> s {packageSource = a} :: UpdatePackage)++instance Core.AWSRequest UpdatePackage where+ type+ AWSResponse UpdatePackage =+ UpdatePackageResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ UpdatePackageResponse'+ Prelude.<$> (x Data..?> "PackageDetails")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable UpdatePackage where+ hashWithSalt _salt UpdatePackage' {..} =+ _salt+ `Prelude.hashWithSalt` commitMessage+ `Prelude.hashWithSalt` packageDescription+ `Prelude.hashWithSalt` packageID+ `Prelude.hashWithSalt` packageSource++instance Prelude.NFData UpdatePackage where+ rnf UpdatePackage' {..} =+ Prelude.rnf commitMessage+ `Prelude.seq` Prelude.rnf packageDescription+ `Prelude.seq` Prelude.rnf packageID+ `Prelude.seq` Prelude.rnf packageSource++instance Data.ToHeaders UpdatePackage where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToJSON UpdatePackage where+ toJSON UpdatePackage' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("CommitMessage" Data..=) Prelude.<$> commitMessage,+ ("PackageDescription" Data..=)+ Prelude.<$> packageDescription,+ Prelude.Just ("PackageID" Data..= packageID),+ Prelude.Just+ ("PackageSource" Data..= packageSource)+ ]+ )++instance Data.ToPath UpdatePackage where+ toPath = Prelude.const "/2021-01-01/packages/update"++instance Data.ToQuery UpdatePackage where+ toQuery = Prelude.const Prelude.mempty++-- | Container for the response returned by the @UpdatePackage@ operation.+--+-- /See:/ 'newUpdatePackageResponse' smart constructor.+data UpdatePackageResponse = UpdatePackageResponse'+ { -- | Information about a package.+ packageDetails :: Prelude.Maybe PackageDetails,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdatePackageResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'packageDetails', 'updatePackageResponse_packageDetails' - Information about a package.+--+-- 'httpStatus', 'updatePackageResponse_httpStatus' - The response's http status code.+newUpdatePackageResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ UpdatePackageResponse+newUpdatePackageResponse pHttpStatus_ =+ UpdatePackageResponse'+ { packageDetails =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Information about a package.+updatePackageResponse_packageDetails :: Lens.Lens' UpdatePackageResponse (Prelude.Maybe PackageDetails)+updatePackageResponse_packageDetails = Lens.lens (\UpdatePackageResponse' {packageDetails} -> packageDetails) (\s@UpdatePackageResponse' {} a -> s {packageDetails = a} :: UpdatePackageResponse)++-- | The response's http status code.+updatePackageResponse_httpStatus :: Lens.Lens' UpdatePackageResponse Prelude.Int+updatePackageResponse_httpStatus = Lens.lens (\UpdatePackageResponse' {httpStatus} -> httpStatus) (\s@UpdatePackageResponse' {} a -> s {httpStatus = a} :: UpdatePackageResponse)++instance Prelude.NFData UpdatePackageResponse where+ rnf UpdatePackageResponse' {..} =+ Prelude.rnf packageDetails+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/OpenSearch/UpdateVpcEndpoint.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.OpenSearch.UpdateVpcEndpoint+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Modifies an Amazon OpenSearch Service-managed interface VPC endpoint.+module Amazonka.OpenSearch.UpdateVpcEndpoint+ ( -- * Creating a Request+ UpdateVpcEndpoint (..),+ newUpdateVpcEndpoint,++ -- * Request Lenses+ updateVpcEndpoint_vpcEndpointId,+ updateVpcEndpoint_vpcOptions,++ -- * Destructuring the Response+ UpdateVpcEndpointResponse (..),+ newUpdateVpcEndpointResponse,++ -- * Response Lenses+ updateVpcEndpointResponse_httpStatus,+ updateVpcEndpointResponse_vpcEndpoint,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateVpcEndpoint' smart constructor.+data UpdateVpcEndpoint = UpdateVpcEndpoint'+ { -- | The unique identifier of the endpoint.+ vpcEndpointId :: Prelude.Text,+ -- | The security groups and\/or subnets to add, remove, or modify.+ vpcOptions :: VPCOptions+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateVpcEndpoint' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'vpcEndpointId', 'updateVpcEndpoint_vpcEndpointId' - The unique identifier of the endpoint.+--+-- 'vpcOptions', 'updateVpcEndpoint_vpcOptions' - The security groups and\/or subnets to add, remove, or modify.+newUpdateVpcEndpoint ::+ -- | 'vpcEndpointId'+ Prelude.Text ->+ -- | 'vpcOptions'+ VPCOptions ->+ UpdateVpcEndpoint+newUpdateVpcEndpoint pVpcEndpointId_ pVpcOptions_ =+ UpdateVpcEndpoint'+ { vpcEndpointId = pVpcEndpointId_,+ vpcOptions = pVpcOptions_+ }++-- | The unique identifier of the endpoint.+updateVpcEndpoint_vpcEndpointId :: Lens.Lens' UpdateVpcEndpoint Prelude.Text+updateVpcEndpoint_vpcEndpointId = Lens.lens (\UpdateVpcEndpoint' {vpcEndpointId} -> vpcEndpointId) (\s@UpdateVpcEndpoint' {} a -> s {vpcEndpointId = a} :: UpdateVpcEndpoint)++-- | The security groups and\/or subnets to add, remove, or modify.+updateVpcEndpoint_vpcOptions :: Lens.Lens' UpdateVpcEndpoint VPCOptions+updateVpcEndpoint_vpcOptions = Lens.lens (\UpdateVpcEndpoint' {vpcOptions} -> vpcOptions) (\s@UpdateVpcEndpoint' {} a -> s {vpcOptions = a} :: UpdateVpcEndpoint)++instance Core.AWSRequest UpdateVpcEndpoint where+ type+ AWSResponse UpdateVpcEndpoint =+ UpdateVpcEndpointResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ UpdateVpcEndpointResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..:> "VpcEndpoint")+ )++instance Prelude.Hashable UpdateVpcEndpoint where+ hashWithSalt _salt UpdateVpcEndpoint' {..} =+ _salt+ `Prelude.hashWithSalt` vpcEndpointId+ `Prelude.hashWithSalt` vpcOptions++instance Prelude.NFData UpdateVpcEndpoint where+ rnf UpdateVpcEndpoint' {..} =+ Prelude.rnf vpcEndpointId+ `Prelude.seq` Prelude.rnf vpcOptions++instance Data.ToHeaders UpdateVpcEndpoint where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToJSON UpdateVpcEndpoint where+ toJSON UpdateVpcEndpoint' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("VpcEndpointId" Data..= vpcEndpointId),+ Prelude.Just ("VpcOptions" Data..= vpcOptions)+ ]+ )++instance Data.ToPath UpdateVpcEndpoint where+ toPath =+ Prelude.const+ "/2021-01-01/opensearch/vpcEndpoints/update"++instance Data.ToQuery UpdateVpcEndpoint where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newUpdateVpcEndpointResponse' smart constructor.+data UpdateVpcEndpointResponse = UpdateVpcEndpointResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | The endpoint to be updated.+ vpcEndpoint :: VpcEndpoint+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateVpcEndpointResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'updateVpcEndpointResponse_httpStatus' - The response's http status code.+--+-- 'vpcEndpoint', 'updateVpcEndpointResponse_vpcEndpoint' - The endpoint to be updated.+newUpdateVpcEndpointResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'vpcEndpoint'+ VpcEndpoint ->+ UpdateVpcEndpointResponse+newUpdateVpcEndpointResponse+ pHttpStatus_+ pVpcEndpoint_ =+ UpdateVpcEndpointResponse'+ { httpStatus =+ pHttpStatus_,+ vpcEndpoint = pVpcEndpoint_+ }++-- | The response's http status code.+updateVpcEndpointResponse_httpStatus :: Lens.Lens' UpdateVpcEndpointResponse Prelude.Int+updateVpcEndpointResponse_httpStatus = Lens.lens (\UpdateVpcEndpointResponse' {httpStatus} -> httpStatus) (\s@UpdateVpcEndpointResponse' {} a -> s {httpStatus = a} :: UpdateVpcEndpointResponse)++-- | The endpoint to be updated.+updateVpcEndpointResponse_vpcEndpoint :: Lens.Lens' UpdateVpcEndpointResponse VpcEndpoint+updateVpcEndpointResponse_vpcEndpoint = Lens.lens (\UpdateVpcEndpointResponse' {vpcEndpoint} -> vpcEndpoint) (\s@UpdateVpcEndpointResponse' {} a -> s {vpcEndpoint = a} :: UpdateVpcEndpointResponse)++instance Prelude.NFData UpdateVpcEndpointResponse where+ rnf UpdateVpcEndpointResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf vpcEndpoint
+ gen/Amazonka/OpenSearch/UpgradeDomain.hs view
@@ -0,0 +1,297 @@+{-# 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.OpenSearch.UpgradeDomain+-- 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 either upgrade your Amazon OpenSearch Service domain or+-- perform an upgrade eligibility check to a compatible version of+-- OpenSearch or Elasticsearch.+module Amazonka.OpenSearch.UpgradeDomain+ ( -- * Creating a Request+ UpgradeDomain (..),+ newUpgradeDomain,++ -- * Request Lenses+ upgradeDomain_advancedOptions,+ upgradeDomain_performCheckOnly,+ upgradeDomain_domainName,+ upgradeDomain_targetVersion,++ -- * Destructuring the Response+ UpgradeDomainResponse (..),+ newUpgradeDomainResponse,++ -- * Response Lenses+ upgradeDomainResponse_advancedOptions,+ upgradeDomainResponse_changeProgressDetails,+ upgradeDomainResponse_domainName,+ upgradeDomainResponse_performCheckOnly,+ upgradeDomainResponse_targetVersion,+ upgradeDomainResponse_upgradeId,+ upgradeDomainResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | Container for the request parameters to the @UpgradeDomain@ operation.+--+-- /See:/ 'newUpgradeDomain' smart constructor.+data UpgradeDomain = UpgradeDomain'+ { -- | Only supports the @override_main_response_version@ parameter and not+ -- other advanced options. You can only include this option when upgrading+ -- to an OpenSearch version. Specifies whether the domain reports its+ -- version as 7.10 so that it continues to work with Elasticsearch OSS+ -- clients and plugins.+ advancedOptions :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | When true, indicates that an upgrade eligibility check needs to be+ -- performed. Does not actually perform the upgrade.+ performCheckOnly :: Prelude.Maybe Prelude.Bool,+ -- | Name of the OpenSearch Service domain that you want to upgrade.+ domainName :: Prelude.Text,+ -- | OpenSearch or Elasticsearch version to which you want to upgrade, in the+ -- format Opensearch_X.Y or Elasticsearch_X.Y.+ targetVersion :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpgradeDomain' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'advancedOptions', 'upgradeDomain_advancedOptions' - Only supports the @override_main_response_version@ parameter and not+-- other advanced options. You can only include this option when upgrading+-- to an OpenSearch version. Specifies whether the domain reports its+-- version as 7.10 so that it continues to work with Elasticsearch OSS+-- clients and plugins.+--+-- 'performCheckOnly', 'upgradeDomain_performCheckOnly' - When true, indicates that an upgrade eligibility check needs to be+-- performed. Does not actually perform the upgrade.+--+-- 'domainName', 'upgradeDomain_domainName' - Name of the OpenSearch Service domain that you want to upgrade.+--+-- 'targetVersion', 'upgradeDomain_targetVersion' - OpenSearch or Elasticsearch version to which you want to upgrade, in the+-- format Opensearch_X.Y or Elasticsearch_X.Y.+newUpgradeDomain ::+ -- | 'domainName'+ Prelude.Text ->+ -- | 'targetVersion'+ Prelude.Text ->+ UpgradeDomain+newUpgradeDomain pDomainName_ pTargetVersion_ =+ UpgradeDomain'+ { advancedOptions = Prelude.Nothing,+ performCheckOnly = Prelude.Nothing,+ domainName = pDomainName_,+ targetVersion = pTargetVersion_+ }++-- | Only supports the @override_main_response_version@ parameter and not+-- other advanced options. You can only include this option when upgrading+-- to an OpenSearch version. Specifies whether the domain reports its+-- version as 7.10 so that it continues to work with Elasticsearch OSS+-- clients and plugins.+upgradeDomain_advancedOptions :: Lens.Lens' UpgradeDomain (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+upgradeDomain_advancedOptions = Lens.lens (\UpgradeDomain' {advancedOptions} -> advancedOptions) (\s@UpgradeDomain' {} a -> s {advancedOptions = a} :: UpgradeDomain) Prelude.. Lens.mapping Lens.coerced++-- | When true, indicates that an upgrade eligibility check needs to be+-- performed. Does not actually perform the upgrade.+upgradeDomain_performCheckOnly :: Lens.Lens' UpgradeDomain (Prelude.Maybe Prelude.Bool)+upgradeDomain_performCheckOnly = Lens.lens (\UpgradeDomain' {performCheckOnly} -> performCheckOnly) (\s@UpgradeDomain' {} a -> s {performCheckOnly = a} :: UpgradeDomain)++-- | Name of the OpenSearch Service domain that you want to upgrade.+upgradeDomain_domainName :: Lens.Lens' UpgradeDomain Prelude.Text+upgradeDomain_domainName = Lens.lens (\UpgradeDomain' {domainName} -> domainName) (\s@UpgradeDomain' {} a -> s {domainName = a} :: UpgradeDomain)++-- | OpenSearch or Elasticsearch version to which you want to upgrade, in the+-- format Opensearch_X.Y or Elasticsearch_X.Y.+upgradeDomain_targetVersion :: Lens.Lens' UpgradeDomain Prelude.Text+upgradeDomain_targetVersion = Lens.lens (\UpgradeDomain' {targetVersion} -> targetVersion) (\s@UpgradeDomain' {} a -> s {targetVersion = a} :: UpgradeDomain)++instance Core.AWSRequest UpgradeDomain where+ type+ AWSResponse UpgradeDomain =+ UpgradeDomainResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ UpgradeDomainResponse'+ Prelude.<$> ( x+ Data..?> "AdvancedOptions"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "ChangeProgressDetails")+ Prelude.<*> (x Data..?> "DomainName")+ Prelude.<*> (x Data..?> "PerformCheckOnly")+ Prelude.<*> (x Data..?> "TargetVersion")+ Prelude.<*> (x Data..?> "UpgradeId")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable UpgradeDomain where+ hashWithSalt _salt UpgradeDomain' {..} =+ _salt+ `Prelude.hashWithSalt` advancedOptions+ `Prelude.hashWithSalt` performCheckOnly+ `Prelude.hashWithSalt` domainName+ `Prelude.hashWithSalt` targetVersion++instance Prelude.NFData UpgradeDomain where+ rnf UpgradeDomain' {..} =+ Prelude.rnf advancedOptions+ `Prelude.seq` Prelude.rnf performCheckOnly+ `Prelude.seq` Prelude.rnf domainName+ `Prelude.seq` Prelude.rnf targetVersion++instance Data.ToHeaders UpgradeDomain where+ toHeaders = Prelude.const Prelude.mempty++instance Data.ToJSON UpgradeDomain where+ toJSON UpgradeDomain' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("AdvancedOptions" Data..=)+ Prelude.<$> advancedOptions,+ ("PerformCheckOnly" Data..=)+ Prelude.<$> performCheckOnly,+ Prelude.Just ("DomainName" Data..= domainName),+ Prelude.Just+ ("TargetVersion" Data..= targetVersion)+ ]+ )++instance Data.ToPath UpgradeDomain where+ toPath =+ Prelude.const+ "/2021-01-01/opensearch/upgradeDomain"++instance Data.ToQuery UpgradeDomain where+ toQuery = Prelude.const Prelude.mempty++-- | Container for the response returned by @UpgradeDomain@ operation.+--+-- /See:/ 'newUpgradeDomainResponse' smart constructor.+data UpgradeDomainResponse = UpgradeDomainResponse'+ { -- | The advanced options configuration for the domain.+ advancedOptions :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | Container for information about a configuration change happening on a+ -- domain.+ changeProgressDetails :: Prelude.Maybe ChangeProgressDetails,+ -- | The name of the domain that was upgraded.+ domainName :: Prelude.Maybe Prelude.Text,+ -- | When true, indicates that an upgrade eligibility check was performed.+ performCheckOnly :: Prelude.Maybe Prelude.Bool,+ -- | OpenSearch or Elasticsearch version that the domain was upgraded to.+ targetVersion :: Prelude.Maybe Prelude.Text,+ -- | The unique identifier of the domain upgrade.+ upgradeId :: 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 'UpgradeDomainResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'advancedOptions', 'upgradeDomainResponse_advancedOptions' - The advanced options configuration for the domain.+--+-- 'changeProgressDetails', 'upgradeDomainResponse_changeProgressDetails' - Container for information about a configuration change happening on a+-- domain.+--+-- 'domainName', 'upgradeDomainResponse_domainName' - The name of the domain that was upgraded.+--+-- 'performCheckOnly', 'upgradeDomainResponse_performCheckOnly' - When true, indicates that an upgrade eligibility check was performed.+--+-- 'targetVersion', 'upgradeDomainResponse_targetVersion' - OpenSearch or Elasticsearch version that the domain was upgraded to.+--+-- 'upgradeId', 'upgradeDomainResponse_upgradeId' - The unique identifier of the domain upgrade.+--+-- 'httpStatus', 'upgradeDomainResponse_httpStatus' - The response's http status code.+newUpgradeDomainResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ UpgradeDomainResponse+newUpgradeDomainResponse pHttpStatus_ =+ UpgradeDomainResponse'+ { advancedOptions =+ Prelude.Nothing,+ changeProgressDetails = Prelude.Nothing,+ domainName = Prelude.Nothing,+ performCheckOnly = Prelude.Nothing,+ targetVersion = Prelude.Nothing,+ upgradeId = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The advanced options configuration for the domain.+upgradeDomainResponse_advancedOptions :: Lens.Lens' UpgradeDomainResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+upgradeDomainResponse_advancedOptions = Lens.lens (\UpgradeDomainResponse' {advancedOptions} -> advancedOptions) (\s@UpgradeDomainResponse' {} a -> s {advancedOptions = a} :: UpgradeDomainResponse) Prelude.. Lens.mapping Lens.coerced++-- | Container for information about a configuration change happening on a+-- domain.+upgradeDomainResponse_changeProgressDetails :: Lens.Lens' UpgradeDomainResponse (Prelude.Maybe ChangeProgressDetails)+upgradeDomainResponse_changeProgressDetails = Lens.lens (\UpgradeDomainResponse' {changeProgressDetails} -> changeProgressDetails) (\s@UpgradeDomainResponse' {} a -> s {changeProgressDetails = a} :: UpgradeDomainResponse)++-- | The name of the domain that was upgraded.+upgradeDomainResponse_domainName :: Lens.Lens' UpgradeDomainResponse (Prelude.Maybe Prelude.Text)+upgradeDomainResponse_domainName = Lens.lens (\UpgradeDomainResponse' {domainName} -> domainName) (\s@UpgradeDomainResponse' {} a -> s {domainName = a} :: UpgradeDomainResponse)++-- | When true, indicates that an upgrade eligibility check was performed.+upgradeDomainResponse_performCheckOnly :: Lens.Lens' UpgradeDomainResponse (Prelude.Maybe Prelude.Bool)+upgradeDomainResponse_performCheckOnly = Lens.lens (\UpgradeDomainResponse' {performCheckOnly} -> performCheckOnly) (\s@UpgradeDomainResponse' {} a -> s {performCheckOnly = a} :: UpgradeDomainResponse)++-- | OpenSearch or Elasticsearch version that the domain was upgraded to.+upgradeDomainResponse_targetVersion :: Lens.Lens' UpgradeDomainResponse (Prelude.Maybe Prelude.Text)+upgradeDomainResponse_targetVersion = Lens.lens (\UpgradeDomainResponse' {targetVersion} -> targetVersion) (\s@UpgradeDomainResponse' {} a -> s {targetVersion = a} :: UpgradeDomainResponse)++-- | The unique identifier of the domain upgrade.+upgradeDomainResponse_upgradeId :: Lens.Lens' UpgradeDomainResponse (Prelude.Maybe Prelude.Text)+upgradeDomainResponse_upgradeId = Lens.lens (\UpgradeDomainResponse' {upgradeId} -> upgradeId) (\s@UpgradeDomainResponse' {} a -> s {upgradeId = a} :: UpgradeDomainResponse)++-- | The response's http status code.+upgradeDomainResponse_httpStatus :: Lens.Lens' UpgradeDomainResponse Prelude.Int+upgradeDomainResponse_httpStatus = Lens.lens (\UpgradeDomainResponse' {httpStatus} -> httpStatus) (\s@UpgradeDomainResponse' {} a -> s {httpStatus = a} :: UpgradeDomainResponse)++instance Prelude.NFData UpgradeDomainResponse where+ rnf UpgradeDomainResponse' {..} =+ Prelude.rnf advancedOptions+ `Prelude.seq` Prelude.rnf changeProgressDetails+ `Prelude.seq` Prelude.rnf domainName+ `Prelude.seq` Prelude.rnf performCheckOnly+ `Prelude.seq` Prelude.rnf targetVersion+ `Prelude.seq` Prelude.rnf upgradeId+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/OpenSearch/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.OpenSearch.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.OpenSearch.Waiters where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.OpenSearch.Lens+import Amazonka.OpenSearch.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.OpenSearch+import Test.Amazonka.OpenSearch.Internal+import Test.Tasty++main :: IO ()+main =+ defaultMain $+ testGroup+ "OpenSearch"+ [ testGroup "tests" tests,+ testGroup "fixtures" fixtures+ ]
+ test/Test/Amazonka/Gen/OpenSearch.hs view
@@ -0,0 +1,1018 @@+{-# 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.OpenSearch+-- 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.OpenSearch where++import Amazonka.OpenSearch+import qualified Data.Proxy as Proxy+import Test.Amazonka.Fixture+import Test.Amazonka.OpenSearch.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"+-- [ requestAcceptInboundConnection $+-- newAcceptInboundConnection+--+-- , requestAddTags $+-- newAddTags+--+-- , requestAssociatePackage $+-- newAssociatePackage+--+-- , requestAuthorizeVpcEndpointAccess $+-- newAuthorizeVpcEndpointAccess+--+-- , requestCancelServiceSoftwareUpdate $+-- newCancelServiceSoftwareUpdate+--+-- , requestCreateDomain $+-- newCreateDomain+--+-- , requestCreateOutboundConnection $+-- newCreateOutboundConnection+--+-- , requestCreatePackage $+-- newCreatePackage+--+-- , requestCreateVpcEndpoint $+-- newCreateVpcEndpoint+--+-- , requestDeleteDomain $+-- newDeleteDomain+--+-- , requestDeleteInboundConnection $+-- newDeleteInboundConnection+--+-- , requestDeleteOutboundConnection $+-- newDeleteOutboundConnection+--+-- , requestDeletePackage $+-- newDeletePackage+--+-- , requestDeleteVpcEndpoint $+-- newDeleteVpcEndpoint+--+-- , requestDescribeDomain $+-- newDescribeDomain+--+-- , requestDescribeDomainAutoTunes $+-- newDescribeDomainAutoTunes+--+-- , requestDescribeDomainChangeProgress $+-- newDescribeDomainChangeProgress+--+-- , requestDescribeDomainConfig $+-- newDescribeDomainConfig+--+-- , requestDescribeDomains $+-- newDescribeDomains+--+-- , requestDescribeInboundConnections $+-- newDescribeInboundConnections+--+-- , requestDescribeInstanceTypeLimits $+-- newDescribeInstanceTypeLimits+--+-- , requestDescribeOutboundConnections $+-- newDescribeOutboundConnections+--+-- , requestDescribePackages $+-- newDescribePackages+--+-- , requestDescribeReservedInstanceOfferings $+-- newDescribeReservedInstanceOfferings+--+-- , requestDescribeReservedInstances $+-- newDescribeReservedInstances+--+-- , requestDescribeVpcEndpoints $+-- newDescribeVpcEndpoints+--+-- , requestDissociatePackage $+-- newDissociatePackage+--+-- , requestGetCompatibleVersions $+-- newGetCompatibleVersions+--+-- , requestGetPackageVersionHistory $+-- newGetPackageVersionHistory+--+-- , requestGetUpgradeHistory $+-- newGetUpgradeHistory+--+-- , requestGetUpgradeStatus $+-- newGetUpgradeStatus+--+-- , requestListDomainNames $+-- newListDomainNames+--+-- , requestListDomainsForPackage $+-- newListDomainsForPackage+--+-- , requestListInstanceTypeDetails $+-- newListInstanceTypeDetails+--+-- , requestListPackagesForDomain $+-- newListPackagesForDomain+--+-- , requestListTags $+-- newListTags+--+-- , requestListVersions $+-- newListVersions+--+-- , requestListVpcEndpointAccess $+-- newListVpcEndpointAccess+--+-- , requestListVpcEndpoints $+-- newListVpcEndpoints+--+-- , requestListVpcEndpointsForDomain $+-- newListVpcEndpointsForDomain+--+-- , requestPurchaseReservedInstanceOffering $+-- newPurchaseReservedInstanceOffering+--+-- , requestRejectInboundConnection $+-- newRejectInboundConnection+--+-- , requestRemoveTags $+-- newRemoveTags+--+-- , requestRevokeVpcEndpointAccess $+-- newRevokeVpcEndpointAccess+--+-- , requestStartServiceSoftwareUpdate $+-- newStartServiceSoftwareUpdate+--+-- , requestUpdateDomainConfig $+-- newUpdateDomainConfig+--+-- , requestUpdatePackage $+-- newUpdatePackage+--+-- , requestUpdateVpcEndpoint $+-- newUpdateVpcEndpoint+--+-- , requestUpgradeDomain $+-- newUpgradeDomain+--+-- ]++-- , testGroup "response"+-- [ responseAcceptInboundConnection $+-- newAcceptInboundConnectionResponse+--+-- , responseAddTags $+-- newAddTagsResponse+--+-- , responseAssociatePackage $+-- newAssociatePackageResponse+--+-- , responseAuthorizeVpcEndpointAccess $+-- newAuthorizeVpcEndpointAccessResponse+--+-- , responseCancelServiceSoftwareUpdate $+-- newCancelServiceSoftwareUpdateResponse+--+-- , responseCreateDomain $+-- newCreateDomainResponse+--+-- , responseCreateOutboundConnection $+-- newCreateOutboundConnectionResponse+--+-- , responseCreatePackage $+-- newCreatePackageResponse+--+-- , responseCreateVpcEndpoint $+-- newCreateVpcEndpointResponse+--+-- , responseDeleteDomain $+-- newDeleteDomainResponse+--+-- , responseDeleteInboundConnection $+-- newDeleteInboundConnectionResponse+--+-- , responseDeleteOutboundConnection $+-- newDeleteOutboundConnectionResponse+--+-- , responseDeletePackage $+-- newDeletePackageResponse+--+-- , responseDeleteVpcEndpoint $+-- newDeleteVpcEndpointResponse+--+-- , responseDescribeDomain $+-- newDescribeDomainResponse+--+-- , responseDescribeDomainAutoTunes $+-- newDescribeDomainAutoTunesResponse+--+-- , responseDescribeDomainChangeProgress $+-- newDescribeDomainChangeProgressResponse+--+-- , responseDescribeDomainConfig $+-- newDescribeDomainConfigResponse+--+-- , responseDescribeDomains $+-- newDescribeDomainsResponse+--+-- , responseDescribeInboundConnections $+-- newDescribeInboundConnectionsResponse+--+-- , responseDescribeInstanceTypeLimits $+-- newDescribeInstanceTypeLimitsResponse+--+-- , responseDescribeOutboundConnections $+-- newDescribeOutboundConnectionsResponse+--+-- , responseDescribePackages $+-- newDescribePackagesResponse+--+-- , responseDescribeReservedInstanceOfferings $+-- newDescribeReservedInstanceOfferingsResponse+--+-- , responseDescribeReservedInstances $+-- newDescribeReservedInstancesResponse+--+-- , responseDescribeVpcEndpoints $+-- newDescribeVpcEndpointsResponse+--+-- , responseDissociatePackage $+-- newDissociatePackageResponse+--+-- , responseGetCompatibleVersions $+-- newGetCompatibleVersionsResponse+--+-- , responseGetPackageVersionHistory $+-- newGetPackageVersionHistoryResponse+--+-- , responseGetUpgradeHistory $+-- newGetUpgradeHistoryResponse+--+-- , responseGetUpgradeStatus $+-- newGetUpgradeStatusResponse+--+-- , responseListDomainNames $+-- newListDomainNamesResponse+--+-- , responseListDomainsForPackage $+-- newListDomainsForPackageResponse+--+-- , responseListInstanceTypeDetails $+-- newListInstanceTypeDetailsResponse+--+-- , responseListPackagesForDomain $+-- newListPackagesForDomainResponse+--+-- , responseListTags $+-- newListTagsResponse+--+-- , responseListVersions $+-- newListVersionsResponse+--+-- , responseListVpcEndpointAccess $+-- newListVpcEndpointAccessResponse+--+-- , responseListVpcEndpoints $+-- newListVpcEndpointsResponse+--+-- , responseListVpcEndpointsForDomain $+-- newListVpcEndpointsForDomainResponse+--+-- , responsePurchaseReservedInstanceOffering $+-- newPurchaseReservedInstanceOfferingResponse+--+-- , responseRejectInboundConnection $+-- newRejectInboundConnectionResponse+--+-- , responseRemoveTags $+-- newRemoveTagsResponse+--+-- , responseRevokeVpcEndpointAccess $+-- newRevokeVpcEndpointAccessResponse+--+-- , responseStartServiceSoftwareUpdate $+-- newStartServiceSoftwareUpdateResponse+--+-- , responseUpdateDomainConfig $+-- newUpdateDomainConfigResponse+--+-- , responseUpdatePackage $+-- newUpdatePackageResponse+--+-- , responseUpdateVpcEndpoint $+-- newUpdateVpcEndpointResponse+--+-- , responseUpgradeDomain $+-- newUpgradeDomainResponse+--+-- ]+-- ]++-- Requests++requestAcceptInboundConnection :: AcceptInboundConnection -> TestTree+requestAcceptInboundConnection =+ req+ "AcceptInboundConnection"+ "fixture/AcceptInboundConnection.yaml"++requestAddTags :: AddTags -> TestTree+requestAddTags =+ req+ "AddTags"+ "fixture/AddTags.yaml"++requestAssociatePackage :: AssociatePackage -> TestTree+requestAssociatePackage =+ req+ "AssociatePackage"+ "fixture/AssociatePackage.yaml"++requestAuthorizeVpcEndpointAccess :: AuthorizeVpcEndpointAccess -> TestTree+requestAuthorizeVpcEndpointAccess =+ req+ "AuthorizeVpcEndpointAccess"+ "fixture/AuthorizeVpcEndpointAccess.yaml"++requestCancelServiceSoftwareUpdate :: CancelServiceSoftwareUpdate -> TestTree+requestCancelServiceSoftwareUpdate =+ req+ "CancelServiceSoftwareUpdate"+ "fixture/CancelServiceSoftwareUpdate.yaml"++requestCreateDomain :: CreateDomain -> TestTree+requestCreateDomain =+ req+ "CreateDomain"+ "fixture/CreateDomain.yaml"++requestCreateOutboundConnection :: CreateOutboundConnection -> TestTree+requestCreateOutboundConnection =+ req+ "CreateOutboundConnection"+ "fixture/CreateOutboundConnection.yaml"++requestCreatePackage :: CreatePackage -> TestTree+requestCreatePackage =+ req+ "CreatePackage"+ "fixture/CreatePackage.yaml"++requestCreateVpcEndpoint :: CreateVpcEndpoint -> TestTree+requestCreateVpcEndpoint =+ req+ "CreateVpcEndpoint"+ "fixture/CreateVpcEndpoint.yaml"++requestDeleteDomain :: DeleteDomain -> TestTree+requestDeleteDomain =+ req+ "DeleteDomain"+ "fixture/DeleteDomain.yaml"++requestDeleteInboundConnection :: DeleteInboundConnection -> TestTree+requestDeleteInboundConnection =+ req+ "DeleteInboundConnection"+ "fixture/DeleteInboundConnection.yaml"++requestDeleteOutboundConnection :: DeleteOutboundConnection -> TestTree+requestDeleteOutboundConnection =+ req+ "DeleteOutboundConnection"+ "fixture/DeleteOutboundConnection.yaml"++requestDeletePackage :: DeletePackage -> TestTree+requestDeletePackage =+ req+ "DeletePackage"+ "fixture/DeletePackage.yaml"++requestDeleteVpcEndpoint :: DeleteVpcEndpoint -> TestTree+requestDeleteVpcEndpoint =+ req+ "DeleteVpcEndpoint"+ "fixture/DeleteVpcEndpoint.yaml"++requestDescribeDomain :: DescribeDomain -> TestTree+requestDescribeDomain =+ req+ "DescribeDomain"+ "fixture/DescribeDomain.yaml"++requestDescribeDomainAutoTunes :: DescribeDomainAutoTunes -> TestTree+requestDescribeDomainAutoTunes =+ req+ "DescribeDomainAutoTunes"+ "fixture/DescribeDomainAutoTunes.yaml"++requestDescribeDomainChangeProgress :: DescribeDomainChangeProgress -> TestTree+requestDescribeDomainChangeProgress =+ req+ "DescribeDomainChangeProgress"+ "fixture/DescribeDomainChangeProgress.yaml"++requestDescribeDomainConfig :: DescribeDomainConfig -> TestTree+requestDescribeDomainConfig =+ req+ "DescribeDomainConfig"+ "fixture/DescribeDomainConfig.yaml"++requestDescribeDomains :: DescribeDomains -> TestTree+requestDescribeDomains =+ req+ "DescribeDomains"+ "fixture/DescribeDomains.yaml"++requestDescribeInboundConnections :: DescribeInboundConnections -> TestTree+requestDescribeInboundConnections =+ req+ "DescribeInboundConnections"+ "fixture/DescribeInboundConnections.yaml"++requestDescribeInstanceTypeLimits :: DescribeInstanceTypeLimits -> TestTree+requestDescribeInstanceTypeLimits =+ req+ "DescribeInstanceTypeLimits"+ "fixture/DescribeInstanceTypeLimits.yaml"++requestDescribeOutboundConnections :: DescribeOutboundConnections -> TestTree+requestDescribeOutboundConnections =+ req+ "DescribeOutboundConnections"+ "fixture/DescribeOutboundConnections.yaml"++requestDescribePackages :: DescribePackages -> TestTree+requestDescribePackages =+ req+ "DescribePackages"+ "fixture/DescribePackages.yaml"++requestDescribeReservedInstanceOfferings :: DescribeReservedInstanceOfferings -> TestTree+requestDescribeReservedInstanceOfferings =+ req+ "DescribeReservedInstanceOfferings"+ "fixture/DescribeReservedInstanceOfferings.yaml"++requestDescribeReservedInstances :: DescribeReservedInstances -> TestTree+requestDescribeReservedInstances =+ req+ "DescribeReservedInstances"+ "fixture/DescribeReservedInstances.yaml"++requestDescribeVpcEndpoints :: DescribeVpcEndpoints -> TestTree+requestDescribeVpcEndpoints =+ req+ "DescribeVpcEndpoints"+ "fixture/DescribeVpcEndpoints.yaml"++requestDissociatePackage :: DissociatePackage -> TestTree+requestDissociatePackage =+ req+ "DissociatePackage"+ "fixture/DissociatePackage.yaml"++requestGetCompatibleVersions :: GetCompatibleVersions -> TestTree+requestGetCompatibleVersions =+ req+ "GetCompatibleVersions"+ "fixture/GetCompatibleVersions.yaml"++requestGetPackageVersionHistory :: GetPackageVersionHistory -> TestTree+requestGetPackageVersionHistory =+ req+ "GetPackageVersionHistory"+ "fixture/GetPackageVersionHistory.yaml"++requestGetUpgradeHistory :: GetUpgradeHistory -> TestTree+requestGetUpgradeHistory =+ req+ "GetUpgradeHistory"+ "fixture/GetUpgradeHistory.yaml"++requestGetUpgradeStatus :: GetUpgradeStatus -> TestTree+requestGetUpgradeStatus =+ req+ "GetUpgradeStatus"+ "fixture/GetUpgradeStatus.yaml"++requestListDomainNames :: ListDomainNames -> TestTree+requestListDomainNames =+ req+ "ListDomainNames"+ "fixture/ListDomainNames.yaml"++requestListDomainsForPackage :: ListDomainsForPackage -> TestTree+requestListDomainsForPackage =+ req+ "ListDomainsForPackage"+ "fixture/ListDomainsForPackage.yaml"++requestListInstanceTypeDetails :: ListInstanceTypeDetails -> TestTree+requestListInstanceTypeDetails =+ req+ "ListInstanceTypeDetails"+ "fixture/ListInstanceTypeDetails.yaml"++requestListPackagesForDomain :: ListPackagesForDomain -> TestTree+requestListPackagesForDomain =+ req+ "ListPackagesForDomain"+ "fixture/ListPackagesForDomain.yaml"++requestListTags :: ListTags -> TestTree+requestListTags =+ req+ "ListTags"+ "fixture/ListTags.yaml"++requestListVersions :: ListVersions -> TestTree+requestListVersions =+ req+ "ListVersions"+ "fixture/ListVersions.yaml"++requestListVpcEndpointAccess :: ListVpcEndpointAccess -> TestTree+requestListVpcEndpointAccess =+ req+ "ListVpcEndpointAccess"+ "fixture/ListVpcEndpointAccess.yaml"++requestListVpcEndpoints :: ListVpcEndpoints -> TestTree+requestListVpcEndpoints =+ req+ "ListVpcEndpoints"+ "fixture/ListVpcEndpoints.yaml"++requestListVpcEndpointsForDomain :: ListVpcEndpointsForDomain -> TestTree+requestListVpcEndpointsForDomain =+ req+ "ListVpcEndpointsForDomain"+ "fixture/ListVpcEndpointsForDomain.yaml"++requestPurchaseReservedInstanceOffering :: PurchaseReservedInstanceOffering -> TestTree+requestPurchaseReservedInstanceOffering =+ req+ "PurchaseReservedInstanceOffering"+ "fixture/PurchaseReservedInstanceOffering.yaml"++requestRejectInboundConnection :: RejectInboundConnection -> TestTree+requestRejectInboundConnection =+ req+ "RejectInboundConnection"+ "fixture/RejectInboundConnection.yaml"++requestRemoveTags :: RemoveTags -> TestTree+requestRemoveTags =+ req+ "RemoveTags"+ "fixture/RemoveTags.yaml"++requestRevokeVpcEndpointAccess :: RevokeVpcEndpointAccess -> TestTree+requestRevokeVpcEndpointAccess =+ req+ "RevokeVpcEndpointAccess"+ "fixture/RevokeVpcEndpointAccess.yaml"++requestStartServiceSoftwareUpdate :: StartServiceSoftwareUpdate -> TestTree+requestStartServiceSoftwareUpdate =+ req+ "StartServiceSoftwareUpdate"+ "fixture/StartServiceSoftwareUpdate.yaml"++requestUpdateDomainConfig :: UpdateDomainConfig -> TestTree+requestUpdateDomainConfig =+ req+ "UpdateDomainConfig"+ "fixture/UpdateDomainConfig.yaml"++requestUpdatePackage :: UpdatePackage -> TestTree+requestUpdatePackage =+ req+ "UpdatePackage"+ "fixture/UpdatePackage.yaml"++requestUpdateVpcEndpoint :: UpdateVpcEndpoint -> TestTree+requestUpdateVpcEndpoint =+ req+ "UpdateVpcEndpoint"+ "fixture/UpdateVpcEndpoint.yaml"++requestUpgradeDomain :: UpgradeDomain -> TestTree+requestUpgradeDomain =+ req+ "UpgradeDomain"+ "fixture/UpgradeDomain.yaml"++-- Responses++responseAcceptInboundConnection :: AcceptInboundConnectionResponse -> TestTree+responseAcceptInboundConnection =+ res+ "AcceptInboundConnectionResponse"+ "fixture/AcceptInboundConnectionResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy AcceptInboundConnection)++responseAddTags :: AddTagsResponse -> TestTree+responseAddTags =+ res+ "AddTagsResponse"+ "fixture/AddTagsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy AddTags)++responseAssociatePackage :: AssociatePackageResponse -> TestTree+responseAssociatePackage =+ res+ "AssociatePackageResponse"+ "fixture/AssociatePackageResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy AssociatePackage)++responseAuthorizeVpcEndpointAccess :: AuthorizeVpcEndpointAccessResponse -> TestTree+responseAuthorizeVpcEndpointAccess =+ res+ "AuthorizeVpcEndpointAccessResponse"+ "fixture/AuthorizeVpcEndpointAccessResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy AuthorizeVpcEndpointAccess)++responseCancelServiceSoftwareUpdate :: CancelServiceSoftwareUpdateResponse -> TestTree+responseCancelServiceSoftwareUpdate =+ res+ "CancelServiceSoftwareUpdateResponse"+ "fixture/CancelServiceSoftwareUpdateResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CancelServiceSoftwareUpdate)++responseCreateDomain :: CreateDomainResponse -> TestTree+responseCreateDomain =+ res+ "CreateDomainResponse"+ "fixture/CreateDomainResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateDomain)++responseCreateOutboundConnection :: CreateOutboundConnectionResponse -> TestTree+responseCreateOutboundConnection =+ res+ "CreateOutboundConnectionResponse"+ "fixture/CreateOutboundConnectionResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateOutboundConnection)++responseCreatePackage :: CreatePackageResponse -> TestTree+responseCreatePackage =+ res+ "CreatePackageResponse"+ "fixture/CreatePackageResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreatePackage)++responseCreateVpcEndpoint :: CreateVpcEndpointResponse -> TestTree+responseCreateVpcEndpoint =+ res+ "CreateVpcEndpointResponse"+ "fixture/CreateVpcEndpointResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateVpcEndpoint)++responseDeleteDomain :: DeleteDomainResponse -> TestTree+responseDeleteDomain =+ res+ "DeleteDomainResponse"+ "fixture/DeleteDomainResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteDomain)++responseDeleteInboundConnection :: DeleteInboundConnectionResponse -> TestTree+responseDeleteInboundConnection =+ res+ "DeleteInboundConnectionResponse"+ "fixture/DeleteInboundConnectionResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteInboundConnection)++responseDeleteOutboundConnection :: DeleteOutboundConnectionResponse -> TestTree+responseDeleteOutboundConnection =+ res+ "DeleteOutboundConnectionResponse"+ "fixture/DeleteOutboundConnectionResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteOutboundConnection)++responseDeletePackage :: DeletePackageResponse -> TestTree+responseDeletePackage =+ res+ "DeletePackageResponse"+ "fixture/DeletePackageResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeletePackage)++responseDeleteVpcEndpoint :: DeleteVpcEndpointResponse -> TestTree+responseDeleteVpcEndpoint =+ res+ "DeleteVpcEndpointResponse"+ "fixture/DeleteVpcEndpointResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteVpcEndpoint)++responseDescribeDomain :: DescribeDomainResponse -> TestTree+responseDescribeDomain =+ res+ "DescribeDomainResponse"+ "fixture/DescribeDomainResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeDomain)++responseDescribeDomainAutoTunes :: DescribeDomainAutoTunesResponse -> TestTree+responseDescribeDomainAutoTunes =+ res+ "DescribeDomainAutoTunesResponse"+ "fixture/DescribeDomainAutoTunesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeDomainAutoTunes)++responseDescribeDomainChangeProgress :: DescribeDomainChangeProgressResponse -> TestTree+responseDescribeDomainChangeProgress =+ res+ "DescribeDomainChangeProgressResponse"+ "fixture/DescribeDomainChangeProgressResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeDomainChangeProgress)++responseDescribeDomainConfig :: DescribeDomainConfigResponse -> TestTree+responseDescribeDomainConfig =+ res+ "DescribeDomainConfigResponse"+ "fixture/DescribeDomainConfigResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeDomainConfig)++responseDescribeDomains :: DescribeDomainsResponse -> TestTree+responseDescribeDomains =+ res+ "DescribeDomainsResponse"+ "fixture/DescribeDomainsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeDomains)++responseDescribeInboundConnections :: DescribeInboundConnectionsResponse -> TestTree+responseDescribeInboundConnections =+ res+ "DescribeInboundConnectionsResponse"+ "fixture/DescribeInboundConnectionsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeInboundConnections)++responseDescribeInstanceTypeLimits :: DescribeInstanceTypeLimitsResponse -> TestTree+responseDescribeInstanceTypeLimits =+ res+ "DescribeInstanceTypeLimitsResponse"+ "fixture/DescribeInstanceTypeLimitsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeInstanceTypeLimits)++responseDescribeOutboundConnections :: DescribeOutboundConnectionsResponse -> TestTree+responseDescribeOutboundConnections =+ res+ "DescribeOutboundConnectionsResponse"+ "fixture/DescribeOutboundConnectionsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeOutboundConnections)++responseDescribePackages :: DescribePackagesResponse -> TestTree+responseDescribePackages =+ res+ "DescribePackagesResponse"+ "fixture/DescribePackagesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribePackages)++responseDescribeReservedInstanceOfferings :: DescribeReservedInstanceOfferingsResponse -> TestTree+responseDescribeReservedInstanceOfferings =+ res+ "DescribeReservedInstanceOfferingsResponse"+ "fixture/DescribeReservedInstanceOfferingsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeReservedInstanceOfferings)++responseDescribeReservedInstances :: DescribeReservedInstancesResponse -> TestTree+responseDescribeReservedInstances =+ res+ "DescribeReservedInstancesResponse"+ "fixture/DescribeReservedInstancesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeReservedInstances)++responseDescribeVpcEndpoints :: DescribeVpcEndpointsResponse -> TestTree+responseDescribeVpcEndpoints =+ res+ "DescribeVpcEndpointsResponse"+ "fixture/DescribeVpcEndpointsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DescribeVpcEndpoints)++responseDissociatePackage :: DissociatePackageResponse -> TestTree+responseDissociatePackage =+ res+ "DissociatePackageResponse"+ "fixture/DissociatePackageResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DissociatePackage)++responseGetCompatibleVersions :: GetCompatibleVersionsResponse -> TestTree+responseGetCompatibleVersions =+ res+ "GetCompatibleVersionsResponse"+ "fixture/GetCompatibleVersionsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetCompatibleVersions)++responseGetPackageVersionHistory :: GetPackageVersionHistoryResponse -> TestTree+responseGetPackageVersionHistory =+ res+ "GetPackageVersionHistoryResponse"+ "fixture/GetPackageVersionHistoryResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetPackageVersionHistory)++responseGetUpgradeHistory :: GetUpgradeHistoryResponse -> TestTree+responseGetUpgradeHistory =+ res+ "GetUpgradeHistoryResponse"+ "fixture/GetUpgradeHistoryResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetUpgradeHistory)++responseGetUpgradeStatus :: GetUpgradeStatusResponse -> TestTree+responseGetUpgradeStatus =+ res+ "GetUpgradeStatusResponse"+ "fixture/GetUpgradeStatusResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetUpgradeStatus)++responseListDomainNames :: ListDomainNamesResponse -> TestTree+responseListDomainNames =+ res+ "ListDomainNamesResponse"+ "fixture/ListDomainNamesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListDomainNames)++responseListDomainsForPackage :: ListDomainsForPackageResponse -> TestTree+responseListDomainsForPackage =+ res+ "ListDomainsForPackageResponse"+ "fixture/ListDomainsForPackageResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListDomainsForPackage)++responseListInstanceTypeDetails :: ListInstanceTypeDetailsResponse -> TestTree+responseListInstanceTypeDetails =+ res+ "ListInstanceTypeDetailsResponse"+ "fixture/ListInstanceTypeDetailsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListInstanceTypeDetails)++responseListPackagesForDomain :: ListPackagesForDomainResponse -> TestTree+responseListPackagesForDomain =+ res+ "ListPackagesForDomainResponse"+ "fixture/ListPackagesForDomainResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListPackagesForDomain)++responseListTags :: ListTagsResponse -> TestTree+responseListTags =+ res+ "ListTagsResponse"+ "fixture/ListTagsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListTags)++responseListVersions :: ListVersionsResponse -> TestTree+responseListVersions =+ res+ "ListVersionsResponse"+ "fixture/ListVersionsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListVersions)++responseListVpcEndpointAccess :: ListVpcEndpointAccessResponse -> TestTree+responseListVpcEndpointAccess =+ res+ "ListVpcEndpointAccessResponse"+ "fixture/ListVpcEndpointAccessResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListVpcEndpointAccess)++responseListVpcEndpoints :: ListVpcEndpointsResponse -> TestTree+responseListVpcEndpoints =+ res+ "ListVpcEndpointsResponse"+ "fixture/ListVpcEndpointsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListVpcEndpoints)++responseListVpcEndpointsForDomain :: ListVpcEndpointsForDomainResponse -> TestTree+responseListVpcEndpointsForDomain =+ res+ "ListVpcEndpointsForDomainResponse"+ "fixture/ListVpcEndpointsForDomainResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListVpcEndpointsForDomain)++responsePurchaseReservedInstanceOffering :: PurchaseReservedInstanceOfferingResponse -> TestTree+responsePurchaseReservedInstanceOffering =+ res+ "PurchaseReservedInstanceOfferingResponse"+ "fixture/PurchaseReservedInstanceOfferingResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy PurchaseReservedInstanceOffering)++responseRejectInboundConnection :: RejectInboundConnectionResponse -> TestTree+responseRejectInboundConnection =+ res+ "RejectInboundConnectionResponse"+ "fixture/RejectInboundConnectionResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy RejectInboundConnection)++responseRemoveTags :: RemoveTagsResponse -> TestTree+responseRemoveTags =+ res+ "RemoveTagsResponse"+ "fixture/RemoveTagsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy RemoveTags)++responseRevokeVpcEndpointAccess :: RevokeVpcEndpointAccessResponse -> TestTree+responseRevokeVpcEndpointAccess =+ res+ "RevokeVpcEndpointAccessResponse"+ "fixture/RevokeVpcEndpointAccessResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy RevokeVpcEndpointAccess)++responseStartServiceSoftwareUpdate :: StartServiceSoftwareUpdateResponse -> TestTree+responseStartServiceSoftwareUpdate =+ res+ "StartServiceSoftwareUpdateResponse"+ "fixture/StartServiceSoftwareUpdateResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy StartServiceSoftwareUpdate)++responseUpdateDomainConfig :: UpdateDomainConfigResponse -> TestTree+responseUpdateDomainConfig =+ res+ "UpdateDomainConfigResponse"+ "fixture/UpdateDomainConfigResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateDomainConfig)++responseUpdatePackage :: UpdatePackageResponse -> TestTree+responseUpdatePackage =+ res+ "UpdatePackageResponse"+ "fixture/UpdatePackageResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdatePackage)++responseUpdateVpcEndpoint :: UpdateVpcEndpointResponse -> TestTree+responseUpdateVpcEndpoint =+ res+ "UpdateVpcEndpointResponse"+ "fixture/UpdateVpcEndpointResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateVpcEndpoint)++responseUpgradeDomain :: UpgradeDomainResponse -> TestTree+responseUpgradeDomain =+ res+ "UpgradeDomainResponse"+ "fixture/UpgradeDomainResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpgradeDomain)
+ test/Test/Amazonka/OpenSearch.hs view
@@ -0,0 +1,20 @@+-- |+-- Module : Test.Amazonka.OpenSearch+-- 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.OpenSearch+ ( tests,+ fixtures,+ )+where++import Test.Tasty (TestTree)++tests :: [TestTree]+tests = []++fixtures :: [TestTree]+fixtures = []
+ test/Test/Amazonka/OpenSearch/Internal.hs view
@@ -0,0 +1,8 @@+-- |+-- Module : Test.Amazonka.OpenSearch.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.OpenSearch.Internal where