amazonka-resource-explorer-v2 (empty) → 2.0
raw patch · 81 files changed
+7692/−0 lines, 81 filesdep +amazonka-coredep +amazonka-resource-explorer-v2dep +amazonka-test
Dependencies added: amazonka-core, amazonka-resource-explorer-v2, amazonka-test, base, bytestring, case-insensitive, tasty, tasty-hunit, text, time, unordered-containers
Files
- LICENSE +367/−0
- README.md +44/−0
- amazonka-resource-explorer-v2.cabal +114/−0
- fixture/AssociateDefaultView.yaml +10/−0
- fixture/AssociateDefaultViewResponse.proto +0/−0
- fixture/BatchGetView.yaml +10/−0
- fixture/BatchGetViewResponse.proto +0/−0
- fixture/CreateIndex.yaml +10/−0
- fixture/CreateIndexResponse.proto +0/−0
- fixture/CreateView.yaml +10/−0
- fixture/CreateViewResponse.proto +0/−0
- fixture/DeleteIndex.yaml +10/−0
- fixture/DeleteIndexResponse.proto +0/−0
- fixture/DeleteView.yaml +10/−0
- fixture/DeleteViewResponse.proto +0/−0
- fixture/DisassociateDefaultView.yaml +10/−0
- fixture/DisassociateDefaultViewResponse.proto +0/−0
- fixture/GetDefaultView.yaml +10/−0
- fixture/GetDefaultViewResponse.proto +0/−0
- fixture/GetIndex.yaml +10/−0
- fixture/GetIndexResponse.proto +0/−0
- fixture/GetView.yaml +10/−0
- fixture/GetViewResponse.proto +0/−0
- fixture/ListIndexes.yaml +10/−0
- fixture/ListIndexesResponse.proto +0/−0
- fixture/ListSupportedResourceTypes.yaml +10/−0
- fixture/ListSupportedResourceTypesResponse.proto +0/−0
- fixture/ListTagsForResource.yaml +10/−0
- fixture/ListTagsForResourceResponse.proto +0/−0
- fixture/ListViews.yaml +10/−0
- fixture/ListViewsResponse.proto +0/−0
- fixture/Search.yaml +10/−0
- fixture/SearchResponse.proto +0/−0
- fixture/TagResource.yaml +10/−0
- fixture/TagResourceResponse.proto +0/−0
- fixture/UntagResource.yaml +10/−0
- fixture/UntagResourceResponse.proto +0/−0
- fixture/UpdateIndexType.yaml +10/−0
- fixture/UpdateIndexTypeResponse.proto +0/−0
- fixture/UpdateView.yaml +10/−0
- fixture/UpdateViewResponse.proto +0/−0
- gen/Amazonka/ResourceExplorer2.hs +294/−0
- gen/Amazonka/ResourceExplorer2/AssociateDefaultView.hs +196/−0
- gen/Amazonka/ResourceExplorer2/BatchGetView.hs +183/−0
- gen/Amazonka/ResourceExplorer2/CreateIndex.hs +289/−0
- gen/Amazonka/ResourceExplorer2/CreateView.hs +319/−0
- gen/Amazonka/ResourceExplorer2/DeleteIndex.hs +217/−0
- gen/Amazonka/ResourceExplorer2/DeleteView.hs +178/−0
- gen/Amazonka/ResourceExplorer2/DisassociateDefaultView.hs +120/−0
- gen/Amazonka/ResourceExplorer2/GetDefaultView.hs +154/−0
- gen/Amazonka/ResourceExplorer2/GetIndex.hs +265/−0
- gen/Amazonka/ResourceExplorer2/GetView.hs +178/−0
- gen/Amazonka/ResourceExplorer2/Lens.hs +224/−0
- gen/Amazonka/ResourceExplorer2/ListIndexes.hs +307/−0
- gen/Amazonka/ResourceExplorer2/ListSupportedResourceTypes.hs +275/−0
- gen/Amazonka/ResourceExplorer2/ListTagsForResource.hs +168/−0
- gen/Amazonka/ResourceExplorer2/ListViews.hs +279/−0
- gen/Amazonka/ResourceExplorer2/Search.hs +394/−0
- gen/Amazonka/ResourceExplorer2/TagResource.hs +170/−0
- gen/Amazonka/ResourceExplorer2/Types.hs +263/−0
- gen/Amazonka/ResourceExplorer2/Types/BatchGetViewError.hs +95/−0
- gen/Amazonka/ResourceExplorer2/Types/Document.hs +52/−0
- gen/Amazonka/ResourceExplorer2/Types/IncludedProperty.hs +91/−0
- gen/Amazonka/ResourceExplorer2/Types/Index.hs +142/−0
- gen/Amazonka/ResourceExplorer2/Types/IndexState.hs +86/−0
- gen/Amazonka/ResourceExplorer2/Types/IndexType.hs +71/−0
- gen/Amazonka/ResourceExplorer2/Types/Resource.hs +168/−0
- gen/Amazonka/ResourceExplorer2/Types/ResourceCount.hs +122/−0
- gen/Amazonka/ResourceExplorer2/Types/ResourceProperty.hs +103/−0
- gen/Amazonka/ResourceExplorer2/Types/SearchFilter.hs +86/−0
- gen/Amazonka/ResourceExplorer2/Types/SupportedResourceType.hs +92/−0
- gen/Amazonka/ResourceExplorer2/Types/View.hs +177/−0
- gen/Amazonka/ResourceExplorer2/UntagResource.hs +168/−0
- gen/Amazonka/ResourceExplorer2/UpdateIndexType.hs +294/−0
- gen/Amazonka/ResourceExplorer2/UpdateView.hs +264/−0
- gen/Amazonka/ResourceExplorer2/Waiters.hs +24/−0
- src/.gitkeep +0/−0
- test/Main.hs +23/−0
- test/Test/Amazonka/Gen/ResourceExplorer2.hs +418/−0
- test/Test/Amazonka/ResourceExplorer2.hs +20/−0
- test/Test/Amazonka/ResourceExplorer2/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 Resource Explorer SDK++* [Version](#version)+* [Description](#description)+* [Contribute](#contribute)+* [Licence](#licence)+++## Version+ +`2.0` - Derived from API version @2022-07-28@ of the AWS service descriptions, licensed under Apache 2.0.++## Description++Documentation is available via [Hackage](http://hackage.haskell.org/package/amazonka-resource-explorer-v2)+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.ResourceExplorer2](http://hackage.haskell.org/package/amazonka-resource-explorer-v2/docs/Amazonka-ResourceExplorer2.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-resource-explorer-v2` 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-resource-explorer-v2.cabal view
@@ -0,0 +1,114 @@+cabal-version: 2.2+name: amazonka-resource-explorer-v2+version: 2.0+synopsis: Amazon Resource Explorer 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 @2022-07-28@ 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.ResourceExplorer2.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.ResourceExplorer2" 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-resource-explorer-v2++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.ResourceExplorer2+ Amazonka.ResourceExplorer2.AssociateDefaultView+ Amazonka.ResourceExplorer2.BatchGetView+ Amazonka.ResourceExplorer2.CreateIndex+ Amazonka.ResourceExplorer2.CreateView+ Amazonka.ResourceExplorer2.DeleteIndex+ Amazonka.ResourceExplorer2.DeleteView+ Amazonka.ResourceExplorer2.DisassociateDefaultView+ Amazonka.ResourceExplorer2.GetDefaultView+ Amazonka.ResourceExplorer2.GetIndex+ Amazonka.ResourceExplorer2.GetView+ Amazonka.ResourceExplorer2.Lens+ Amazonka.ResourceExplorer2.ListIndexes+ Amazonka.ResourceExplorer2.ListSupportedResourceTypes+ Amazonka.ResourceExplorer2.ListTagsForResource+ Amazonka.ResourceExplorer2.ListViews+ Amazonka.ResourceExplorer2.Search+ Amazonka.ResourceExplorer2.TagResource+ Amazonka.ResourceExplorer2.Types+ Amazonka.ResourceExplorer2.Types.BatchGetViewError+ Amazonka.ResourceExplorer2.Types.Document+ Amazonka.ResourceExplorer2.Types.IncludedProperty+ Amazonka.ResourceExplorer2.Types.Index+ Amazonka.ResourceExplorer2.Types.IndexState+ Amazonka.ResourceExplorer2.Types.IndexType+ Amazonka.ResourceExplorer2.Types.Resource+ Amazonka.ResourceExplorer2.Types.ResourceCount+ Amazonka.ResourceExplorer2.Types.ResourceProperty+ Amazonka.ResourceExplorer2.Types.SearchFilter+ Amazonka.ResourceExplorer2.Types.SupportedResourceType+ Amazonka.ResourceExplorer2.Types.View+ Amazonka.ResourceExplorer2.UntagResource+ Amazonka.ResourceExplorer2.UpdateIndexType+ Amazonka.ResourceExplorer2.UpdateView+ Amazonka.ResourceExplorer2.Waiters++ build-depends:+ , amazonka-core >=2.0 && <2.1+ , base >=4.12 && <5++test-suite amazonka-resource-explorer-v2-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.ResourceExplorer2+ Test.Amazonka.ResourceExplorer2+ Test.Amazonka.ResourceExplorer2.Internal++ build-depends:+ , amazonka-core >=2.0 && <2.1+ , amazonka-resource-explorer-v2+ , amazonka-test >=2.0 && <2.1+ , base+ , bytestring+ , case-insensitive+ , tasty+ , tasty-hunit+ , text+ , time+ , unordered-containers
+ fixture/AssociateDefaultView.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/resource-explorer-2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: resource-explorer-2.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/AssociateDefaultViewResponse.proto view
+ fixture/BatchGetView.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/resource-explorer-2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: resource-explorer-2.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/BatchGetViewResponse.proto view
+ fixture/CreateIndex.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/resource-explorer-2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: resource-explorer-2.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/CreateIndexResponse.proto view
+ fixture/CreateView.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/resource-explorer-2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: resource-explorer-2.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/CreateViewResponse.proto view
+ fixture/DeleteIndex.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/resource-explorer-2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: resource-explorer-2.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/DeleteIndexResponse.proto view
+ fixture/DeleteView.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/resource-explorer-2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: resource-explorer-2.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/DeleteViewResponse.proto view
+ fixture/DisassociateDefaultView.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/resource-explorer-2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: resource-explorer-2.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/DisassociateDefaultViewResponse.proto view
+ fixture/GetDefaultView.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/resource-explorer-2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: resource-explorer-2.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/GetDefaultViewResponse.proto view
+ fixture/GetIndex.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/resource-explorer-2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: resource-explorer-2.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/GetIndexResponse.proto view
+ fixture/GetView.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/resource-explorer-2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: resource-explorer-2.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/GetViewResponse.proto view
+ fixture/ListIndexes.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/resource-explorer-2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: resource-explorer-2.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/ListIndexesResponse.proto view
+ fixture/ListSupportedResourceTypes.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/resource-explorer-2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: resource-explorer-2.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/ListSupportedResourceTypesResponse.proto view
+ fixture/ListTagsForResource.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/resource-explorer-2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: resource-explorer-2.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListTagsForResourceResponse.proto view
+ fixture/ListViews.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/resource-explorer-2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: resource-explorer-2.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/ListViewsResponse.proto view
+ fixture/Search.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/resource-explorer-2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: resource-explorer-2.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/SearchResponse.proto view
+ fixture/TagResource.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/resource-explorer-2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: resource-explorer-2.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/TagResourceResponse.proto view
+ fixture/UntagResource.yaml view
@@ -0,0 +1,10 @@+---+method: DELETE+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/resource-explorer-2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: resource-explorer-2.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/UntagResourceResponse.proto view
+ fixture/UpdateIndexType.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/resource-explorer-2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: resource-explorer-2.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/UpdateIndexTypeResponse.proto view
+ fixture/UpdateView.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/resource-explorer-2/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: resource-explorer-2.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/UpdateViewResponse.proto view
+ gen/Amazonka/ResourceExplorer2.hs view
@@ -0,0 +1,294 @@+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Amazonka.ResourceExplorer2+-- 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 @2022-07-28@ of the AWS service descriptions, licensed under Apache 2.0.+--+-- Amazon Web Services Resource Explorer is a resource search and discovery+-- service. By using Resource Explorer, you can explore your resources+-- using an internet search engine-like experience. Examples of resources+-- include Amazon Relational Database Service (Amazon RDS) instances,+-- Amazon Simple Storage Service (Amazon S3) buckets, or Amazon DynamoDB+-- tables. You can search for your resources using resource metadata like+-- names, tags, and IDs. Resource Explorer can search across all of the+-- Amazon Web Services Regions in your account in which you turn the+-- service on, to simplify your cross-Region workloads.+--+-- Resource Explorer scans the resources in each of the Amazon Web Services+-- Regions in your Amazon Web Services account in which you turn on+-- Resource Explorer. Resource Explorer+-- <https://docs.aws.amazon.com/resource-explorer/latest/userguide/getting-started-terms-and-concepts.html#term-index creates and maintains an index>+-- in each Region, with the details of that Region\'s resources.+--+-- You can+-- <https://docs.aws.amazon.com/resource-explorer/latest/userguide/manage-aggregator-region.html search across all of the indexed Regions in your account>+-- by designating one of your Amazon Web Services Regions to contain the+-- aggregator index for the account. When you+-- <https://docs.aws.amazon.com/resource-explorer/latest/userguide/manage-aggregator-region-turn-on.html promote a local index in a Region to become the aggregator index for the account>,+-- Resource Explorer automatically replicates the index information from+-- all local indexes in the other Regions to the aggregator index.+-- Therefore, the Region with the aggregator index has a copy of all+-- resource information for all Regions in the account where you turned on+-- Resource Explorer. As a result, views in the aggregator index Region+-- include resources from all of the indexed Regions in your account.+--+-- For more information about Amazon Web Services Resource Explorer,+-- including how to enable and configure the service, see the+-- <https://docs.aws.amazon.com/resource-explorer/latest/userguide/ Amazon Web Services Resource Explorer User Guide>.+module Amazonka.ResourceExplorer2+ ( -- * Service Configuration+ defaultService,++ -- * Errors+ -- $errors++ -- ** AccessDeniedException+ _AccessDeniedException,++ -- ** ConflictException+ _ConflictException,++ -- ** InternalServerException+ _InternalServerException,++ -- ** ResourceNotFoundException+ _ResourceNotFoundException,++ -- ** ServiceQuotaExceededException+ _ServiceQuotaExceededException,++ -- ** ThrottlingException+ _ThrottlingException,++ -- ** UnauthorizedException+ _UnauthorizedException,++ -- ** ValidationException+ _ValidationException,++ -- * Waiters+ -- $waiters++ -- * Operations+ -- $operations++ -- ** AssociateDefaultView+ AssociateDefaultView (AssociateDefaultView'),+ newAssociateDefaultView,+ AssociateDefaultViewResponse (AssociateDefaultViewResponse'),+ newAssociateDefaultViewResponse,++ -- ** BatchGetView+ BatchGetView (BatchGetView'),+ newBatchGetView,+ BatchGetViewResponse (BatchGetViewResponse'),+ newBatchGetViewResponse,++ -- ** CreateIndex+ CreateIndex (CreateIndex'),+ newCreateIndex,+ CreateIndexResponse (CreateIndexResponse'),+ newCreateIndexResponse,++ -- ** CreateView+ CreateView (CreateView'),+ newCreateView,+ CreateViewResponse (CreateViewResponse'),+ newCreateViewResponse,++ -- ** DeleteIndex+ DeleteIndex (DeleteIndex'),+ newDeleteIndex,+ DeleteIndexResponse (DeleteIndexResponse'),+ newDeleteIndexResponse,++ -- ** DeleteView+ DeleteView (DeleteView'),+ newDeleteView,+ DeleteViewResponse (DeleteViewResponse'),+ newDeleteViewResponse,++ -- ** DisassociateDefaultView+ DisassociateDefaultView (DisassociateDefaultView'),+ newDisassociateDefaultView,+ DisassociateDefaultViewResponse (DisassociateDefaultViewResponse'),+ newDisassociateDefaultViewResponse,++ -- ** GetDefaultView+ GetDefaultView (GetDefaultView'),+ newGetDefaultView,+ GetDefaultViewResponse (GetDefaultViewResponse'),+ newGetDefaultViewResponse,++ -- ** GetIndex+ GetIndex (GetIndex'),+ newGetIndex,+ GetIndexResponse (GetIndexResponse'),+ newGetIndexResponse,++ -- ** GetView+ GetView (GetView'),+ newGetView,+ GetViewResponse (GetViewResponse'),+ newGetViewResponse,++ -- ** ListIndexes (Paginated)+ ListIndexes (ListIndexes'),+ newListIndexes,+ ListIndexesResponse (ListIndexesResponse'),+ newListIndexesResponse,++ -- ** ListSupportedResourceTypes (Paginated)+ ListSupportedResourceTypes (ListSupportedResourceTypes'),+ newListSupportedResourceTypes,+ ListSupportedResourceTypesResponse (ListSupportedResourceTypesResponse'),+ newListSupportedResourceTypesResponse,++ -- ** ListTagsForResource+ ListTagsForResource (ListTagsForResource'),+ newListTagsForResource,+ ListTagsForResourceResponse (ListTagsForResourceResponse'),+ newListTagsForResourceResponse,++ -- ** ListViews (Paginated)+ ListViews (ListViews'),+ newListViews,+ ListViewsResponse (ListViewsResponse'),+ newListViewsResponse,++ -- ** Search (Paginated)+ Search (Search'),+ newSearch,+ SearchResponse (SearchResponse'),+ newSearchResponse,++ -- ** TagResource+ TagResource (TagResource'),+ newTagResource,+ TagResourceResponse (TagResourceResponse'),+ newTagResourceResponse,++ -- ** UntagResource+ UntagResource (UntagResource'),+ newUntagResource,+ UntagResourceResponse (UntagResourceResponse'),+ newUntagResourceResponse,++ -- ** UpdateIndexType+ UpdateIndexType (UpdateIndexType'),+ newUpdateIndexType,+ UpdateIndexTypeResponse (UpdateIndexTypeResponse'),+ newUpdateIndexTypeResponse,++ -- ** UpdateView+ UpdateView (UpdateView'),+ newUpdateView,+ UpdateViewResponse (UpdateViewResponse'),+ newUpdateViewResponse,++ -- * Types++ -- ** IndexState+ IndexState (..),++ -- ** IndexType+ IndexType (..),++ -- ** BatchGetViewError+ BatchGetViewError (BatchGetViewError'),+ newBatchGetViewError,++ -- ** Document+ Document (Document'),+ newDocument,++ -- ** IncludedProperty+ IncludedProperty (IncludedProperty'),+ newIncludedProperty,++ -- ** Index+ Index (Index'),+ newIndex,++ -- ** Resource+ Resource (Resource'),+ newResource,++ -- ** ResourceCount+ ResourceCount (ResourceCount'),+ newResourceCount,++ -- ** ResourceProperty+ ResourceProperty (ResourceProperty'),+ newResourceProperty,++ -- ** SearchFilter+ SearchFilter (SearchFilter'),+ newSearchFilter,++ -- ** SupportedResourceType+ SupportedResourceType (SupportedResourceType'),+ newSupportedResourceType,++ -- ** View+ View (View'),+ newView,+ )+where++import Amazonka.ResourceExplorer2.AssociateDefaultView+import Amazonka.ResourceExplorer2.BatchGetView+import Amazonka.ResourceExplorer2.CreateIndex+import Amazonka.ResourceExplorer2.CreateView+import Amazonka.ResourceExplorer2.DeleteIndex+import Amazonka.ResourceExplorer2.DeleteView+import Amazonka.ResourceExplorer2.DisassociateDefaultView+import Amazonka.ResourceExplorer2.GetDefaultView+import Amazonka.ResourceExplorer2.GetIndex+import Amazonka.ResourceExplorer2.GetView+import Amazonka.ResourceExplorer2.Lens+import Amazonka.ResourceExplorer2.ListIndexes+import Amazonka.ResourceExplorer2.ListSupportedResourceTypes+import Amazonka.ResourceExplorer2.ListTagsForResource+import Amazonka.ResourceExplorer2.ListViews+import Amazonka.ResourceExplorer2.Search+import Amazonka.ResourceExplorer2.TagResource+import Amazonka.ResourceExplorer2.Types+import Amazonka.ResourceExplorer2.UntagResource+import Amazonka.ResourceExplorer2.UpdateIndexType+import Amazonka.ResourceExplorer2.UpdateView+import Amazonka.ResourceExplorer2.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 'ResourceExplorer2'.++-- $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/ResourceExplorer2/AssociateDefaultView.hs view
@@ -0,0 +1,196 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.ResourceExplorer2.AssociateDefaultView+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Sets the specified view as the default for the Amazon Web Services+-- Region in which you call this operation. When a user performs a Search+-- that doesn\'t explicitly specify which view to use, then Amazon Web+-- Services Resource Explorer automatically chooses this default view for+-- searches performed in this Amazon Web Services Region.+--+-- If an Amazon Web Services Region doesn\'t have a default view+-- configured, then users must explicitly specify a view with every+-- @Search@ operation performed in that Region.+module Amazonka.ResourceExplorer2.AssociateDefaultView+ ( -- * Creating a Request+ AssociateDefaultView (..),+ newAssociateDefaultView,++ -- * Request Lenses+ associateDefaultView_viewArn,++ -- * Destructuring the Response+ AssociateDefaultViewResponse (..),+ newAssociateDefaultViewResponse,++ -- * Response Lenses+ associateDefaultViewResponse_viewArn,+ associateDefaultViewResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import Amazonka.ResourceExplorer2.Types+import qualified Amazonka.Response as Response++-- | /See:/ 'newAssociateDefaultView' smart constructor.+data AssociateDefaultView = AssociateDefaultView'+ { -- | The+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+ -- of the view to set as the default for the Amazon Web Services Region and+ -- Amazon Web Services account in which you call this operation. The+ -- specified view must already exist in the called Region.+ viewArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AssociateDefaultView' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'viewArn', 'associateDefaultView_viewArn' - The+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+-- of the view to set as the default for the Amazon Web Services Region and+-- Amazon Web Services account in which you call this operation. The+-- specified view must already exist in the called Region.+newAssociateDefaultView ::+ -- | 'viewArn'+ Prelude.Text ->+ AssociateDefaultView+newAssociateDefaultView pViewArn_ =+ AssociateDefaultView' {viewArn = pViewArn_}++-- | The+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+-- of the view to set as the default for the Amazon Web Services Region and+-- Amazon Web Services account in which you call this operation. The+-- specified view must already exist in the called Region.+associateDefaultView_viewArn :: Lens.Lens' AssociateDefaultView Prelude.Text+associateDefaultView_viewArn = Lens.lens (\AssociateDefaultView' {viewArn} -> viewArn) (\s@AssociateDefaultView' {} a -> s {viewArn = a} :: AssociateDefaultView)++instance Core.AWSRequest AssociateDefaultView where+ type+ AWSResponse AssociateDefaultView =+ AssociateDefaultViewResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ AssociateDefaultViewResponse'+ Prelude.<$> (x Data..?> "ViewArn")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable AssociateDefaultView where+ hashWithSalt _salt AssociateDefaultView' {..} =+ _salt `Prelude.hashWithSalt` viewArn++instance Prelude.NFData AssociateDefaultView where+ rnf AssociateDefaultView' {..} = Prelude.rnf viewArn++instance Data.ToHeaders AssociateDefaultView where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON AssociateDefaultView where+ toJSON AssociateDefaultView' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("ViewArn" Data..= viewArn)]+ )++instance Data.ToPath AssociateDefaultView where+ toPath = Prelude.const "/AssociateDefaultView"++instance Data.ToQuery AssociateDefaultView where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newAssociateDefaultViewResponse' smart constructor.+data AssociateDefaultViewResponse = AssociateDefaultViewResponse'+ { -- | The+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+ -- of the view that the operation set as the default for queries made in+ -- the Amazon Web Services Region and Amazon Web Services account in which+ -- you called this operation.+ viewArn :: 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 'AssociateDefaultViewResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'viewArn', 'associateDefaultViewResponse_viewArn' - The+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+-- of the view that the operation set as the default for queries made in+-- the Amazon Web Services Region and Amazon Web Services account in which+-- you called this operation.+--+-- 'httpStatus', 'associateDefaultViewResponse_httpStatus' - The response's http status code.+newAssociateDefaultViewResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ AssociateDefaultViewResponse+newAssociateDefaultViewResponse pHttpStatus_ =+ AssociateDefaultViewResponse'+ { viewArn =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+-- of the view that the operation set as the default for queries made in+-- the Amazon Web Services Region and Amazon Web Services account in which+-- you called this operation.+associateDefaultViewResponse_viewArn :: Lens.Lens' AssociateDefaultViewResponse (Prelude.Maybe Prelude.Text)+associateDefaultViewResponse_viewArn = Lens.lens (\AssociateDefaultViewResponse' {viewArn} -> viewArn) (\s@AssociateDefaultViewResponse' {} a -> s {viewArn = a} :: AssociateDefaultViewResponse)++-- | The response's http status code.+associateDefaultViewResponse_httpStatus :: Lens.Lens' AssociateDefaultViewResponse Prelude.Int+associateDefaultViewResponse_httpStatus = Lens.lens (\AssociateDefaultViewResponse' {httpStatus} -> httpStatus) (\s@AssociateDefaultViewResponse' {} a -> s {httpStatus = a} :: AssociateDefaultViewResponse)++instance Prelude.NFData AssociateDefaultViewResponse where+ rnf AssociateDefaultViewResponse' {..} =+ Prelude.rnf viewArn+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/ResourceExplorer2/BatchGetView.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.ResourceExplorer2.BatchGetView+-- 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 details about a list of views.+module Amazonka.ResourceExplorer2.BatchGetView+ ( -- * Creating a Request+ BatchGetView (..),+ newBatchGetView,++ -- * Request Lenses+ batchGetView_viewArns,++ -- * Destructuring the Response+ BatchGetViewResponse (..),+ newBatchGetViewResponse,++ -- * Response Lenses+ batchGetViewResponse_errors,+ batchGetViewResponse_views,+ batchGetViewResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import Amazonka.ResourceExplorer2.Types+import qualified Amazonka.Response as Response++-- | /See:/ 'newBatchGetView' smart constructor.+data BatchGetView = BatchGetView'+ { -- | A list of+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource names (ARNs)>+ -- that identify the views you want details for.+ viewArns :: Prelude.Maybe (Prelude.NonEmpty Prelude.Text)+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'BatchGetView' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'viewArns', 'batchGetView_viewArns' - A list of+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource names (ARNs)>+-- that identify the views you want details for.+newBatchGetView ::+ BatchGetView+newBatchGetView =+ BatchGetView' {viewArns = Prelude.Nothing}++-- | A list of+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource names (ARNs)>+-- that identify the views you want details for.+batchGetView_viewArns :: Lens.Lens' BatchGetView (Prelude.Maybe (Prelude.NonEmpty Prelude.Text))+batchGetView_viewArns = Lens.lens (\BatchGetView' {viewArns} -> viewArns) (\s@BatchGetView' {} a -> s {viewArns = a} :: BatchGetView) Prelude.. Lens.mapping Lens.coerced++instance Core.AWSRequest BatchGetView where+ type AWSResponse BatchGetView = BatchGetViewResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ BatchGetViewResponse'+ Prelude.<$> (x Data..?> "Errors" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "Views" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable BatchGetView where+ hashWithSalt _salt BatchGetView' {..} =+ _salt `Prelude.hashWithSalt` viewArns++instance Prelude.NFData BatchGetView where+ rnf BatchGetView' {..} = Prelude.rnf viewArns++instance Data.ToHeaders BatchGetView where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON BatchGetView where+ toJSON BatchGetView' {..} =+ Data.object+ ( Prelude.catMaybes+ [("ViewArns" Data..=) Prelude.<$> viewArns]+ )++instance Data.ToPath BatchGetView where+ toPath = Prelude.const "/BatchGetView"++instance Data.ToQuery BatchGetView where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newBatchGetViewResponse' smart constructor.+data BatchGetViewResponse = BatchGetViewResponse'+ { -- | If any of the specified ARNs result in an error, then this structure+ -- describes the error.+ errors :: Prelude.Maybe [BatchGetViewError],+ -- | A structure with a list of objects with details for each of the+ -- specified views.+ views :: Prelude.Maybe [View],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'BatchGetViewResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'errors', 'batchGetViewResponse_errors' - If any of the specified ARNs result in an error, then this structure+-- describes the error.+--+-- 'views', 'batchGetViewResponse_views' - A structure with a list of objects with details for each of the+-- specified views.+--+-- 'httpStatus', 'batchGetViewResponse_httpStatus' - The response's http status code.+newBatchGetViewResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ BatchGetViewResponse+newBatchGetViewResponse pHttpStatus_ =+ BatchGetViewResponse'+ { errors = Prelude.Nothing,+ views = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | If any of the specified ARNs result in an error, then this structure+-- describes the error.+batchGetViewResponse_errors :: Lens.Lens' BatchGetViewResponse (Prelude.Maybe [BatchGetViewError])+batchGetViewResponse_errors = Lens.lens (\BatchGetViewResponse' {errors} -> errors) (\s@BatchGetViewResponse' {} a -> s {errors = a} :: BatchGetViewResponse) Prelude.. Lens.mapping Lens.coerced++-- | A structure with a list of objects with details for each of the+-- specified views.+batchGetViewResponse_views :: Lens.Lens' BatchGetViewResponse (Prelude.Maybe [View])+batchGetViewResponse_views = Lens.lens (\BatchGetViewResponse' {views} -> views) (\s@BatchGetViewResponse' {} a -> s {views = a} :: BatchGetViewResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+batchGetViewResponse_httpStatus :: Lens.Lens' BatchGetViewResponse Prelude.Int+batchGetViewResponse_httpStatus = Lens.lens (\BatchGetViewResponse' {httpStatus} -> httpStatus) (\s@BatchGetViewResponse' {} a -> s {httpStatus = a} :: BatchGetViewResponse)++instance Prelude.NFData BatchGetViewResponse where+ rnf BatchGetViewResponse' {..} =+ Prelude.rnf errors+ `Prelude.seq` Prelude.rnf views+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/ResourceExplorer2/CreateIndex.hs view
@@ -0,0 +1,289 @@+{-# 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.ResourceExplorer2.CreateIndex+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Turns on Amazon Web Services Resource Explorer in the Amazon Web+-- Services Region in which you called this operation by creating an index.+-- Resource Explorer begins discovering the resources in this Region and+-- stores the details about the resources in the index so that they can be+-- queried by using the Search operation. You can create only one index in+-- a Region.+--+-- This operation creates only a /local/ index. To promote the local index+-- in one Amazon Web Services Region into the aggregator index for the+-- Amazon Web Services account, use the UpdateIndexType operation. For more+-- information, see+-- <https://docs.aws.amazon.com/resource-explorer/latest/userguide/manage-aggregator-region.html Turning on cross-Region search by creating an aggregator index>+-- in the /Amazon Web Services Resource Explorer User Guide/.+--+-- For more details about what happens when you turn on Resource Explorer+-- in an Amazon Web Services Region, see+-- <https://docs.aws.amazon.com/resource-explorer/latest/userguide/manage-service-activate.html Turn on Resource Explorer to index your resources in an Amazon Web Services Region>+-- in the /Amazon Web Services Resource Explorer User Guide/.+--+-- If this is the first Amazon Web Services Region in which you\'ve created+-- an index for Resource Explorer, then this operation also+-- <https://docs.aws.amazon.com/resource-explorer/latest/userguide/security_iam_service-linked-roles.html creates a service-linked role>+-- in your Amazon Web Services account that allows Resource Explorer to+-- enumerate your resources to populate the index.+--+-- - __Action__: @resource-explorer-2:CreateIndex@+--+-- __Resource__: The ARN of the index (as it will exist after the+-- operation completes) in the Amazon Web Services Region and account+-- in which you\'re trying to create the index. Use the wildcard+-- character (@*@) at the end of the string to match the eventual UUID.+-- For example, the following @Resource@ element restricts the role or+-- user to creating an index in only the @us-east-2@ Region of the+-- specified account.+--+-- @\"Resource\": \"arn:aws:resource-explorer-2:us-west-2:@/@\<account-id>@/@:index\/*\"@+--+-- Alternatively, you can use @\"Resource\": \"*\"@ to allow the role+-- or user to create an index in any Region.+--+-- - __Action__: @iam:CreateServiceLinkedRole@+--+-- __Resource__: No specific resource (*).+--+-- This permission is required only the first time you create an index+-- to turn on Resource Explorer in the account. Resource Explorer uses+-- this to create the+-- <https://docs.aws.amazon.com/resource-explorer/latest/userguide/security_iam_service-linked-roles.html service-linked role needed to index the resources in your account>.+-- Resource Explorer uses the same service-linked role for all+-- additional indexes you create afterwards.+module Amazonka.ResourceExplorer2.CreateIndex+ ( -- * Creating a Request+ CreateIndex (..),+ newCreateIndex,++ -- * Request Lenses+ createIndex_clientToken,+ createIndex_tags,++ -- * Destructuring the Response+ CreateIndexResponse (..),+ newCreateIndexResponse,++ -- * Response Lenses+ createIndexResponse_arn,+ createIndexResponse_createdAt,+ createIndexResponse_state,+ createIndexResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import Amazonka.ResourceExplorer2.Types+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateIndex' smart constructor.+data CreateIndex = CreateIndex'+ { -- | This value helps ensure idempotency. Resource Explorer uses this value+ -- to prevent the accidental creation of duplicate versions. We recommend+ -- that you generate a+ -- <https://wikipedia.org/wiki/Universally_unique_identifier UUID-type value>+ -- to ensure the uniqueness of your views.+ clientToken :: Prelude.Maybe Prelude.Text,+ -- | The specified tags are attached only to the index created in this Amazon+ -- Web Services Region. The tags aren\'t attached to any of the resources+ -- listed in the index.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text)+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateIndex' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'createIndex_clientToken' - This value helps ensure idempotency. Resource Explorer uses this value+-- to prevent the accidental creation of duplicate versions. We recommend+-- that you generate a+-- <https://wikipedia.org/wiki/Universally_unique_identifier UUID-type value>+-- to ensure the uniqueness of your views.+--+-- 'tags', 'createIndex_tags' - The specified tags are attached only to the index created in this Amazon+-- Web Services Region. The tags aren\'t attached to any of the resources+-- listed in the index.+newCreateIndex ::+ CreateIndex+newCreateIndex =+ CreateIndex'+ { clientToken = Prelude.Nothing,+ tags = Prelude.Nothing+ }++-- | This value helps ensure idempotency. Resource Explorer uses this value+-- to prevent the accidental creation of duplicate versions. We recommend+-- that you generate a+-- <https://wikipedia.org/wiki/Universally_unique_identifier UUID-type value>+-- to ensure the uniqueness of your views.+createIndex_clientToken :: Lens.Lens' CreateIndex (Prelude.Maybe Prelude.Text)+createIndex_clientToken = Lens.lens (\CreateIndex' {clientToken} -> clientToken) (\s@CreateIndex' {} a -> s {clientToken = a} :: CreateIndex)++-- | The specified tags are attached only to the index created in this Amazon+-- Web Services Region. The tags aren\'t attached to any of the resources+-- listed in the index.+createIndex_tags :: Lens.Lens' CreateIndex (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createIndex_tags = Lens.lens (\CreateIndex' {tags} -> tags) (\s@CreateIndex' {} a -> s {tags = a} :: CreateIndex) Prelude.. Lens.mapping Lens.coerced++instance Core.AWSRequest CreateIndex where+ type AWSResponse CreateIndex = CreateIndexResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateIndexResponse'+ Prelude.<$> (x Data..?> "Arn")+ Prelude.<*> (x Data..?> "CreatedAt")+ Prelude.<*> (x Data..?> "State")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateIndex where+ hashWithSalt _salt CreateIndex' {..} =+ _salt+ `Prelude.hashWithSalt` clientToken+ `Prelude.hashWithSalt` tags++instance Prelude.NFData CreateIndex where+ rnf CreateIndex' {..} =+ Prelude.rnf clientToken+ `Prelude.seq` Prelude.rnf tags++instance Data.ToHeaders CreateIndex where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateIndex where+ toJSON CreateIndex' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("ClientToken" Data..=) Prelude.<$> clientToken,+ ("Tags" Data..=) Prelude.<$> tags+ ]+ )++instance Data.ToPath CreateIndex where+ toPath = Prelude.const "/CreateIndex"++instance Data.ToQuery CreateIndex where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateIndexResponse' smart constructor.+data CreateIndexResponse = CreateIndexResponse'+ { -- | The ARN of the new local index for the Region. You can reference this+ -- ARN in IAM permission policies to authorize the following operations:+ -- DeleteIndex | GetIndex | UpdateIndexType | CreateView+ arn :: Prelude.Maybe Prelude.Text,+ -- | The date and timestamp when the index was created.+ createdAt :: Prelude.Maybe Data.ISO8601,+ -- | Indicates the current state of the index. You can check for changes to+ -- the state for asynchronous operations by calling the GetIndex operation.+ --+ -- The state can remain in the @CREATING@ or @UPDATING@ state for several+ -- hours as Resource Explorer discovers the information about your+ -- resources and populates the index.+ state :: Prelude.Maybe IndexState,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateIndexResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'createIndexResponse_arn' - The ARN of the new local index for the Region. You can reference this+-- ARN in IAM permission policies to authorize the following operations:+-- DeleteIndex | GetIndex | UpdateIndexType | CreateView+--+-- 'createdAt', 'createIndexResponse_createdAt' - The date and timestamp when the index was created.+--+-- 'state', 'createIndexResponse_state' - Indicates the current state of the index. You can check for changes to+-- the state for asynchronous operations by calling the GetIndex operation.+--+-- The state can remain in the @CREATING@ or @UPDATING@ state for several+-- hours as Resource Explorer discovers the information about your+-- resources and populates the index.+--+-- 'httpStatus', 'createIndexResponse_httpStatus' - The response's http status code.+newCreateIndexResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateIndexResponse+newCreateIndexResponse pHttpStatus_ =+ CreateIndexResponse'+ { arn = Prelude.Nothing,+ createdAt = Prelude.Nothing,+ state = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The ARN of the new local index for the Region. You can reference this+-- ARN in IAM permission policies to authorize the following operations:+-- DeleteIndex | GetIndex | UpdateIndexType | CreateView+createIndexResponse_arn :: Lens.Lens' CreateIndexResponse (Prelude.Maybe Prelude.Text)+createIndexResponse_arn = Lens.lens (\CreateIndexResponse' {arn} -> arn) (\s@CreateIndexResponse' {} a -> s {arn = a} :: CreateIndexResponse)++-- | The date and timestamp when the index was created.+createIndexResponse_createdAt :: Lens.Lens' CreateIndexResponse (Prelude.Maybe Prelude.UTCTime)+createIndexResponse_createdAt = Lens.lens (\CreateIndexResponse' {createdAt} -> createdAt) (\s@CreateIndexResponse' {} a -> s {createdAt = a} :: CreateIndexResponse) Prelude.. Lens.mapping Data._Time++-- | Indicates the current state of the index. You can check for changes to+-- the state for asynchronous operations by calling the GetIndex operation.+--+-- The state can remain in the @CREATING@ or @UPDATING@ state for several+-- hours as Resource Explorer discovers the information about your+-- resources and populates the index.+createIndexResponse_state :: Lens.Lens' CreateIndexResponse (Prelude.Maybe IndexState)+createIndexResponse_state = Lens.lens (\CreateIndexResponse' {state} -> state) (\s@CreateIndexResponse' {} a -> s {state = a} :: CreateIndexResponse)++-- | The response's http status code.+createIndexResponse_httpStatus :: Lens.Lens' CreateIndexResponse Prelude.Int+createIndexResponse_httpStatus = Lens.lens (\CreateIndexResponse' {httpStatus} -> httpStatus) (\s@CreateIndexResponse' {} a -> s {httpStatus = a} :: CreateIndexResponse)++instance Prelude.NFData CreateIndexResponse where+ rnf CreateIndexResponse' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf createdAt+ `Prelude.seq` Prelude.rnf state+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/ResourceExplorer2/CreateView.hs view
@@ -0,0 +1,319 @@+{-# 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.ResourceExplorer2.CreateView+-- 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 view that users can query by using the Search operation.+-- Results from queries that you make using this view include only+-- resources that match the view\'s @Filters@. For more information about+-- Amazon Web Services Resource Explorer views, see+-- <https://docs.aws.amazon.com/resource-explorer/latest/userguide/manage-views.html Managing views>+-- in the /Amazon Web Services Resource Explorer User Guide/.+--+-- Only the principals with an IAM identity-based policy that grants+-- @Allow@ to the @Search@ action on a @Resource@ with the+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+-- of this view can Search using views you create with this operation.+module Amazonka.ResourceExplorer2.CreateView+ ( -- * Creating a Request+ CreateView (..),+ newCreateView,++ -- * Request Lenses+ createView_clientToken,+ createView_filters,+ createView_includedProperties,+ createView_tags,+ createView_viewName,++ -- * Destructuring the Response+ CreateViewResponse (..),+ newCreateViewResponse,++ -- * Response Lenses+ createViewResponse_view,+ createViewResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import Amazonka.ResourceExplorer2.Types+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateView' smart constructor.+data CreateView = CreateView'+ { -- | This value helps ensure idempotency. Resource Explorer uses this value+ -- to prevent the accidental creation of duplicate versions. We recommend+ -- that you generate a+ -- <https://wikipedia.org/wiki/Universally_unique_identifier UUID-type value>+ -- to ensure the uniqueness of your views.+ clientToken :: Prelude.Maybe Prelude.Text,+ -- | An array of strings that specify which resources are included in the+ -- results of queries made using this view. When you use this view in a+ -- Search operation, the filter string is combined with the search\'s+ -- @QueryString@ parameter using a logical @AND@ operator.+ --+ -- For information about the supported syntax, see+ -- <https://docs.aws.amazon.com/resource-explorer/latest/userguide/using-search-query-syntax.html Search query reference for Resource Explorer>+ -- in the /Amazon Web Services Resource Explorer User Guide/.+ --+ -- This query string in the context of this operation supports only+ -- <https://docs.aws.amazon.com/resource-explorer/latest/userguide/using-search-query-syntax.html#query-syntax-filters filter prefixes>+ -- with optional+ -- <https://docs.aws.amazon.com/resource-explorer/latest/userguide/using-search-query-syntax.html#query-syntax-operators operators>.+ -- It doesn\'t support free-form text. For example, the string+ -- @region:us* service:ec2 -tag:stage=prod@ includes all Amazon EC2+ -- resources in any Amazon Web Services Region that begins with the letters+ -- @us@ and is /not/ tagged with a key @Stage@ that has the value @prod@.+ filters :: Prelude.Maybe (Data.Sensitive SearchFilter),+ -- | Specifies optional fields that you want included in search results from+ -- this view. It is a list of objects that each describe a field to+ -- include.+ --+ -- The default is an empty list, with no optional fields included in the+ -- results.+ includedProperties :: Prelude.Maybe [IncludedProperty],+ -- | Tag key and value pairs that are attached to the view.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The name of the new view. This name appears in the list of views in+ -- Resource Explorer.+ --+ -- The name must be no more than 64 characters long, and can include+ -- letters, digits, and the dash (-) character. The name must be unique+ -- within its Amazon Web Services Region.+ viewName :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateView' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'createView_clientToken' - This value helps ensure idempotency. Resource Explorer uses this value+-- to prevent the accidental creation of duplicate versions. We recommend+-- that you generate a+-- <https://wikipedia.org/wiki/Universally_unique_identifier UUID-type value>+-- to ensure the uniqueness of your views.+--+-- 'filters', 'createView_filters' - An array of strings that specify which resources are included in the+-- results of queries made using this view. When you use this view in a+-- Search operation, the filter string is combined with the search\'s+-- @QueryString@ parameter using a logical @AND@ operator.+--+-- For information about the supported syntax, see+-- <https://docs.aws.amazon.com/resource-explorer/latest/userguide/using-search-query-syntax.html Search query reference for Resource Explorer>+-- in the /Amazon Web Services Resource Explorer User Guide/.+--+-- This query string in the context of this operation supports only+-- <https://docs.aws.amazon.com/resource-explorer/latest/userguide/using-search-query-syntax.html#query-syntax-filters filter prefixes>+-- with optional+-- <https://docs.aws.amazon.com/resource-explorer/latest/userguide/using-search-query-syntax.html#query-syntax-operators operators>.+-- It doesn\'t support free-form text. For example, the string+-- @region:us* service:ec2 -tag:stage=prod@ includes all Amazon EC2+-- resources in any Amazon Web Services Region that begins with the letters+-- @us@ and is /not/ tagged with a key @Stage@ that has the value @prod@.+--+-- 'includedProperties', 'createView_includedProperties' - Specifies optional fields that you want included in search results from+-- this view. It is a list of objects that each describe a field to+-- include.+--+-- The default is an empty list, with no optional fields included in the+-- results.+--+-- 'tags', 'createView_tags' - Tag key and value pairs that are attached to the view.+--+-- 'viewName', 'createView_viewName' - The name of the new view. This name appears in the list of views in+-- Resource Explorer.+--+-- The name must be no more than 64 characters long, and can include+-- letters, digits, and the dash (-) character. The name must be unique+-- within its Amazon Web Services Region.+newCreateView ::+ -- | 'viewName'+ Prelude.Text ->+ CreateView+newCreateView pViewName_ =+ CreateView'+ { clientToken = Prelude.Nothing,+ filters = Prelude.Nothing,+ includedProperties = Prelude.Nothing,+ tags = Prelude.Nothing,+ viewName = pViewName_+ }++-- | This value helps ensure idempotency. Resource Explorer uses this value+-- to prevent the accidental creation of duplicate versions. We recommend+-- that you generate a+-- <https://wikipedia.org/wiki/Universally_unique_identifier UUID-type value>+-- to ensure the uniqueness of your views.+createView_clientToken :: Lens.Lens' CreateView (Prelude.Maybe Prelude.Text)+createView_clientToken = Lens.lens (\CreateView' {clientToken} -> clientToken) (\s@CreateView' {} a -> s {clientToken = a} :: CreateView)++-- | An array of strings that specify which resources are included in the+-- results of queries made using this view. When you use this view in a+-- Search operation, the filter string is combined with the search\'s+-- @QueryString@ parameter using a logical @AND@ operator.+--+-- For information about the supported syntax, see+-- <https://docs.aws.amazon.com/resource-explorer/latest/userguide/using-search-query-syntax.html Search query reference for Resource Explorer>+-- in the /Amazon Web Services Resource Explorer User Guide/.+--+-- This query string in the context of this operation supports only+-- <https://docs.aws.amazon.com/resource-explorer/latest/userguide/using-search-query-syntax.html#query-syntax-filters filter prefixes>+-- with optional+-- <https://docs.aws.amazon.com/resource-explorer/latest/userguide/using-search-query-syntax.html#query-syntax-operators operators>.+-- It doesn\'t support free-form text. For example, the string+-- @region:us* service:ec2 -tag:stage=prod@ includes all Amazon EC2+-- resources in any Amazon Web Services Region that begins with the letters+-- @us@ and is /not/ tagged with a key @Stage@ that has the value @prod@.+createView_filters :: Lens.Lens' CreateView (Prelude.Maybe SearchFilter)+createView_filters = Lens.lens (\CreateView' {filters} -> filters) (\s@CreateView' {} a -> s {filters = a} :: CreateView) Prelude.. Lens.mapping Data._Sensitive++-- | Specifies optional fields that you want included in search results from+-- this view. It is a list of objects that each describe a field to+-- include.+--+-- The default is an empty list, with no optional fields included in the+-- results.+createView_includedProperties :: Lens.Lens' CreateView (Prelude.Maybe [IncludedProperty])+createView_includedProperties = Lens.lens (\CreateView' {includedProperties} -> includedProperties) (\s@CreateView' {} a -> s {includedProperties = a} :: CreateView) Prelude.. Lens.mapping Lens.coerced++-- | Tag key and value pairs that are attached to the view.+createView_tags :: Lens.Lens' CreateView (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+createView_tags = Lens.lens (\CreateView' {tags} -> tags) (\s@CreateView' {} a -> s {tags = a} :: CreateView) Prelude.. Lens.mapping Lens.coerced++-- | The name of the new view. This name appears in the list of views in+-- Resource Explorer.+--+-- The name must be no more than 64 characters long, and can include+-- letters, digits, and the dash (-) character. The name must be unique+-- within its Amazon Web Services Region.+createView_viewName :: Lens.Lens' CreateView Prelude.Text+createView_viewName = Lens.lens (\CreateView' {viewName} -> viewName) (\s@CreateView' {} a -> s {viewName = a} :: CreateView)++instance Core.AWSRequest CreateView where+ type AWSResponse CreateView = CreateViewResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ CreateViewResponse'+ Prelude.<$> (x Data..?> "View")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable CreateView where+ hashWithSalt _salt CreateView' {..} =+ _salt+ `Prelude.hashWithSalt` clientToken+ `Prelude.hashWithSalt` filters+ `Prelude.hashWithSalt` includedProperties+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` viewName++instance Prelude.NFData CreateView where+ rnf CreateView' {..} =+ Prelude.rnf clientToken+ `Prelude.seq` Prelude.rnf filters+ `Prelude.seq` Prelude.rnf includedProperties+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf viewName++instance Data.ToHeaders CreateView where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON CreateView where+ toJSON CreateView' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("ClientToken" Data..=) Prelude.<$> clientToken,+ ("Filters" Data..=) Prelude.<$> filters,+ ("IncludedProperties" Data..=)+ Prelude.<$> includedProperties,+ ("Tags" Data..=) Prelude.<$> tags,+ Prelude.Just ("ViewName" Data..= viewName)+ ]+ )++instance Data.ToPath CreateView where+ toPath = Prelude.const "/CreateView"++instance Data.ToQuery CreateView where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateViewResponse' smart constructor.+data CreateViewResponse = CreateViewResponse'+ { -- | A structure that contains the details about the new view.+ view :: Prelude.Maybe View,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateViewResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'view', 'createViewResponse_view' - A structure that contains the details about the new view.+--+-- 'httpStatus', 'createViewResponse_httpStatus' - The response's http status code.+newCreateViewResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ CreateViewResponse+newCreateViewResponse pHttpStatus_ =+ CreateViewResponse'+ { view = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A structure that contains the details about the new view.+createViewResponse_view :: Lens.Lens' CreateViewResponse (Prelude.Maybe View)+createViewResponse_view = Lens.lens (\CreateViewResponse' {view} -> view) (\s@CreateViewResponse' {} a -> s {view = a} :: CreateViewResponse)++-- | The response's http status code.+createViewResponse_httpStatus :: Lens.Lens' CreateViewResponse Prelude.Int+createViewResponse_httpStatus = Lens.lens (\CreateViewResponse' {httpStatus} -> httpStatus) (\s@CreateViewResponse' {} a -> s {httpStatus = a} :: CreateViewResponse)++instance Prelude.NFData CreateViewResponse where+ rnf CreateViewResponse' {..} =+ Prelude.rnf view+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/ResourceExplorer2/DeleteIndex.hs view
@@ -0,0 +1,217 @@+{-# 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.ResourceExplorer2.DeleteIndex+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes the specified index and turns off Amazon Web Services Resource+-- Explorer in the specified Amazon Web Services Region. When you delete an+-- index, Resource Explorer stops discovering and indexing resources in+-- that Region. Resource Explorer also deletes all views in that Region.+-- These actions occur as asynchronous background tasks. You can check to+-- see when the actions are complete by using the GetIndex operation and+-- checking the @Status@ response value.+--+-- If the index you delete is the aggregator index for the Amazon Web+-- Services account, you must wait 24 hours before you can promote another+-- local index to be the aggregator index for the account. Users can\'t+-- perform account-wide searches using Resource Explorer until another+-- aggregator index is configured.+module Amazonka.ResourceExplorer2.DeleteIndex+ ( -- * Creating a Request+ DeleteIndex (..),+ newDeleteIndex,++ -- * Request Lenses+ deleteIndex_arn,++ -- * Destructuring the Response+ DeleteIndexResponse (..),+ newDeleteIndexResponse,++ -- * Response Lenses+ deleteIndexResponse_arn,+ deleteIndexResponse_lastUpdatedAt,+ deleteIndexResponse_state,+ deleteIndexResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import Amazonka.ResourceExplorer2.Types+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteIndex' smart constructor.+data DeleteIndex = DeleteIndex'+ { -- | The+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+ -- of the index that you want to delete.+ arn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteIndex' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'deleteIndex_arn' - The+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+-- of the index that you want to delete.+newDeleteIndex ::+ -- | 'arn'+ Prelude.Text ->+ DeleteIndex+newDeleteIndex pArn_ = DeleteIndex' {arn = pArn_}++-- | The+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+-- of the index that you want to delete.+deleteIndex_arn :: Lens.Lens' DeleteIndex Prelude.Text+deleteIndex_arn = Lens.lens (\DeleteIndex' {arn} -> arn) (\s@DeleteIndex' {} a -> s {arn = a} :: DeleteIndex)++instance Core.AWSRequest DeleteIndex where+ type AWSResponse DeleteIndex = DeleteIndexResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DeleteIndexResponse'+ Prelude.<$> (x Data..?> "Arn")+ Prelude.<*> (x Data..?> "LastUpdatedAt")+ Prelude.<*> (x Data..?> "State")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DeleteIndex where+ hashWithSalt _salt DeleteIndex' {..} =+ _salt `Prelude.hashWithSalt` arn++instance Prelude.NFData DeleteIndex where+ rnf DeleteIndex' {..} = Prelude.rnf arn++instance Data.ToHeaders DeleteIndex where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON DeleteIndex where+ toJSON DeleteIndex' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("Arn" Data..= arn)]+ )++instance Data.ToPath DeleteIndex where+ toPath = Prelude.const "/DeleteIndex"++instance Data.ToQuery DeleteIndex where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteIndexResponse' smart constructor.+data DeleteIndexResponse = DeleteIndexResponse'+ { -- | The+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+ -- of the index that you successfully started the deletion process.+ --+ -- This operation is asynchronous. To check its status, call the GetIndex+ -- operation.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The date and time when you last updated this index.+ lastUpdatedAt :: Prelude.Maybe Data.ISO8601,+ -- | Indicates the current state of the index.+ state :: Prelude.Maybe IndexState,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteIndexResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'deleteIndexResponse_arn' - The+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+-- of the index that you successfully started the deletion process.+--+-- This operation is asynchronous. To check its status, call the GetIndex+-- operation.+--+-- 'lastUpdatedAt', 'deleteIndexResponse_lastUpdatedAt' - The date and time when you last updated this index.+--+-- 'state', 'deleteIndexResponse_state' - Indicates the current state of the index.+--+-- 'httpStatus', 'deleteIndexResponse_httpStatus' - The response's http status code.+newDeleteIndexResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeleteIndexResponse+newDeleteIndexResponse pHttpStatus_ =+ DeleteIndexResponse'+ { arn = Prelude.Nothing,+ lastUpdatedAt = Prelude.Nothing,+ state = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+-- of the index that you successfully started the deletion process.+--+-- This operation is asynchronous. To check its status, call the GetIndex+-- operation.+deleteIndexResponse_arn :: Lens.Lens' DeleteIndexResponse (Prelude.Maybe Prelude.Text)+deleteIndexResponse_arn = Lens.lens (\DeleteIndexResponse' {arn} -> arn) (\s@DeleteIndexResponse' {} a -> s {arn = a} :: DeleteIndexResponse)++-- | The date and time when you last updated this index.+deleteIndexResponse_lastUpdatedAt :: Lens.Lens' DeleteIndexResponse (Prelude.Maybe Prelude.UTCTime)+deleteIndexResponse_lastUpdatedAt = Lens.lens (\DeleteIndexResponse' {lastUpdatedAt} -> lastUpdatedAt) (\s@DeleteIndexResponse' {} a -> s {lastUpdatedAt = a} :: DeleteIndexResponse) Prelude.. Lens.mapping Data._Time++-- | Indicates the current state of the index.+deleteIndexResponse_state :: Lens.Lens' DeleteIndexResponse (Prelude.Maybe IndexState)+deleteIndexResponse_state = Lens.lens (\DeleteIndexResponse' {state} -> state) (\s@DeleteIndexResponse' {} a -> s {state = a} :: DeleteIndexResponse)++-- | The response's http status code.+deleteIndexResponse_httpStatus :: Lens.Lens' DeleteIndexResponse Prelude.Int+deleteIndexResponse_httpStatus = Lens.lens (\DeleteIndexResponse' {httpStatus} -> httpStatus) (\s@DeleteIndexResponse' {} a -> s {httpStatus = a} :: DeleteIndexResponse)++instance Prelude.NFData DeleteIndexResponse where+ rnf DeleteIndexResponse' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf lastUpdatedAt+ `Prelude.seq` Prelude.rnf state+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/ResourceExplorer2/DeleteView.hs view
@@ -0,0 +1,178 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.ResourceExplorer2.DeleteView+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes the specified view.+--+-- If the specified view is the default view for its Amazon Web Services+-- Region, then all Search operations in that Region must explicitly+-- specify the view to use until you configure a new default by calling the+-- AssociateDefaultView operation.+module Amazonka.ResourceExplorer2.DeleteView+ ( -- * Creating a Request+ DeleteView (..),+ newDeleteView,++ -- * Request Lenses+ deleteView_viewArn,++ -- * Destructuring the Response+ DeleteViewResponse (..),+ newDeleteViewResponse,++ -- * Response Lenses+ deleteViewResponse_viewArn,+ deleteViewResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import Amazonka.ResourceExplorer2.Types+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteView' smart constructor.+data DeleteView = DeleteView'+ { -- | The+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+ -- of the view that you want to delete.+ viewArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteView' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'viewArn', 'deleteView_viewArn' - The+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+-- of the view that you want to delete.+newDeleteView ::+ -- | 'viewArn'+ Prelude.Text ->+ DeleteView+newDeleteView pViewArn_ =+ DeleteView' {viewArn = pViewArn_}++-- | The+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+-- of the view that you want to delete.+deleteView_viewArn :: Lens.Lens' DeleteView Prelude.Text+deleteView_viewArn = Lens.lens (\DeleteView' {viewArn} -> viewArn) (\s@DeleteView' {} a -> s {viewArn = a} :: DeleteView)++instance Core.AWSRequest DeleteView where+ type AWSResponse DeleteView = DeleteViewResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DeleteViewResponse'+ Prelude.<$> (x Data..?> "ViewArn")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DeleteView where+ hashWithSalt _salt DeleteView' {..} =+ _salt `Prelude.hashWithSalt` viewArn++instance Prelude.NFData DeleteView where+ rnf DeleteView' {..} = Prelude.rnf viewArn++instance Data.ToHeaders DeleteView where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON DeleteView where+ toJSON DeleteView' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("ViewArn" Data..= viewArn)]+ )++instance Data.ToPath DeleteView where+ toPath = Prelude.const "/DeleteView"++instance Data.ToQuery DeleteView where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteViewResponse' smart constructor.+data DeleteViewResponse = DeleteViewResponse'+ { -- | The+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+ -- of the view that you successfully deleted.+ viewArn :: 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 'DeleteViewResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'viewArn', 'deleteViewResponse_viewArn' - The+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+-- of the view that you successfully deleted.+--+-- 'httpStatus', 'deleteViewResponse_httpStatus' - The response's http status code.+newDeleteViewResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeleteViewResponse+newDeleteViewResponse pHttpStatus_ =+ DeleteViewResponse'+ { viewArn = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+-- of the view that you successfully deleted.+deleteViewResponse_viewArn :: Lens.Lens' DeleteViewResponse (Prelude.Maybe Prelude.Text)+deleteViewResponse_viewArn = Lens.lens (\DeleteViewResponse' {viewArn} -> viewArn) (\s@DeleteViewResponse' {} a -> s {viewArn = a} :: DeleteViewResponse)++-- | The response's http status code.+deleteViewResponse_httpStatus :: Lens.Lens' DeleteViewResponse Prelude.Int+deleteViewResponse_httpStatus = Lens.lens (\DeleteViewResponse' {httpStatus} -> httpStatus) (\s@DeleteViewResponse' {} a -> s {httpStatus = a} :: DeleteViewResponse)++instance Prelude.NFData DeleteViewResponse where+ rnf DeleteViewResponse' {..} =+ Prelude.rnf viewArn+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/ResourceExplorer2/DisassociateDefaultView.hs view
@@ -0,0 +1,120 @@+{-# 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.ResourceExplorer2.DisassociateDefaultView+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- After you call this operation, the affected Amazon Web Services Region+-- no longer has a default view. All Search operations in that Region must+-- explicitly specify a view or the operation fails. You can configure a+-- new default by calling the AssociateDefaultView operation.+--+-- If an Amazon Web Services Region doesn\'t have a default view+-- configured, then users must explicitly specify a view with every+-- @Search@ operation performed in that Region.+module Amazonka.ResourceExplorer2.DisassociateDefaultView+ ( -- * Creating a Request+ DisassociateDefaultView (..),+ newDisassociateDefaultView,++ -- * Destructuring the Response+ DisassociateDefaultViewResponse (..),+ newDisassociateDefaultViewResponse,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import Amazonka.ResourceExplorer2.Types+import qualified Amazonka.Response as Response++-- | /See:/ 'newDisassociateDefaultView' smart constructor.+data DisassociateDefaultView = DisassociateDefaultView'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DisassociateDefaultView' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newDisassociateDefaultView ::+ DisassociateDefaultView+newDisassociateDefaultView = DisassociateDefaultView'++instance Core.AWSRequest DisassociateDefaultView where+ type+ AWSResponse DisassociateDefaultView =+ DisassociateDefaultViewResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveNull+ DisassociateDefaultViewResponse'++instance Prelude.Hashable DisassociateDefaultView where+ hashWithSalt _salt _ =+ _salt `Prelude.hashWithSalt` ()++instance Prelude.NFData DisassociateDefaultView where+ rnf _ = ()++instance Data.ToHeaders DisassociateDefaultView where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON DisassociateDefaultView where+ toJSON = Prelude.const (Data.Object Prelude.mempty)++instance Data.ToPath DisassociateDefaultView where+ toPath = Prelude.const "/DisassociateDefaultView"++instance Data.ToQuery DisassociateDefaultView where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDisassociateDefaultViewResponse' smart constructor.+data DisassociateDefaultViewResponse = DisassociateDefaultViewResponse'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DisassociateDefaultViewResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newDisassociateDefaultViewResponse ::+ DisassociateDefaultViewResponse+newDisassociateDefaultViewResponse =+ DisassociateDefaultViewResponse'++instance+ Prelude.NFData+ DisassociateDefaultViewResponse+ where+ rnf _ = ()
+ gen/Amazonka/ResourceExplorer2/GetDefaultView.hs view
@@ -0,0 +1,154 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.ResourceExplorer2.GetDefaultView+-- 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 Amazon Resource Name (ARN) of the view that is the default+-- for the Amazon Web Services Region in which you call this operation. You+-- can then call GetView to retrieve the details of that view.+module Amazonka.ResourceExplorer2.GetDefaultView+ ( -- * Creating a Request+ GetDefaultView (..),+ newGetDefaultView,++ -- * Destructuring the Response+ GetDefaultViewResponse (..),+ newGetDefaultViewResponse,++ -- * Response Lenses+ getDefaultViewResponse_viewArn,+ getDefaultViewResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import Amazonka.ResourceExplorer2.Types+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetDefaultView' smart constructor.+data GetDefaultView = GetDefaultView'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetDefaultView' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newGetDefaultView ::+ GetDefaultView+newGetDefaultView = GetDefaultView'++instance Core.AWSRequest GetDefaultView where+ type+ AWSResponse GetDefaultView =+ GetDefaultViewResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ GetDefaultViewResponse'+ Prelude.<$> (x Data..?> "ViewArn")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable GetDefaultView where+ hashWithSalt _salt _ =+ _salt `Prelude.hashWithSalt` ()++instance Prelude.NFData GetDefaultView where+ rnf _ = ()++instance Data.ToHeaders GetDefaultView where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON GetDefaultView where+ toJSON = Prelude.const (Data.Object Prelude.mempty)++instance Data.ToPath GetDefaultView where+ toPath = Prelude.const "/GetDefaultView"++instance Data.ToQuery GetDefaultView where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newGetDefaultViewResponse' smart constructor.+data GetDefaultViewResponse = GetDefaultViewResponse'+ { -- | The+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+ -- of the view that is the current default for the Amazon Web Services+ -- Region in which you called this operation.+ viewArn :: 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 'GetDefaultViewResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'viewArn', 'getDefaultViewResponse_viewArn' - The+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+-- of the view that is the current default for the Amazon Web Services+-- Region in which you called this operation.+--+-- 'httpStatus', 'getDefaultViewResponse_httpStatus' - The response's http status code.+newGetDefaultViewResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetDefaultViewResponse+newGetDefaultViewResponse pHttpStatus_ =+ GetDefaultViewResponse'+ { viewArn = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+-- of the view that is the current default for the Amazon Web Services+-- Region in which you called this operation.+getDefaultViewResponse_viewArn :: Lens.Lens' GetDefaultViewResponse (Prelude.Maybe Prelude.Text)+getDefaultViewResponse_viewArn = Lens.lens (\GetDefaultViewResponse' {viewArn} -> viewArn) (\s@GetDefaultViewResponse' {} a -> s {viewArn = a} :: GetDefaultViewResponse)++-- | The response's http status code.+getDefaultViewResponse_httpStatus :: Lens.Lens' GetDefaultViewResponse Prelude.Int+getDefaultViewResponse_httpStatus = Lens.lens (\GetDefaultViewResponse' {httpStatus} -> httpStatus) (\s@GetDefaultViewResponse' {} a -> s {httpStatus = a} :: GetDefaultViewResponse)++instance Prelude.NFData GetDefaultViewResponse where+ rnf GetDefaultViewResponse' {..} =+ Prelude.rnf viewArn+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/ResourceExplorer2/GetIndex.hs view
@@ -0,0 +1,265 @@+{-# 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.ResourceExplorer2.GetIndex+-- 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 details about the Amazon Web Services Resource Explorer index+-- in the Amazon Web Services Region in which you invoked the operation.+module Amazonka.ResourceExplorer2.GetIndex+ ( -- * Creating a Request+ GetIndex (..),+ newGetIndex,++ -- * Destructuring the Response+ GetIndexResponse (..),+ newGetIndexResponse,++ -- * Response Lenses+ getIndexResponse_arn,+ getIndexResponse_createdAt,+ getIndexResponse_lastUpdatedAt,+ getIndexResponse_replicatingFrom,+ getIndexResponse_replicatingTo,+ getIndexResponse_state,+ getIndexResponse_tags,+ getIndexResponse_type,+ getIndexResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import Amazonka.ResourceExplorer2.Types+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetIndex' smart constructor.+data GetIndex = GetIndex'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetIndex' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newGetIndex ::+ GetIndex+newGetIndex = GetIndex'++instance Core.AWSRequest GetIndex where+ type AWSResponse GetIndex = GetIndexResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ GetIndexResponse'+ Prelude.<$> (x Data..?> "Arn")+ Prelude.<*> (x Data..?> "CreatedAt")+ Prelude.<*> (x Data..?> "LastUpdatedAt")+ Prelude.<*> ( x+ Data..?> "ReplicatingFrom"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "ReplicatingTo" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "State")+ Prelude.<*> (x Data..?> "Tags" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "Type")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable GetIndex where+ hashWithSalt _salt _ =+ _salt `Prelude.hashWithSalt` ()++instance Prelude.NFData GetIndex where+ rnf _ = ()++instance Data.ToHeaders GetIndex where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON GetIndex where+ toJSON = Prelude.const (Data.Object Prelude.mempty)++instance Data.ToPath GetIndex where+ toPath = Prelude.const "/GetIndex"++instance Data.ToQuery GetIndex where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newGetIndexResponse' smart constructor.+data GetIndexResponse = GetIndexResponse'+ { -- | The+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+ -- of the index.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The date and time when the index was originally created.+ createdAt :: Prelude.Maybe Data.ISO8601,+ -- | The date and time when the index was last updated.+ lastUpdatedAt :: Prelude.Maybe Data.ISO8601,+ -- | This response value is present only if this index is @Type=AGGREGATOR@.+ --+ -- A list of the Amazon Web Services Regions that replicate their content+ -- to the index in this Region.+ replicatingFrom :: Prelude.Maybe [Prelude.Text],+ -- | This response value is present only if this index is @Type=LOCAL@.+ --+ -- The Amazon Web Services Region that contains the aggregator index, if+ -- one exists. If an aggregator index does exist then the Region in which+ -- you called this operation replicates its index information to the Region+ -- specified in this response value.+ replicatingTo :: Prelude.Maybe [Prelude.Text],+ -- | The current state of the index in this Amazon Web Services Region.+ state :: Prelude.Maybe IndexState,+ -- | Tag key and value pairs that are attached to the index.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The type of the index in this Region. For information about the+ -- aggregator index and how it differs from a local index, see+ -- <https://docs.aws.amazon.com/resource-explorer/latest/userguide/manage-aggregator-region.html Turning on cross-Region search by creating an aggregator index>.+ type' :: Prelude.Maybe IndexType,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetIndexResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'getIndexResponse_arn' - The+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+-- of the index.+--+-- 'createdAt', 'getIndexResponse_createdAt' - The date and time when the index was originally created.+--+-- 'lastUpdatedAt', 'getIndexResponse_lastUpdatedAt' - The date and time when the index was last updated.+--+-- 'replicatingFrom', 'getIndexResponse_replicatingFrom' - This response value is present only if this index is @Type=AGGREGATOR@.+--+-- A list of the Amazon Web Services Regions that replicate their content+-- to the index in this Region.+--+-- 'replicatingTo', 'getIndexResponse_replicatingTo' - This response value is present only if this index is @Type=LOCAL@.+--+-- The Amazon Web Services Region that contains the aggregator index, if+-- one exists. If an aggregator index does exist then the Region in which+-- you called this operation replicates its index information to the Region+-- specified in this response value.+--+-- 'state', 'getIndexResponse_state' - The current state of the index in this Amazon Web Services Region.+--+-- 'tags', 'getIndexResponse_tags' - Tag key and value pairs that are attached to the index.+--+-- 'type'', 'getIndexResponse_type' - The type of the index in this Region. For information about the+-- aggregator index and how it differs from a local index, see+-- <https://docs.aws.amazon.com/resource-explorer/latest/userguide/manage-aggregator-region.html Turning on cross-Region search by creating an aggregator index>.+--+-- 'httpStatus', 'getIndexResponse_httpStatus' - The response's http status code.+newGetIndexResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetIndexResponse+newGetIndexResponse pHttpStatus_ =+ GetIndexResponse'+ { arn = Prelude.Nothing,+ createdAt = Prelude.Nothing,+ lastUpdatedAt = Prelude.Nothing,+ replicatingFrom = Prelude.Nothing,+ replicatingTo = Prelude.Nothing,+ state = Prelude.Nothing,+ tags = Prelude.Nothing,+ type' = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+-- of the index.+getIndexResponse_arn :: Lens.Lens' GetIndexResponse (Prelude.Maybe Prelude.Text)+getIndexResponse_arn = Lens.lens (\GetIndexResponse' {arn} -> arn) (\s@GetIndexResponse' {} a -> s {arn = a} :: GetIndexResponse)++-- | The date and time when the index was originally created.+getIndexResponse_createdAt :: Lens.Lens' GetIndexResponse (Prelude.Maybe Prelude.UTCTime)+getIndexResponse_createdAt = Lens.lens (\GetIndexResponse' {createdAt} -> createdAt) (\s@GetIndexResponse' {} a -> s {createdAt = a} :: GetIndexResponse) Prelude.. Lens.mapping Data._Time++-- | The date and time when the index was last updated.+getIndexResponse_lastUpdatedAt :: Lens.Lens' GetIndexResponse (Prelude.Maybe Prelude.UTCTime)+getIndexResponse_lastUpdatedAt = Lens.lens (\GetIndexResponse' {lastUpdatedAt} -> lastUpdatedAt) (\s@GetIndexResponse' {} a -> s {lastUpdatedAt = a} :: GetIndexResponse) Prelude.. Lens.mapping Data._Time++-- | This response value is present only if this index is @Type=AGGREGATOR@.+--+-- A list of the Amazon Web Services Regions that replicate their content+-- to the index in this Region.+getIndexResponse_replicatingFrom :: Lens.Lens' GetIndexResponse (Prelude.Maybe [Prelude.Text])+getIndexResponse_replicatingFrom = Lens.lens (\GetIndexResponse' {replicatingFrom} -> replicatingFrom) (\s@GetIndexResponse' {} a -> s {replicatingFrom = a} :: GetIndexResponse) Prelude.. Lens.mapping Lens.coerced++-- | This response value is present only if this index is @Type=LOCAL@.+--+-- The Amazon Web Services Region that contains the aggregator index, if+-- one exists. If an aggregator index does exist then the Region in which+-- you called this operation replicates its index information to the Region+-- specified in this response value.+getIndexResponse_replicatingTo :: Lens.Lens' GetIndexResponse (Prelude.Maybe [Prelude.Text])+getIndexResponse_replicatingTo = Lens.lens (\GetIndexResponse' {replicatingTo} -> replicatingTo) (\s@GetIndexResponse' {} a -> s {replicatingTo = a} :: GetIndexResponse) Prelude.. Lens.mapping Lens.coerced++-- | The current state of the index in this Amazon Web Services Region.+getIndexResponse_state :: Lens.Lens' GetIndexResponse (Prelude.Maybe IndexState)+getIndexResponse_state = Lens.lens (\GetIndexResponse' {state} -> state) (\s@GetIndexResponse' {} a -> s {state = a} :: GetIndexResponse)++-- | Tag key and value pairs that are attached to the index.+getIndexResponse_tags :: Lens.Lens' GetIndexResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+getIndexResponse_tags = Lens.lens (\GetIndexResponse' {tags} -> tags) (\s@GetIndexResponse' {} a -> s {tags = a} :: GetIndexResponse) Prelude.. Lens.mapping Lens.coerced++-- | The type of the index in this Region. For information about the+-- aggregator index and how it differs from a local index, see+-- <https://docs.aws.amazon.com/resource-explorer/latest/userguide/manage-aggregator-region.html Turning on cross-Region search by creating an aggregator index>.+getIndexResponse_type :: Lens.Lens' GetIndexResponse (Prelude.Maybe IndexType)+getIndexResponse_type = Lens.lens (\GetIndexResponse' {type'} -> type') (\s@GetIndexResponse' {} a -> s {type' = a} :: GetIndexResponse)++-- | The response's http status code.+getIndexResponse_httpStatus :: Lens.Lens' GetIndexResponse Prelude.Int+getIndexResponse_httpStatus = Lens.lens (\GetIndexResponse' {httpStatus} -> httpStatus) (\s@GetIndexResponse' {} a -> s {httpStatus = a} :: GetIndexResponse)++instance Prelude.NFData GetIndexResponse where+ rnf GetIndexResponse' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf createdAt+ `Prelude.seq` Prelude.rnf lastUpdatedAt+ `Prelude.seq` Prelude.rnf replicatingFrom+ `Prelude.seq` Prelude.rnf replicatingTo+ `Prelude.seq` Prelude.rnf state+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf type'+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/ResourceExplorer2/GetView.hs view
@@ -0,0 +1,178 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.ResourceExplorer2.GetView+-- 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 details of the specified view.+module Amazonka.ResourceExplorer2.GetView+ ( -- * Creating a Request+ GetView (..),+ newGetView,++ -- * Request Lenses+ getView_viewArn,++ -- * Destructuring the Response+ GetViewResponse (..),+ newGetViewResponse,++ -- * Response Lenses+ getViewResponse_tags,+ getViewResponse_view,+ getViewResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import Amazonka.ResourceExplorer2.Types+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetView' smart constructor.+data GetView = GetView'+ { -- | The+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+ -- of the view that you want information about.+ viewArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetView' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'viewArn', 'getView_viewArn' - The+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+-- of the view that you want information about.+newGetView ::+ -- | 'viewArn'+ Prelude.Text ->+ GetView+newGetView pViewArn_ = GetView' {viewArn = pViewArn_}++-- | The+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+-- of the view that you want information about.+getView_viewArn :: Lens.Lens' GetView Prelude.Text+getView_viewArn = Lens.lens (\GetView' {viewArn} -> viewArn) (\s@GetView' {} a -> s {viewArn = a} :: GetView)++instance Core.AWSRequest GetView where+ type AWSResponse GetView = GetViewResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ GetViewResponse'+ Prelude.<$> (x Data..?> "Tags" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "View")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable GetView where+ hashWithSalt _salt GetView' {..} =+ _salt `Prelude.hashWithSalt` viewArn++instance Prelude.NFData GetView where+ rnf GetView' {..} = Prelude.rnf viewArn++instance Data.ToHeaders GetView where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON GetView where+ toJSON GetView' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("ViewArn" Data..= viewArn)]+ )++instance Data.ToPath GetView where+ toPath = Prelude.const "/GetView"++instance Data.ToQuery GetView where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newGetViewResponse' smart constructor.+data GetViewResponse = GetViewResponse'+ { -- | Tag key and value pairs that are attached to the view.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | A structure that contains the details for the requested view.+ view :: Prelude.Maybe View,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetViewResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'tags', 'getViewResponse_tags' - Tag key and value pairs that are attached to the view.+--+-- 'view', 'getViewResponse_view' - A structure that contains the details for the requested view.+--+-- 'httpStatus', 'getViewResponse_httpStatus' - The response's http status code.+newGetViewResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetViewResponse+newGetViewResponse pHttpStatus_ =+ GetViewResponse'+ { tags = Prelude.Nothing,+ view = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Tag key and value pairs that are attached to the view.+getViewResponse_tags :: Lens.Lens' GetViewResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+getViewResponse_tags = Lens.lens (\GetViewResponse' {tags} -> tags) (\s@GetViewResponse' {} a -> s {tags = a} :: GetViewResponse) Prelude.. Lens.mapping Lens.coerced++-- | A structure that contains the details for the requested view.+getViewResponse_view :: Lens.Lens' GetViewResponse (Prelude.Maybe View)+getViewResponse_view = Lens.lens (\GetViewResponse' {view} -> view) (\s@GetViewResponse' {} a -> s {view = a} :: GetViewResponse)++-- | The response's http status code.+getViewResponse_httpStatus :: Lens.Lens' GetViewResponse Prelude.Int+getViewResponse_httpStatus = Lens.lens (\GetViewResponse' {httpStatus} -> httpStatus) (\s@GetViewResponse' {} a -> s {httpStatus = a} :: GetViewResponse)++instance Prelude.NFData GetViewResponse where+ rnf GetViewResponse' {..} =+ Prelude.rnf tags+ `Prelude.seq` Prelude.rnf view+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/ResourceExplorer2/Lens.hs view
@@ -0,0 +1,224 @@+{-# 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.ResourceExplorer2.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.ResourceExplorer2.Lens+ ( -- * Operations++ -- ** AssociateDefaultView+ associateDefaultView_viewArn,+ associateDefaultViewResponse_viewArn,+ associateDefaultViewResponse_httpStatus,++ -- ** BatchGetView+ batchGetView_viewArns,+ batchGetViewResponse_errors,+ batchGetViewResponse_views,+ batchGetViewResponse_httpStatus,++ -- ** CreateIndex+ createIndex_clientToken,+ createIndex_tags,+ createIndexResponse_arn,+ createIndexResponse_createdAt,+ createIndexResponse_state,+ createIndexResponse_httpStatus,++ -- ** CreateView+ createView_clientToken,+ createView_filters,+ createView_includedProperties,+ createView_tags,+ createView_viewName,+ createViewResponse_view,+ createViewResponse_httpStatus,++ -- ** DeleteIndex+ deleteIndex_arn,+ deleteIndexResponse_arn,+ deleteIndexResponse_lastUpdatedAt,+ deleteIndexResponse_state,+ deleteIndexResponse_httpStatus,++ -- ** DeleteView+ deleteView_viewArn,+ deleteViewResponse_viewArn,+ deleteViewResponse_httpStatus,++ -- ** DisassociateDefaultView++ -- ** GetDefaultView+ getDefaultViewResponse_viewArn,+ getDefaultViewResponse_httpStatus,++ -- ** GetIndex+ getIndexResponse_arn,+ getIndexResponse_createdAt,+ getIndexResponse_lastUpdatedAt,+ getIndexResponse_replicatingFrom,+ getIndexResponse_replicatingTo,+ getIndexResponse_state,+ getIndexResponse_tags,+ getIndexResponse_type,+ getIndexResponse_httpStatus,++ -- ** GetView+ getView_viewArn,+ getViewResponse_tags,+ getViewResponse_view,+ getViewResponse_httpStatus,++ -- ** ListIndexes+ listIndexes_maxResults,+ listIndexes_nextToken,+ listIndexes_regions,+ listIndexes_type,+ listIndexesResponse_indexes,+ listIndexesResponse_nextToken,+ listIndexesResponse_httpStatus,++ -- ** ListSupportedResourceTypes+ listSupportedResourceTypes_maxResults,+ listSupportedResourceTypes_nextToken,+ listSupportedResourceTypesResponse_nextToken,+ listSupportedResourceTypesResponse_resourceTypes,+ listSupportedResourceTypesResponse_httpStatus,++ -- ** ListTagsForResource+ listTagsForResource_resourceArn,+ listTagsForResourceResponse_tags,+ listTagsForResourceResponse_httpStatus,++ -- ** ListViews+ listViews_maxResults,+ listViews_nextToken,+ listViewsResponse_nextToken,+ listViewsResponse_views,+ listViewsResponse_httpStatus,++ -- ** Search+ search_maxResults,+ search_nextToken,+ search_viewArn,+ search_queryString,+ searchResponse_count,+ searchResponse_nextToken,+ searchResponse_resources,+ searchResponse_viewArn,+ searchResponse_httpStatus,++ -- ** TagResource+ tagResource_tags,+ tagResource_resourceArn,+ tagResourceResponse_httpStatus,++ -- ** UntagResource+ untagResource_resourceArn,+ untagResource_tagKeys,+ untagResourceResponse_httpStatus,++ -- ** UpdateIndexType+ updateIndexType_arn,+ updateIndexType_type,+ updateIndexTypeResponse_arn,+ updateIndexTypeResponse_lastUpdatedAt,+ updateIndexTypeResponse_state,+ updateIndexTypeResponse_type,+ updateIndexTypeResponse_httpStatus,++ -- ** UpdateView+ updateView_filters,+ updateView_includedProperties,+ updateView_viewArn,+ updateViewResponse_view,+ updateViewResponse_httpStatus,++ -- * Types++ -- ** BatchGetViewError+ batchGetViewError_errorMessage,+ batchGetViewError_viewArn,++ -- ** Document++ -- ** IncludedProperty+ includedProperty_name,++ -- ** Index+ index_arn,+ index_region,+ index_type,++ -- ** Resource+ resource_arn,+ resource_lastReportedAt,+ resource_owningAccountId,+ resource_properties,+ resource_region,+ resource_resourceType,+ resource_service,++ -- ** ResourceCount+ resourceCount_complete,+ resourceCount_totalResources,++ -- ** ResourceProperty+ resourceProperty_data,+ resourceProperty_lastReportedAt,+ resourceProperty_name,++ -- ** SearchFilter+ searchFilter_filterString,++ -- ** SupportedResourceType+ supportedResourceType_resourceType,+ supportedResourceType_service,++ -- ** View+ view_filters,+ view_includedProperties,+ view_lastUpdatedAt,+ view_owner,+ view_scope,+ view_viewArn,+ )+where++import Amazonka.ResourceExplorer2.AssociateDefaultView+import Amazonka.ResourceExplorer2.BatchGetView+import Amazonka.ResourceExplorer2.CreateIndex+import Amazonka.ResourceExplorer2.CreateView+import Amazonka.ResourceExplorer2.DeleteIndex+import Amazonka.ResourceExplorer2.DeleteView+import Amazonka.ResourceExplorer2.DisassociateDefaultView+import Amazonka.ResourceExplorer2.GetDefaultView+import Amazonka.ResourceExplorer2.GetIndex+import Amazonka.ResourceExplorer2.GetView+import Amazonka.ResourceExplorer2.ListIndexes+import Amazonka.ResourceExplorer2.ListSupportedResourceTypes+import Amazonka.ResourceExplorer2.ListTagsForResource+import Amazonka.ResourceExplorer2.ListViews+import Amazonka.ResourceExplorer2.Search+import Amazonka.ResourceExplorer2.TagResource+import Amazonka.ResourceExplorer2.Types.BatchGetViewError+import Amazonka.ResourceExplorer2.Types.Document+import Amazonka.ResourceExplorer2.Types.IncludedProperty+import Amazonka.ResourceExplorer2.Types.Index+import Amazonka.ResourceExplorer2.Types.Resource+import Amazonka.ResourceExplorer2.Types.ResourceCount+import Amazonka.ResourceExplorer2.Types.ResourceProperty+import Amazonka.ResourceExplorer2.Types.SearchFilter+import Amazonka.ResourceExplorer2.Types.SupportedResourceType+import Amazonka.ResourceExplorer2.Types.View+import Amazonka.ResourceExplorer2.UntagResource+import Amazonka.ResourceExplorer2.UpdateIndexType+import Amazonka.ResourceExplorer2.UpdateView
+ gen/Amazonka/ResourceExplorer2/ListIndexes.hs view
@@ -0,0 +1,307 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.ResourceExplorer2.ListIndexes+-- 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 a list of all of the indexes in Amazon Web Services Regions+-- that are currently collecting resource information for Amazon Web+-- Services Resource Explorer.+--+-- This operation returns paginated results.+module Amazonka.ResourceExplorer2.ListIndexes+ ( -- * Creating a Request+ ListIndexes (..),+ newListIndexes,++ -- * Request Lenses+ listIndexes_maxResults,+ listIndexes_nextToken,+ listIndexes_regions,+ listIndexes_type,++ -- * Destructuring the Response+ ListIndexesResponse (..),+ newListIndexesResponse,++ -- * Response Lenses+ listIndexesResponse_indexes,+ listIndexesResponse_nextToken,+ listIndexesResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import Amazonka.ResourceExplorer2.Types+import qualified Amazonka.Response as Response++-- | /See:/ 'newListIndexes' smart constructor.+data ListIndexes = ListIndexes'+ { -- | The maximum number of results that you want included on each page of the+ -- response. If you do not include this parameter, it defaults to a value+ -- appropriate to the operation. If additional items exist beyond those+ -- included in the current response, the @NextToken@ response element is+ -- present and has a value (is not null). Include that value as the+ -- @NextToken@ request parameter in the next call to the operation to get+ -- the next part of the results.+ --+ -- An API operation can return fewer results than the maximum even when+ -- there are more results available. You should check @NextToken@ after+ -- every operation to ensure that you receive all of the results.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | The parameter for receiving additional results if you receive a+ -- @NextToken@ response in a previous request. A @NextToken@ response+ -- indicates that more output is available. Set this parameter to the value+ -- of the previous call\'s @NextToken@ response to indicate where the+ -- output should continue from.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | If specified, limits the response to only information about the index in+ -- the specified list of Amazon Web Services Regions.+ regions :: Prelude.Maybe [Prelude.Text],+ -- | If specified, limits the output to only indexes of the specified Type,+ -- either @LOCAL@ or @AGGREGATOR@.+ --+ -- Use this option to discover the aggregator index for your account.+ type' :: Prelude.Maybe IndexType+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListIndexes' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'listIndexes_maxResults' - The maximum number of results that you want included on each page of the+-- response. If you do not include this parameter, it defaults to a value+-- appropriate to the operation. If additional items exist beyond those+-- included in the current response, the @NextToken@ response element is+-- present and has a value (is not null). Include that value as the+-- @NextToken@ request parameter in the next call to the operation to get+-- the next part of the results.+--+-- An API operation can return fewer results than the maximum even when+-- there are more results available. You should check @NextToken@ after+-- every operation to ensure that you receive all of the results.+--+-- 'nextToken', 'listIndexes_nextToken' - The parameter for receiving additional results if you receive a+-- @NextToken@ response in a previous request. A @NextToken@ response+-- indicates that more output is available. Set this parameter to the value+-- of the previous call\'s @NextToken@ response to indicate where the+-- output should continue from.+--+-- 'regions', 'listIndexes_regions' - If specified, limits the response to only information about the index in+-- the specified list of Amazon Web Services Regions.+--+-- 'type'', 'listIndexes_type' - If specified, limits the output to only indexes of the specified Type,+-- either @LOCAL@ or @AGGREGATOR@.+--+-- Use this option to discover the aggregator index for your account.+newListIndexes ::+ ListIndexes+newListIndexes =+ ListIndexes'+ { maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ regions = Prelude.Nothing,+ type' = Prelude.Nothing+ }++-- | The maximum number of results that you want included on each page of the+-- response. If you do not include this parameter, it defaults to a value+-- appropriate to the operation. If additional items exist beyond those+-- included in the current response, the @NextToken@ response element is+-- present and has a value (is not null). Include that value as the+-- @NextToken@ request parameter in the next call to the operation to get+-- the next part of the results.+--+-- An API operation can return fewer results than the maximum even when+-- there are more results available. You should check @NextToken@ after+-- every operation to ensure that you receive all of the results.+listIndexes_maxResults :: Lens.Lens' ListIndexes (Prelude.Maybe Prelude.Natural)+listIndexes_maxResults = Lens.lens (\ListIndexes' {maxResults} -> maxResults) (\s@ListIndexes' {} a -> s {maxResults = a} :: ListIndexes)++-- | The parameter for receiving additional results if you receive a+-- @NextToken@ response in a previous request. A @NextToken@ response+-- indicates that more output is available. Set this parameter to the value+-- of the previous call\'s @NextToken@ response to indicate where the+-- output should continue from.+listIndexes_nextToken :: Lens.Lens' ListIndexes (Prelude.Maybe Prelude.Text)+listIndexes_nextToken = Lens.lens (\ListIndexes' {nextToken} -> nextToken) (\s@ListIndexes' {} a -> s {nextToken = a} :: ListIndexes)++-- | If specified, limits the response to only information about the index in+-- the specified list of Amazon Web Services Regions.+listIndexes_regions :: Lens.Lens' ListIndexes (Prelude.Maybe [Prelude.Text])+listIndexes_regions = Lens.lens (\ListIndexes' {regions} -> regions) (\s@ListIndexes' {} a -> s {regions = a} :: ListIndexes) Prelude.. Lens.mapping Lens.coerced++-- | If specified, limits the output to only indexes of the specified Type,+-- either @LOCAL@ or @AGGREGATOR@.+--+-- Use this option to discover the aggregator index for your account.+listIndexes_type :: Lens.Lens' ListIndexes (Prelude.Maybe IndexType)+listIndexes_type = Lens.lens (\ListIndexes' {type'} -> type') (\s@ListIndexes' {} a -> s {type' = a} :: ListIndexes)++instance Core.AWSPager ListIndexes where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listIndexesResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? listIndexesResponse_indexes+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listIndexes_nextToken+ Lens..~ rs+ Lens.^? listIndexesResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ListIndexes where+ type AWSResponse ListIndexes = ListIndexesResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListIndexesResponse'+ Prelude.<$> (x Data..?> "Indexes" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "NextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListIndexes where+ hashWithSalt _salt ListIndexes' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` regions+ `Prelude.hashWithSalt` type'++instance Prelude.NFData ListIndexes where+ rnf ListIndexes' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf regions+ `Prelude.seq` Prelude.rnf type'++instance Data.ToHeaders ListIndexes where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListIndexes where+ toJSON ListIndexes' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("MaxResults" Data..=) Prelude.<$> maxResults,+ ("NextToken" Data..=) Prelude.<$> nextToken,+ ("Regions" Data..=) Prelude.<$> regions,+ ("Type" Data..=) Prelude.<$> type'+ ]+ )++instance Data.ToPath ListIndexes where+ toPath = Prelude.const "/ListIndexes"++instance Data.ToQuery ListIndexes where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListIndexesResponse' smart constructor.+data ListIndexesResponse = ListIndexesResponse'+ { -- | A structure that contains the details and status of each index.+ indexes :: Prelude.Maybe [Index],+ -- | If present, indicates that more output is available than is included in+ -- the current response. Use this value in the @NextToken@ request+ -- parameter in a subsequent call to the operation to get the next part of+ -- the output. You should repeat this until the @NextToken@ response+ -- element comes back as @null@.+ 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 'ListIndexesResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'indexes', 'listIndexesResponse_indexes' - A structure that contains the details and status of each index.+--+-- 'nextToken', 'listIndexesResponse_nextToken' - If present, indicates that more output is available than is included in+-- the current response. Use this value in the @NextToken@ request+-- parameter in a subsequent call to the operation to get the next part of+-- the output. You should repeat this until the @NextToken@ response+-- element comes back as @null@.+--+-- 'httpStatus', 'listIndexesResponse_httpStatus' - The response's http status code.+newListIndexesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListIndexesResponse+newListIndexesResponse pHttpStatus_ =+ ListIndexesResponse'+ { indexes = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | A structure that contains the details and status of each index.+listIndexesResponse_indexes :: Lens.Lens' ListIndexesResponse (Prelude.Maybe [Index])+listIndexesResponse_indexes = Lens.lens (\ListIndexesResponse' {indexes} -> indexes) (\s@ListIndexesResponse' {} a -> s {indexes = a} :: ListIndexesResponse) Prelude.. Lens.mapping Lens.coerced++-- | If present, indicates that more output is available than is included in+-- the current response. Use this value in the @NextToken@ request+-- parameter in a subsequent call to the operation to get the next part of+-- the output. You should repeat this until the @NextToken@ response+-- element comes back as @null@.+listIndexesResponse_nextToken :: Lens.Lens' ListIndexesResponse (Prelude.Maybe Prelude.Text)+listIndexesResponse_nextToken = Lens.lens (\ListIndexesResponse' {nextToken} -> nextToken) (\s@ListIndexesResponse' {} a -> s {nextToken = a} :: ListIndexesResponse)++-- | The response's http status code.+listIndexesResponse_httpStatus :: Lens.Lens' ListIndexesResponse Prelude.Int+listIndexesResponse_httpStatus = Lens.lens (\ListIndexesResponse' {httpStatus} -> httpStatus) (\s@ListIndexesResponse' {} a -> s {httpStatus = a} :: ListIndexesResponse)++instance Prelude.NFData ListIndexesResponse where+ rnf ListIndexesResponse' {..} =+ Prelude.rnf indexes+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/ResourceExplorer2/ListSupportedResourceTypes.hs view
@@ -0,0 +1,275 @@+{-# 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.ResourceExplorer2.ListSupportedResourceTypes+-- 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 a list of all resource types currently supported by Amazon Web+-- Services Resource Explorer.+--+-- This operation returns paginated results.+module Amazonka.ResourceExplorer2.ListSupportedResourceTypes+ ( -- * Creating a Request+ ListSupportedResourceTypes (..),+ newListSupportedResourceTypes,++ -- * Request Lenses+ listSupportedResourceTypes_maxResults,+ listSupportedResourceTypes_nextToken,++ -- * Destructuring the Response+ ListSupportedResourceTypesResponse (..),+ newListSupportedResourceTypesResponse,++ -- * Response Lenses+ listSupportedResourceTypesResponse_nextToken,+ listSupportedResourceTypesResponse_resourceTypes,+ listSupportedResourceTypesResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import Amazonka.ResourceExplorer2.Types+import qualified Amazonka.Response as Response++-- | /See:/ 'newListSupportedResourceTypes' smart constructor.+data ListSupportedResourceTypes = ListSupportedResourceTypes'+ { -- | The maximum number of results that you want included on each page of the+ -- response. If you do not include this parameter, it defaults to a value+ -- appropriate to the operation. If additional items exist beyond those+ -- included in the current response, the @NextToken@ response element is+ -- present and has a value (is not null). Include that value as the+ -- @NextToken@ request parameter in the next call to the operation to get+ -- the next part of the results.+ --+ -- An API operation can return fewer results than the maximum even when+ -- there are more results available. You should check @NextToken@ after+ -- every operation to ensure that you receive all of the results.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | The parameter for receiving additional results if you receive a+ -- @NextToken@ response in a previous request. A @NextToken@ response+ -- indicates that more output is available. Set this parameter to the value+ -- of the previous call\'s @NextToken@ response to indicate where the+ -- output should continue from.+ nextToken :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListSupportedResourceTypes' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'listSupportedResourceTypes_maxResults' - The maximum number of results that you want included on each page of the+-- response. If you do not include this parameter, it defaults to a value+-- appropriate to the operation. If additional items exist beyond those+-- included in the current response, the @NextToken@ response element is+-- present and has a value (is not null). Include that value as the+-- @NextToken@ request parameter in the next call to the operation to get+-- the next part of the results.+--+-- An API operation can return fewer results than the maximum even when+-- there are more results available. You should check @NextToken@ after+-- every operation to ensure that you receive all of the results.+--+-- 'nextToken', 'listSupportedResourceTypes_nextToken' - The parameter for receiving additional results if you receive a+-- @NextToken@ response in a previous request. A @NextToken@ response+-- indicates that more output is available. Set this parameter to the value+-- of the previous call\'s @NextToken@ response to indicate where the+-- output should continue from.+newListSupportedResourceTypes ::+ ListSupportedResourceTypes+newListSupportedResourceTypes =+ ListSupportedResourceTypes'+ { maxResults =+ Prelude.Nothing,+ nextToken = Prelude.Nothing+ }++-- | The maximum number of results that you want included on each page of the+-- response. If you do not include this parameter, it defaults to a value+-- appropriate to the operation. If additional items exist beyond those+-- included in the current response, the @NextToken@ response element is+-- present and has a value (is not null). Include that value as the+-- @NextToken@ request parameter in the next call to the operation to get+-- the next part of the results.+--+-- An API operation can return fewer results than the maximum even when+-- there are more results available. You should check @NextToken@ after+-- every operation to ensure that you receive all of the results.+listSupportedResourceTypes_maxResults :: Lens.Lens' ListSupportedResourceTypes (Prelude.Maybe Prelude.Natural)+listSupportedResourceTypes_maxResults = Lens.lens (\ListSupportedResourceTypes' {maxResults} -> maxResults) (\s@ListSupportedResourceTypes' {} a -> s {maxResults = a} :: ListSupportedResourceTypes)++-- | The parameter for receiving additional results if you receive a+-- @NextToken@ response in a previous request. A @NextToken@ response+-- indicates that more output is available. Set this parameter to the value+-- of the previous call\'s @NextToken@ response to indicate where the+-- output should continue from.+listSupportedResourceTypes_nextToken :: Lens.Lens' ListSupportedResourceTypes (Prelude.Maybe Prelude.Text)+listSupportedResourceTypes_nextToken = Lens.lens (\ListSupportedResourceTypes' {nextToken} -> nextToken) (\s@ListSupportedResourceTypes' {} a -> s {nextToken = a} :: ListSupportedResourceTypes)++instance Core.AWSPager ListSupportedResourceTypes where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listSupportedResourceTypesResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? listSupportedResourceTypesResponse_resourceTypes+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listSupportedResourceTypes_nextToken+ Lens..~ rs+ Lens.^? listSupportedResourceTypesResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ListSupportedResourceTypes where+ type+ AWSResponse ListSupportedResourceTypes =+ ListSupportedResourceTypesResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListSupportedResourceTypesResponse'+ Prelude.<$> (x Data..?> "NextToken")+ Prelude.<*> (x Data..?> "ResourceTypes" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListSupportedResourceTypes where+ hashWithSalt _salt ListSupportedResourceTypes' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken++instance Prelude.NFData ListSupportedResourceTypes where+ rnf ListSupportedResourceTypes' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken++instance Data.ToHeaders ListSupportedResourceTypes where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListSupportedResourceTypes where+ toJSON ListSupportedResourceTypes' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("MaxResults" Data..=) Prelude.<$> maxResults,+ ("NextToken" Data..=) Prelude.<$> nextToken+ ]+ )++instance Data.ToPath ListSupportedResourceTypes where+ toPath = Prelude.const "/ListSupportedResourceTypes"++instance Data.ToQuery ListSupportedResourceTypes where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListSupportedResourceTypesResponse' smart constructor.+data ListSupportedResourceTypesResponse = ListSupportedResourceTypesResponse'+ { -- | If present, indicates that more output is available than is included in+ -- the current response. Use this value in the @NextToken@ request+ -- parameter in a subsequent call to the operation to get the next part of+ -- the output. You should repeat this until the @NextToken@ response+ -- element comes back as @null@.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The list of resource types supported by Resource Explorer.+ resourceTypes :: Prelude.Maybe [SupportedResourceType],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListSupportedResourceTypesResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'listSupportedResourceTypesResponse_nextToken' - If present, indicates that more output is available than is included in+-- the current response. Use this value in the @NextToken@ request+-- parameter in a subsequent call to the operation to get the next part of+-- the output. You should repeat this until the @NextToken@ response+-- element comes back as @null@.+--+-- 'resourceTypes', 'listSupportedResourceTypesResponse_resourceTypes' - The list of resource types supported by Resource Explorer.+--+-- 'httpStatus', 'listSupportedResourceTypesResponse_httpStatus' - The response's http status code.+newListSupportedResourceTypesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListSupportedResourceTypesResponse+newListSupportedResourceTypesResponse pHttpStatus_ =+ ListSupportedResourceTypesResponse'+ { nextToken =+ Prelude.Nothing,+ resourceTypes = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | If present, indicates that more output is available than is included in+-- the current response. Use this value in the @NextToken@ request+-- parameter in a subsequent call to the operation to get the next part of+-- the output. You should repeat this until the @NextToken@ response+-- element comes back as @null@.+listSupportedResourceTypesResponse_nextToken :: Lens.Lens' ListSupportedResourceTypesResponse (Prelude.Maybe Prelude.Text)+listSupportedResourceTypesResponse_nextToken = Lens.lens (\ListSupportedResourceTypesResponse' {nextToken} -> nextToken) (\s@ListSupportedResourceTypesResponse' {} a -> s {nextToken = a} :: ListSupportedResourceTypesResponse)++-- | The list of resource types supported by Resource Explorer.+listSupportedResourceTypesResponse_resourceTypes :: Lens.Lens' ListSupportedResourceTypesResponse (Prelude.Maybe [SupportedResourceType])+listSupportedResourceTypesResponse_resourceTypes = Lens.lens (\ListSupportedResourceTypesResponse' {resourceTypes} -> resourceTypes) (\s@ListSupportedResourceTypesResponse' {} a -> s {resourceTypes = a} :: ListSupportedResourceTypesResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listSupportedResourceTypesResponse_httpStatus :: Lens.Lens' ListSupportedResourceTypesResponse Prelude.Int+listSupportedResourceTypesResponse_httpStatus = Lens.lens (\ListSupportedResourceTypesResponse' {httpStatus} -> httpStatus) (\s@ListSupportedResourceTypesResponse' {} a -> s {httpStatus = a} :: ListSupportedResourceTypesResponse)++instance+ Prelude.NFData+ ListSupportedResourceTypesResponse+ where+ rnf ListSupportedResourceTypesResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf resourceTypes+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/ResourceExplorer2/ListTagsForResource.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.ResourceExplorer2.ListTagsForResource+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists the tags that are attached to the specified resource.+module Amazonka.ResourceExplorer2.ListTagsForResource+ ( -- * Creating a Request+ ListTagsForResource (..),+ newListTagsForResource,++ -- * Request Lenses+ listTagsForResource_resourceArn,++ -- * Destructuring the Response+ ListTagsForResourceResponse (..),+ newListTagsForResourceResponse,++ -- * Response Lenses+ listTagsForResourceResponse_tags,+ listTagsForResourceResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import Amazonka.ResourceExplorer2.Types+import qualified Amazonka.Response as Response++-- | /See:/ 'newListTagsForResource' smart constructor.+data ListTagsForResource = ListTagsForResource'+ { -- | The+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+ -- of the view or index that you want to attach tags to.+ resourceArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListTagsForResource' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'resourceArn', 'listTagsForResource_resourceArn' - The+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+-- of the view or index that you want to attach tags to.+newListTagsForResource ::+ -- | 'resourceArn'+ Prelude.Text ->+ ListTagsForResource+newListTagsForResource pResourceArn_ =+ ListTagsForResource' {resourceArn = pResourceArn_}++-- | The+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+-- of the view or index that you want to attach tags to.+listTagsForResource_resourceArn :: Lens.Lens' ListTagsForResource Prelude.Text+listTagsForResource_resourceArn = Lens.lens (\ListTagsForResource' {resourceArn} -> resourceArn) (\s@ListTagsForResource' {} a -> s {resourceArn = a} :: ListTagsForResource)++instance Core.AWSRequest ListTagsForResource where+ type+ AWSResponse ListTagsForResource =+ ListTagsForResourceResponse+ request overrides =+ Request.get (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListTagsForResourceResponse'+ Prelude.<$> (x Data..?> "Tags" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListTagsForResource where+ hashWithSalt _salt ListTagsForResource' {..} =+ _salt `Prelude.hashWithSalt` resourceArn++instance Prelude.NFData ListTagsForResource where+ rnf ListTagsForResource' {..} =+ Prelude.rnf resourceArn++instance Data.ToHeaders ListTagsForResource where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath ListTagsForResource where+ toPath ListTagsForResource' {..} =+ Prelude.mconcat ["/tags/", Data.toBS resourceArn]++instance Data.ToQuery ListTagsForResource where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListTagsForResourceResponse' smart constructor.+data ListTagsForResourceResponse = ListTagsForResourceResponse'+ { -- | The tag key and value pairs that you want to attach to the specified+ -- view or index.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListTagsForResourceResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'tags', 'listTagsForResourceResponse_tags' - The tag key and value pairs that you want to attach to the specified+-- view or index.+--+-- 'httpStatus', 'listTagsForResourceResponse_httpStatus' - The response's http status code.+newListTagsForResourceResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListTagsForResourceResponse+newListTagsForResourceResponse pHttpStatus_ =+ ListTagsForResourceResponse'+ { tags =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The tag key and value pairs that you want to attach to the specified+-- view or index.+listTagsForResourceResponse_tags :: Lens.Lens' ListTagsForResourceResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+listTagsForResourceResponse_tags = Lens.lens (\ListTagsForResourceResponse' {tags} -> tags) (\s@ListTagsForResourceResponse' {} a -> s {tags = a} :: ListTagsForResourceResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listTagsForResourceResponse_httpStatus :: Lens.Lens' ListTagsForResourceResponse Prelude.Int+listTagsForResourceResponse_httpStatus = Lens.lens (\ListTagsForResourceResponse' {httpStatus} -> httpStatus) (\s@ListTagsForResourceResponse' {} a -> s {httpStatus = a} :: ListTagsForResourceResponse)++instance Prelude.NFData ListTagsForResourceResponse where+ rnf ListTagsForResourceResponse' {..} =+ Prelude.rnf tags+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/ResourceExplorer2/ListViews.hs view
@@ -0,0 +1,279 @@+{-# 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.ResourceExplorer2.ListViews+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists the+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource names (ARNs)>+-- of the views available in the Amazon Web Services Region in which you+-- call this operation.+--+-- Always check the @NextToken@ response parameter for a @null@ value when+-- calling a paginated operation. These operations can occasionally return+-- an empty set of results even when there are more results available. The+-- @NextToken@ response parameter value is @null@ /only/ when there are no+-- more results to display.+--+-- This operation returns paginated results.+module Amazonka.ResourceExplorer2.ListViews+ ( -- * Creating a Request+ ListViews (..),+ newListViews,++ -- * Request Lenses+ listViews_maxResults,+ listViews_nextToken,++ -- * Destructuring the Response+ ListViewsResponse (..),+ newListViewsResponse,++ -- * Response Lenses+ listViewsResponse_nextToken,+ listViewsResponse_views,+ listViewsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import Amazonka.ResourceExplorer2.Types+import qualified Amazonka.Response as Response++-- | /See:/ 'newListViews' smart constructor.+data ListViews = ListViews'+ { -- | The maximum number of results that you want included on each page of the+ -- response. If you do not include this parameter, it defaults to a value+ -- appropriate to the operation. If additional items exist beyond those+ -- included in the current response, the @NextToken@ response element is+ -- present and has a value (is not null). Include that value as the+ -- @NextToken@ request parameter in the next call to the operation to get+ -- the next part of the results.+ --+ -- An API operation can return fewer results than the maximum even when+ -- there are more results available. You should check @NextToken@ after+ -- every operation to ensure that you receive all of the results.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | The parameter for receiving additional results if you receive a+ -- @NextToken@ response in a previous request. A @NextToken@ response+ -- indicates that more output is available. Set this parameter to the value+ -- of the previous call\'s @NextToken@ response to indicate where the+ -- output should continue from.+ nextToken :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListViews' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'listViews_maxResults' - The maximum number of results that you want included on each page of the+-- response. If you do not include this parameter, it defaults to a value+-- appropriate to the operation. If additional items exist beyond those+-- included in the current response, the @NextToken@ response element is+-- present and has a value (is not null). Include that value as the+-- @NextToken@ request parameter in the next call to the operation to get+-- the next part of the results.+--+-- An API operation can return fewer results than the maximum even when+-- there are more results available. You should check @NextToken@ after+-- every operation to ensure that you receive all of the results.+--+-- 'nextToken', 'listViews_nextToken' - The parameter for receiving additional results if you receive a+-- @NextToken@ response in a previous request. A @NextToken@ response+-- indicates that more output is available. Set this parameter to the value+-- of the previous call\'s @NextToken@ response to indicate where the+-- output should continue from.+newListViews ::+ ListViews+newListViews =+ ListViews'+ { maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing+ }++-- | The maximum number of results that you want included on each page of the+-- response. If you do not include this parameter, it defaults to a value+-- appropriate to the operation. If additional items exist beyond those+-- included in the current response, the @NextToken@ response element is+-- present and has a value (is not null). Include that value as the+-- @NextToken@ request parameter in the next call to the operation to get+-- the next part of the results.+--+-- An API operation can return fewer results than the maximum even when+-- there are more results available. You should check @NextToken@ after+-- every operation to ensure that you receive all of the results.+listViews_maxResults :: Lens.Lens' ListViews (Prelude.Maybe Prelude.Natural)+listViews_maxResults = Lens.lens (\ListViews' {maxResults} -> maxResults) (\s@ListViews' {} a -> s {maxResults = a} :: ListViews)++-- | The parameter for receiving additional results if you receive a+-- @NextToken@ response in a previous request. A @NextToken@ response+-- indicates that more output is available. Set this parameter to the value+-- of the previous call\'s @NextToken@ response to indicate where the+-- output should continue from.+listViews_nextToken :: Lens.Lens' ListViews (Prelude.Maybe Prelude.Text)+listViews_nextToken = Lens.lens (\ListViews' {nextToken} -> nextToken) (\s@ListViews' {} a -> s {nextToken = a} :: ListViews)++instance Core.AWSPager ListViews where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listViewsResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? listViewsResponse_views+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listViews_nextToken+ Lens..~ rs+ Lens.^? listViewsResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ListViews where+ type AWSResponse ListViews = ListViewsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListViewsResponse'+ Prelude.<$> (x Data..?> "NextToken")+ Prelude.<*> (x Data..?> "Views" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListViews where+ hashWithSalt _salt ListViews' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken++instance Prelude.NFData ListViews where+ rnf ListViews' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken++instance Data.ToHeaders ListViews where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListViews where+ toJSON ListViews' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("MaxResults" Data..=) Prelude.<$> maxResults,+ ("NextToken" Data..=) Prelude.<$> nextToken+ ]+ )++instance Data.ToPath ListViews where+ toPath = Prelude.const "/ListViews"++instance Data.ToQuery ListViews where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListViewsResponse' smart constructor.+data ListViewsResponse = ListViewsResponse'+ { -- | If present, indicates that more output is available than is included in+ -- the current response. Use this value in the @NextToken@ request+ -- parameter in a subsequent call to the operation to get the next part of+ -- the output. You should repeat this until the @NextToken@ response+ -- element comes back as @null@.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The list of views available in the Amazon Web Services Region in which+ -- you called this operation.+ views :: 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 'ListViewsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'listViewsResponse_nextToken' - If present, indicates that more output is available than is included in+-- the current response. Use this value in the @NextToken@ request+-- parameter in a subsequent call to the operation to get the next part of+-- the output. You should repeat this until the @NextToken@ response+-- element comes back as @null@.+--+-- 'views', 'listViewsResponse_views' - The list of views available in the Amazon Web Services Region in which+-- you called this operation.+--+-- 'httpStatus', 'listViewsResponse_httpStatus' - The response's http status code.+newListViewsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListViewsResponse+newListViewsResponse pHttpStatus_ =+ ListViewsResponse'+ { nextToken = Prelude.Nothing,+ views = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | If present, indicates that more output is available than is included in+-- the current response. Use this value in the @NextToken@ request+-- parameter in a subsequent call to the operation to get the next part of+-- the output. You should repeat this until the @NextToken@ response+-- element comes back as @null@.+listViewsResponse_nextToken :: Lens.Lens' ListViewsResponse (Prelude.Maybe Prelude.Text)+listViewsResponse_nextToken = Lens.lens (\ListViewsResponse' {nextToken} -> nextToken) (\s@ListViewsResponse' {} a -> s {nextToken = a} :: ListViewsResponse)++-- | The list of views available in the Amazon Web Services Region in which+-- you called this operation.+listViewsResponse_views :: Lens.Lens' ListViewsResponse (Prelude.Maybe [Prelude.Text])+listViewsResponse_views = Lens.lens (\ListViewsResponse' {views} -> views) (\s@ListViewsResponse' {} a -> s {views = a} :: ListViewsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listViewsResponse_httpStatus :: Lens.Lens' ListViewsResponse Prelude.Int+listViewsResponse_httpStatus = Lens.lens (\ListViewsResponse' {httpStatus} -> httpStatus) (\s@ListViewsResponse' {} a -> s {httpStatus = a} :: ListViewsResponse)++instance Prelude.NFData ListViewsResponse where+ rnf ListViewsResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf views+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/ResourceExplorer2/Search.hs view
@@ -0,0 +1,394 @@+{-# 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.ResourceExplorer2.Search+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Searches for resources and displays details about all resources that+-- match the specified criteria. You must specify a query string.+--+-- All search queries must use a view. If you don\'t explicitly specify a+-- view, then Amazon Web Services Resource Explorer uses the default view+-- for the Amazon Web Services Region in which you call this operation. The+-- results are the logical intersection of the results that match both the+-- @QueryString@ parameter supplied to this operation and the+-- @SearchFilter@ parameter attached to the view.+--+-- For the complete syntax supported by the @QueryString@ parameter, see+-- <https://docs.aws.amazon.com/resource-explorer/latest/APIReference/about-query-syntax.html Search query syntax reference for Resource Explorer>.+--+-- If your search results are empty, or are missing results that you think+-- should be there, see+-- <https://docs.aws.amazon.com/resource-explorer/latest/userguide/troubleshooting_search.html Troubleshooting Resource Explorer search>.+--+-- This operation returns paginated results.+module Amazonka.ResourceExplorer2.Search+ ( -- * Creating a Request+ Search (..),+ newSearch,++ -- * Request Lenses+ search_maxResults,+ search_nextToken,+ search_viewArn,+ search_queryString,++ -- * Destructuring the Response+ SearchResponse (..),+ newSearchResponse,++ -- * Response Lenses+ searchResponse_count,+ searchResponse_nextToken,+ searchResponse_resources,+ searchResponse_viewArn,+ searchResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import Amazonka.ResourceExplorer2.Types+import qualified Amazonka.Response as Response++-- | /See:/ 'newSearch' smart constructor.+data Search = Search'+ { -- | The maximum number of results that you want included on each page of the+ -- response. If you do not include this parameter, it defaults to a value+ -- appropriate to the operation. If additional items exist beyond those+ -- included in the current response, the @NextToken@ response element is+ -- present and has a value (is not null). Include that value as the+ -- @NextToken@ request parameter in the next call to the operation to get+ -- the next part of the results.+ --+ -- An API operation can return fewer results than the maximum even when+ -- there are more results available. You should check @NextToken@ after+ -- every operation to ensure that you receive all of the results.+ maxResults :: Prelude.Maybe Prelude.Natural,+ -- | The parameter for receiving additional results if you receive a+ -- @NextToken@ response in a previous request. A @NextToken@ response+ -- indicates that more output is available. Set this parameter to the value+ -- of the previous call\'s @NextToken@ response to indicate where the+ -- output should continue from.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | Specifies the+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+ -- of the view to use for the query. If you don\'t specify a value for this+ -- parameter, then the operation automatically uses the default view for+ -- the Amazon Web Services Region in which you called this operation. If+ -- the Region either doesn\'t have a default view or if you don\'t have+ -- permission to use the default view, then the operation fails with a+ -- @401 Unauthorized@ exception.+ viewArn :: Prelude.Maybe Prelude.Text,+ -- | A string that includes keywords and filters that specify the resources+ -- that you want to include in the results.+ --+ -- For the complete syntax supported by the @QueryString@ parameter, see+ -- <https://docs.aws.amazon.com/resource-explorer/latest/userguide/using-search-query-syntax.html Search query syntax reference for Resource Explorer>.+ --+ -- The search is completely case insensitive. You can specify an empty+ -- string to return all results up to the limit of 1,000 total results.+ --+ -- The operation can return only the first 1,000 results. If the resource+ -- you want is not included, then use a different value for @QueryString@+ -- to refine the results.+ queryString :: Data.Sensitive Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Search' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'search_maxResults' - The maximum number of results that you want included on each page of the+-- response. If you do not include this parameter, it defaults to a value+-- appropriate to the operation. If additional items exist beyond those+-- included in the current response, the @NextToken@ response element is+-- present and has a value (is not null). Include that value as the+-- @NextToken@ request parameter in the next call to the operation to get+-- the next part of the results.+--+-- An API operation can return fewer results than the maximum even when+-- there are more results available. You should check @NextToken@ after+-- every operation to ensure that you receive all of the results.+--+-- 'nextToken', 'search_nextToken' - The parameter for receiving additional results if you receive a+-- @NextToken@ response in a previous request. A @NextToken@ response+-- indicates that more output is available. Set this parameter to the value+-- of the previous call\'s @NextToken@ response to indicate where the+-- output should continue from.+--+-- 'viewArn', 'search_viewArn' - Specifies the+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+-- of the view to use for the query. If you don\'t specify a value for this+-- parameter, then the operation automatically uses the default view for+-- the Amazon Web Services Region in which you called this operation. If+-- the Region either doesn\'t have a default view or if you don\'t have+-- permission to use the default view, then the operation fails with a+-- @401 Unauthorized@ exception.+--+-- 'queryString', 'search_queryString' - A string that includes keywords and filters that specify the resources+-- that you want to include in the results.+--+-- For the complete syntax supported by the @QueryString@ parameter, see+-- <https://docs.aws.amazon.com/resource-explorer/latest/userguide/using-search-query-syntax.html Search query syntax reference for Resource Explorer>.+--+-- The search is completely case insensitive. You can specify an empty+-- string to return all results up to the limit of 1,000 total results.+--+-- The operation can return only the first 1,000 results. If the resource+-- you want is not included, then use a different value for @QueryString@+-- to refine the results.+newSearch ::+ -- | 'queryString'+ Prelude.Text ->+ Search+newSearch pQueryString_ =+ Search'+ { maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ viewArn = Prelude.Nothing,+ queryString = Data._Sensitive Lens.# pQueryString_+ }++-- | The maximum number of results that you want included on each page of the+-- response. If you do not include this parameter, it defaults to a value+-- appropriate to the operation. If additional items exist beyond those+-- included in the current response, the @NextToken@ response element is+-- present and has a value (is not null). Include that value as the+-- @NextToken@ request parameter in the next call to the operation to get+-- the next part of the results.+--+-- An API operation can return fewer results than the maximum even when+-- there are more results available. You should check @NextToken@ after+-- every operation to ensure that you receive all of the results.+search_maxResults :: Lens.Lens' Search (Prelude.Maybe Prelude.Natural)+search_maxResults = Lens.lens (\Search' {maxResults} -> maxResults) (\s@Search' {} a -> s {maxResults = a} :: Search)++-- | The parameter for receiving additional results if you receive a+-- @NextToken@ response in a previous request. A @NextToken@ response+-- indicates that more output is available. Set this parameter to the value+-- of the previous call\'s @NextToken@ response to indicate where the+-- output should continue from.+search_nextToken :: Lens.Lens' Search (Prelude.Maybe Prelude.Text)+search_nextToken = Lens.lens (\Search' {nextToken} -> nextToken) (\s@Search' {} a -> s {nextToken = a} :: Search)++-- | Specifies the+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+-- of the view to use for the query. If you don\'t specify a value for this+-- parameter, then the operation automatically uses the default view for+-- the Amazon Web Services Region in which you called this operation. If+-- the Region either doesn\'t have a default view or if you don\'t have+-- permission to use the default view, then the operation fails with a+-- @401 Unauthorized@ exception.+search_viewArn :: Lens.Lens' Search (Prelude.Maybe Prelude.Text)+search_viewArn = Lens.lens (\Search' {viewArn} -> viewArn) (\s@Search' {} a -> s {viewArn = a} :: Search)++-- | A string that includes keywords and filters that specify the resources+-- that you want to include in the results.+--+-- For the complete syntax supported by the @QueryString@ parameter, see+-- <https://docs.aws.amazon.com/resource-explorer/latest/userguide/using-search-query-syntax.html Search query syntax reference for Resource Explorer>.+--+-- The search is completely case insensitive. You can specify an empty+-- string to return all results up to the limit of 1,000 total results.+--+-- The operation can return only the first 1,000 results. If the resource+-- you want is not included, then use a different value for @QueryString@+-- to refine the results.+search_queryString :: Lens.Lens' Search Prelude.Text+search_queryString = Lens.lens (\Search' {queryString} -> queryString) (\s@Search' {} a -> s {queryString = a} :: Search) Prelude.. Data._Sensitive++instance Core.AWSPager Search where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? searchResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? searchResponse_resources+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& search_nextToken+ Lens..~ rs+ Lens.^? searchResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest Search where+ type AWSResponse Search = SearchResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ SearchResponse'+ Prelude.<$> (x Data..?> "Count")+ Prelude.<*> (x Data..?> "NextToken")+ Prelude.<*> (x Data..?> "Resources" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "ViewArn")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable Search where+ hashWithSalt _salt Search' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` viewArn+ `Prelude.hashWithSalt` queryString++instance Prelude.NFData Search where+ rnf Search' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf viewArn+ `Prelude.seq` Prelude.rnf queryString++instance Data.ToHeaders Search where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON Search where+ toJSON Search' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("MaxResults" Data..=) Prelude.<$> maxResults,+ ("NextToken" Data..=) Prelude.<$> nextToken,+ ("ViewArn" Data..=) Prelude.<$> viewArn,+ Prelude.Just ("QueryString" Data..= queryString)+ ]+ )++instance Data.ToPath Search where+ toPath = Prelude.const "/Search"++instance Data.ToQuery Search where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newSearchResponse' smart constructor.+data SearchResponse = SearchResponse'+ { -- | The number of resources that match the query.+ count :: Prelude.Maybe ResourceCount,+ -- | If present, indicates that more output is available than is included in+ -- the current response. Use this value in the @NextToken@ request+ -- parameter in a subsequent call to the operation to get the next part of+ -- the output. You should repeat this until the @NextToken@ response+ -- element comes back as @null@.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The list of structures that describe the resources that match the query.+ resources :: Prelude.Maybe [Resource],+ -- | The+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+ -- of the view that this operation used to perform the search.+ viewArn :: 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 'SearchResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'count', 'searchResponse_count' - The number of resources that match the query.+--+-- 'nextToken', 'searchResponse_nextToken' - If present, indicates that more output is available than is included in+-- the current response. Use this value in the @NextToken@ request+-- parameter in a subsequent call to the operation to get the next part of+-- the output. You should repeat this until the @NextToken@ response+-- element comes back as @null@.+--+-- 'resources', 'searchResponse_resources' - The list of structures that describe the resources that match the query.+--+-- 'viewArn', 'searchResponse_viewArn' - The+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+-- of the view that this operation used to perform the search.+--+-- 'httpStatus', 'searchResponse_httpStatus' - The response's http status code.+newSearchResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ SearchResponse+newSearchResponse pHttpStatus_ =+ SearchResponse'+ { count = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ resources = Prelude.Nothing,+ viewArn = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The number of resources that match the query.+searchResponse_count :: Lens.Lens' SearchResponse (Prelude.Maybe ResourceCount)+searchResponse_count = Lens.lens (\SearchResponse' {count} -> count) (\s@SearchResponse' {} a -> s {count = a} :: SearchResponse)++-- | If present, indicates that more output is available than is included in+-- the current response. Use this value in the @NextToken@ request+-- parameter in a subsequent call to the operation to get the next part of+-- the output. You should repeat this until the @NextToken@ response+-- element comes back as @null@.+searchResponse_nextToken :: Lens.Lens' SearchResponse (Prelude.Maybe Prelude.Text)+searchResponse_nextToken = Lens.lens (\SearchResponse' {nextToken} -> nextToken) (\s@SearchResponse' {} a -> s {nextToken = a} :: SearchResponse)++-- | The list of structures that describe the resources that match the query.+searchResponse_resources :: Lens.Lens' SearchResponse (Prelude.Maybe [Resource])+searchResponse_resources = Lens.lens (\SearchResponse' {resources} -> resources) (\s@SearchResponse' {} a -> s {resources = a} :: SearchResponse) Prelude.. Lens.mapping Lens.coerced++-- | The+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+-- of the view that this operation used to perform the search.+searchResponse_viewArn :: Lens.Lens' SearchResponse (Prelude.Maybe Prelude.Text)+searchResponse_viewArn = Lens.lens (\SearchResponse' {viewArn} -> viewArn) (\s@SearchResponse' {} a -> s {viewArn = a} :: SearchResponse)++-- | The response's http status code.+searchResponse_httpStatus :: Lens.Lens' SearchResponse Prelude.Int+searchResponse_httpStatus = Lens.lens (\SearchResponse' {httpStatus} -> httpStatus) (\s@SearchResponse' {} a -> s {httpStatus = a} :: SearchResponse)++instance Prelude.NFData SearchResponse where+ rnf SearchResponse' {..} =+ Prelude.rnf count+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf resources+ `Prelude.seq` Prelude.rnf viewArn+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/ResourceExplorer2/TagResource.hs view
@@ -0,0 +1,170 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.ResourceExplorer2.TagResource+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Adds one or more tag key and value pairs to an Amazon Web Services+-- Resource Explorer view or index.+module Amazonka.ResourceExplorer2.TagResource+ ( -- * Creating a Request+ TagResource (..),+ newTagResource,++ -- * Request Lenses+ tagResource_tags,+ tagResource_resourceArn,++ -- * Destructuring the Response+ TagResourceResponse (..),+ newTagResourceResponse,++ -- * Response Lenses+ tagResourceResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import Amazonka.ResourceExplorer2.Types+import qualified Amazonka.Response as Response++-- | /See:/ 'newTagResource' smart constructor.+data TagResource = TagResource'+ { -- | A list of tag key and value pairs that you want to attach to the+ -- specified view or index.+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The Amazon Resource Name (ARN) of the view or index that you want to+ -- attach tags to.+ resourceArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TagResource' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'tags', 'tagResource_tags' - A list of tag key and value pairs that you want to attach to the+-- specified view or index.+--+-- 'resourceArn', 'tagResource_resourceArn' - The Amazon Resource Name (ARN) of the view or index that you want to+-- attach tags to.+newTagResource ::+ -- | 'resourceArn'+ Prelude.Text ->+ TagResource+newTagResource pResourceArn_ =+ TagResource'+ { tags = Prelude.Nothing,+ resourceArn = pResourceArn_+ }++-- | A list of tag key and value pairs that you want to attach to the+-- specified view or index.+tagResource_tags :: Lens.Lens' TagResource (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+tagResource_tags = Lens.lens (\TagResource' {tags} -> tags) (\s@TagResource' {} a -> s {tags = a} :: TagResource) Prelude.. Lens.mapping Lens.coerced++-- | The Amazon Resource Name (ARN) of the view or index that you want to+-- attach tags to.+tagResource_resourceArn :: Lens.Lens' TagResource Prelude.Text+tagResource_resourceArn = Lens.lens (\TagResource' {resourceArn} -> resourceArn) (\s@TagResource' {} a -> s {resourceArn = a} :: TagResource)++instance Core.AWSRequest TagResource where+ type AWSResponse TagResource = TagResourceResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ TagResourceResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable TagResource where+ hashWithSalt _salt TagResource' {..} =+ _salt+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` resourceArn++instance Prelude.NFData TagResource where+ rnf TagResource' {..} =+ Prelude.rnf tags+ `Prelude.seq` Prelude.rnf resourceArn++instance Data.ToHeaders TagResource where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON TagResource where+ toJSON TagResource' {..} =+ Data.object+ ( Prelude.catMaybes+ [("Tags" Data..=) Prelude.<$> tags]+ )++instance Data.ToPath TagResource where+ toPath TagResource' {..} =+ Prelude.mconcat ["/tags/", Data.toBS resourceArn]++instance Data.ToQuery TagResource where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newTagResourceResponse' smart constructor.+data TagResourceResponse = TagResourceResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TagResourceResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'tagResourceResponse_httpStatus' - The response's http status code.+newTagResourceResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ TagResourceResponse+newTagResourceResponse pHttpStatus_ =+ TagResourceResponse' {httpStatus = pHttpStatus_}++-- | The response's http status code.+tagResourceResponse_httpStatus :: Lens.Lens' TagResourceResponse Prelude.Int+tagResourceResponse_httpStatus = Lens.lens (\TagResourceResponse' {httpStatus} -> httpStatus) (\s@TagResourceResponse' {} a -> s {httpStatus = a} :: TagResourceResponse)++instance Prelude.NFData TagResourceResponse where+ rnf TagResourceResponse' {..} = Prelude.rnf httpStatus
+ gen/Amazonka/ResourceExplorer2/Types.hs view
@@ -0,0 +1,263 @@+{-# 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.ResourceExplorer2.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.ResourceExplorer2.Types+ ( -- * Service Configuration+ defaultService,++ -- * Errors+ _AccessDeniedException,+ _ConflictException,+ _InternalServerException,+ _ResourceNotFoundException,+ _ServiceQuotaExceededException,+ _ThrottlingException,+ _UnauthorizedException,+ _ValidationException,++ -- * IndexState+ IndexState (..),++ -- * IndexType+ IndexType (..),++ -- * BatchGetViewError+ BatchGetViewError (..),+ newBatchGetViewError,+ batchGetViewError_errorMessage,+ batchGetViewError_viewArn,++ -- * Document+ Document (..),+ newDocument,++ -- * IncludedProperty+ IncludedProperty (..),+ newIncludedProperty,+ includedProperty_name,++ -- * Index+ Index (..),+ newIndex,+ index_arn,+ index_region,+ index_type,++ -- * Resource+ Resource (..),+ newResource,+ resource_arn,+ resource_lastReportedAt,+ resource_owningAccountId,+ resource_properties,+ resource_region,+ resource_resourceType,+ resource_service,++ -- * ResourceCount+ ResourceCount (..),+ newResourceCount,+ resourceCount_complete,+ resourceCount_totalResources,++ -- * ResourceProperty+ ResourceProperty (..),+ newResourceProperty,+ resourceProperty_data,+ resourceProperty_lastReportedAt,+ resourceProperty_name,++ -- * SearchFilter+ SearchFilter (..),+ newSearchFilter,+ searchFilter_filterString,++ -- * SupportedResourceType+ SupportedResourceType (..),+ newSupportedResourceType,+ supportedResourceType_resourceType,+ supportedResourceType_service,++ -- * View+ View (..),+ newView,+ view_filters,+ view_includedProperties,+ view_lastUpdatedAt,+ view_owner,+ view_scope,+ view_viewArn,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Prelude as Prelude+import Amazonka.ResourceExplorer2.Types.BatchGetViewError+import Amazonka.ResourceExplorer2.Types.Document+import Amazonka.ResourceExplorer2.Types.IncludedProperty+import Amazonka.ResourceExplorer2.Types.Index+import Amazonka.ResourceExplorer2.Types.IndexState+import Amazonka.ResourceExplorer2.Types.IndexType+import Amazonka.ResourceExplorer2.Types.Resource+import Amazonka.ResourceExplorer2.Types.ResourceCount+import Amazonka.ResourceExplorer2.Types.ResourceProperty+import Amazonka.ResourceExplorer2.Types.SearchFilter+import Amazonka.ResourceExplorer2.Types.SupportedResourceType+import Amazonka.ResourceExplorer2.Types.View+import qualified Amazonka.Sign.V4 as Sign++-- | API version @2022-07-28@ of the Amazon Resource Explorer SDK configuration.+defaultService :: Core.Service+defaultService =+ Core.Service+ { Core.abbrev = "ResourceExplorer2",+ Core.signer = Sign.v4,+ Core.endpointPrefix = "resource-explorer-2",+ Core.signingName = "resource-explorer-2",+ Core.version = "2022-07-28",+ Core.s3AddressingStyle = Core.S3AddressingStyleAuto,+ Core.endpoint = Core.defaultEndpoint defaultService,+ Core.timeout = Prelude.Just 70,+ Core.check = Core.statusSuccess,+ Core.error = Core.parseJSONError "ResourceExplorer2",+ Core.retry = retry+ }+ where+ retry =+ Core.Exponential+ { Core.base = 5.0e-2,+ Core.growth = 2,+ Core.attempts = 5,+ Core.check = check+ }+ check e+ | Lens.has (Core.hasStatus 502) e =+ Prelude.Just "bad_gateway"+ | Lens.has (Core.hasStatus 504) e =+ Prelude.Just "gateway_timeout"+ | Lens.has (Core.hasStatus 500) e =+ Prelude.Just "general_server_error"+ | Lens.has (Core.hasStatus 509) e =+ Prelude.Just "limit_exceeded"+ | Lens.has+ ( Core.hasCode "RequestThrottledException"+ Prelude.. Core.hasStatus 400+ )+ e =+ Prelude.Just "request_throttled_exception"+ | Lens.has (Core.hasStatus 503) e =+ Prelude.Just "service_unavailable"+ | Lens.has+ ( Core.hasCode "ThrottledException"+ Prelude.. Core.hasStatus 400+ )+ e =+ Prelude.Just "throttled_exception"+ | Lens.has+ ( Core.hasCode "Throttling"+ Prelude.. Core.hasStatus 400+ )+ e =+ Prelude.Just "throttling"+ | Lens.has+ ( Core.hasCode "ThrottlingException"+ Prelude.. Core.hasStatus 400+ )+ e =+ Prelude.Just "throttling_exception"+ | Lens.has+ ( Core.hasCode+ "ProvisionedThroughputExceededException"+ Prelude.. Core.hasStatus 400+ )+ e =+ Prelude.Just "throughput_exceeded"+ | Lens.has (Core.hasStatus 429) e =+ Prelude.Just "too_many_requests"+ | Prelude.otherwise = Prelude.Nothing++-- | The credentials that you used to call this operation don\'t have the+-- minimum required permissions.+_AccessDeniedException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_AccessDeniedException =+ Core._MatchServiceError+ defaultService+ "AccessDeniedException"+ Prelude.. Core.hasStatus 403++-- | You tried to create a new view or index when one already exists, and you+-- either didn\'t specify or specified a different idempotency token as the+-- original request.+_ConflictException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ConflictException =+ Core._MatchServiceError+ defaultService+ "ConflictException"+ Prelude.. Core.hasStatus 409++-- | The request failed because of internal service error. Try your request+-- again later.+_InternalServerException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InternalServerException =+ Core._MatchServiceError+ defaultService+ "InternalServerException"+ Prelude.. Core.hasStatus 500++-- | You specified a resource that doesn\'t exist. Check the ID or ARN that+-- you used to identity the resource, and try again.+_ResourceNotFoundException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ResourceNotFoundException =+ Core._MatchServiceError+ defaultService+ "ResourceNotFoundException"+ Prelude.. Core.hasStatus 404++-- | The request failed because it exceeds a service quota.+_ServiceQuotaExceededException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ServiceQuotaExceededException =+ Core._MatchServiceError+ defaultService+ "ServiceQuotaExceededException"+ Prelude.. Core.hasStatus 402++-- | The request failed because you exceeded a rate limit for this operation.+-- For more information, see+-- <https://docs.aws.amazon.com/arexug/mainline/quotas.html Quotas for Resource Explorer>.+_ThrottlingException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ThrottlingException =+ Core._MatchServiceError+ defaultService+ "ThrottlingException"+ Prelude.. Core.hasStatus 429++-- | The principal making the request isn\'t permitted to perform the+-- operation.+_UnauthorizedException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_UnauthorizedException =+ Core._MatchServiceError+ defaultService+ "UnauthorizedException"+ Prelude.. Core.hasStatus 401++-- | You provided an invalid value for one of the operation\'s parameters.+-- Check the syntax for the operation, and try again.+_ValidationException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ValidationException =+ Core._MatchServiceError+ defaultService+ "ValidationException"+ Prelude.. Core.hasStatus 400
+ gen/Amazonka/ResourceExplorer2/Types/BatchGetViewError.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.ResourceExplorer2.Types.BatchGetViewError+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.ResourceExplorer2.Types.BatchGetViewError 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 collection of error messages for any views that Amazon Web Services+-- Resource Explorer couldn\'t retrieve details.+--+-- /See:/ 'newBatchGetViewError' smart constructor.+data BatchGetViewError = BatchGetViewError'+ { -- | The description of the error for the specified view.+ errorMessage :: Prelude.Text,+ -- | The+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+ -- of the view for which Resource Explorer failed to retrieve details.+ viewArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'BatchGetViewError' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'batchGetViewError_errorMessage' - The description of the error for the specified view.+--+-- 'viewArn', 'batchGetViewError_viewArn' - The+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+-- of the view for which Resource Explorer failed to retrieve details.+newBatchGetViewError ::+ -- | 'errorMessage'+ Prelude.Text ->+ -- | 'viewArn'+ Prelude.Text ->+ BatchGetViewError+newBatchGetViewError pErrorMessage_ pViewArn_ =+ BatchGetViewError'+ { errorMessage = pErrorMessage_,+ viewArn = pViewArn_+ }++-- | The description of the error for the specified view.+batchGetViewError_errorMessage :: Lens.Lens' BatchGetViewError Prelude.Text+batchGetViewError_errorMessage = Lens.lens (\BatchGetViewError' {errorMessage} -> errorMessage) (\s@BatchGetViewError' {} a -> s {errorMessage = a} :: BatchGetViewError)++-- | The+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+-- of the view for which Resource Explorer failed to retrieve details.+batchGetViewError_viewArn :: Lens.Lens' BatchGetViewError Prelude.Text+batchGetViewError_viewArn = Lens.lens (\BatchGetViewError' {viewArn} -> viewArn) (\s@BatchGetViewError' {} a -> s {viewArn = a} :: BatchGetViewError)++instance Data.FromJSON BatchGetViewError where+ parseJSON =+ Data.withObject+ "BatchGetViewError"+ ( \x ->+ BatchGetViewError'+ Prelude.<$> (x Data..: "ErrorMessage")+ Prelude.<*> (x Data..: "ViewArn")+ )++instance Prelude.Hashable BatchGetViewError where+ hashWithSalt _salt BatchGetViewError' {..} =+ _salt+ `Prelude.hashWithSalt` errorMessage+ `Prelude.hashWithSalt` viewArn++instance Prelude.NFData BatchGetViewError where+ rnf BatchGetViewError' {..} =+ Prelude.rnf errorMessage+ `Prelude.seq` Prelude.rnf viewArn
+ gen/Amazonka/ResourceExplorer2/Types/Document.hs view
@@ -0,0 +1,52 @@+{-# 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.ResourceExplorer2.Types.Document+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.ResourceExplorer2.Types.Document 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++-- | /See:/ 'newDocument' smart constructor.+data Document = Document'+ {+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Document' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+newDocument ::+ Document+newDocument = Document'++instance Data.FromJSON Document where+ parseJSON =+ Data.withObject+ "Document"+ (\x -> Prelude.pure Document')++instance Prelude.Hashable Document where+ hashWithSalt _salt _ =+ _salt `Prelude.hashWithSalt` ()++instance Prelude.NFData Document where+ rnf _ = ()
+ gen/Amazonka/ResourceExplorer2/Types/IncludedProperty.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.ResourceExplorer2.Types.IncludedProperty+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.ResourceExplorer2.Types.IncludedProperty 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 additional property that describes a resource, that+-- you can optionally include in the view. This lets you view that property+-- in search results, and filter your search results based on the value of+-- the property.+--+-- /See:/ 'newIncludedProperty' smart constructor.+data IncludedProperty = IncludedProperty'+ { -- | The name of the property that is included in this view.+ --+ -- You can specify the following property names for this field:+ --+ -- - @Tags@+ name :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'IncludedProperty' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'includedProperty_name' - The name of the property that is included in this view.+--+-- You can specify the following property names for this field:+--+-- - @Tags@+newIncludedProperty ::+ -- | 'name'+ Prelude.Text ->+ IncludedProperty+newIncludedProperty pName_ =+ IncludedProperty' {name = pName_}++-- | The name of the property that is included in this view.+--+-- You can specify the following property names for this field:+--+-- - @Tags@+includedProperty_name :: Lens.Lens' IncludedProperty Prelude.Text+includedProperty_name = Lens.lens (\IncludedProperty' {name} -> name) (\s@IncludedProperty' {} a -> s {name = a} :: IncludedProperty)++instance Data.FromJSON IncludedProperty where+ parseJSON =+ Data.withObject+ "IncludedProperty"+ ( \x ->+ IncludedProperty' Prelude.<$> (x Data..: "Name")+ )++instance Prelude.Hashable IncludedProperty where+ hashWithSalt _salt IncludedProperty' {..} =+ _salt `Prelude.hashWithSalt` name++instance Prelude.NFData IncludedProperty where+ rnf IncludedProperty' {..} = Prelude.rnf name++instance Data.ToJSON IncludedProperty where+ toJSON IncludedProperty' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("Name" Data..= name)]+ )
+ gen/Amazonka/ResourceExplorer2/Types/Index.hs view
@@ -0,0 +1,142 @@+{-# 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.ResourceExplorer2.Types.Index+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.ResourceExplorer2.Types.Index where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import Amazonka.ResourceExplorer2.Types.IndexType++-- | An index is the data store used by Amazon Web Services Resource Explorer+-- to hold information about your Amazon Web Services resources that the+-- service discovers. Creating an index in an Amazon Web Services Region+-- turns on Resource Explorer and lets it discover your resources.+--+-- By default, an index is /local/, meaning that it contains information+-- about resources in only the same Region as the index. However, you can+-- promote the index of one Region in the account by calling+-- UpdateIndexType to convert it into an aggregator index. The aggregator+-- index receives a replicated copy of the index information from all other+-- Regions where Resource Explorer is turned on. This allows search+-- operations in that Region to return results from all Regions in the+-- account.+--+-- /See:/ 'newIndex' smart constructor.+data Index = Index'+ { -- | The+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+ -- of the index.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Web Services Region in which the index exists.+ region :: Prelude.Maybe Prelude.Text,+ -- | The type of index. It can be one of the following values:+ --+ -- - __LOCAL__ – The index contains information about resources from only+ -- the same Amazon Web Services Region.+ --+ -- - __AGGREGATOR__ – Resource Explorer replicates copies of the indexed+ -- information about resources in all other Amazon Web Services Regions+ -- to the aggregator index. This lets search results in the Region with+ -- the aggregator index to include resources from all Regions in the+ -- account where Resource Explorer is turned on.+ type' :: Prelude.Maybe IndexType+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Index' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'index_arn' - The+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+-- of the index.+--+-- 'region', 'index_region' - The Amazon Web Services Region in which the index exists.+--+-- 'type'', 'index_type' - The type of index. It can be one of the following values:+--+-- - __LOCAL__ – The index contains information about resources from only+-- the same Amazon Web Services Region.+--+-- - __AGGREGATOR__ – Resource Explorer replicates copies of the indexed+-- information about resources in all other Amazon Web Services Regions+-- to the aggregator index. This lets search results in the Region with+-- the aggregator index to include resources from all Regions in the+-- account where Resource Explorer is turned on.+newIndex ::+ Index+newIndex =+ Index'+ { arn = Prelude.Nothing,+ region = Prelude.Nothing,+ type' = Prelude.Nothing+ }++-- | The+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+-- of the index.+index_arn :: Lens.Lens' Index (Prelude.Maybe Prelude.Text)+index_arn = Lens.lens (\Index' {arn} -> arn) (\s@Index' {} a -> s {arn = a} :: Index)++-- | The Amazon Web Services Region in which the index exists.+index_region :: Lens.Lens' Index (Prelude.Maybe Prelude.Text)+index_region = Lens.lens (\Index' {region} -> region) (\s@Index' {} a -> s {region = a} :: Index)++-- | The type of index. It can be one of the following values:+--+-- - __LOCAL__ – The index contains information about resources from only+-- the same Amazon Web Services Region.+--+-- - __AGGREGATOR__ – Resource Explorer replicates copies of the indexed+-- information about resources in all other Amazon Web Services Regions+-- to the aggregator index. This lets search results in the Region with+-- the aggregator index to include resources from all Regions in the+-- account where Resource Explorer is turned on.+index_type :: Lens.Lens' Index (Prelude.Maybe IndexType)+index_type = Lens.lens (\Index' {type'} -> type') (\s@Index' {} a -> s {type' = a} :: Index)++instance Data.FromJSON Index where+ parseJSON =+ Data.withObject+ "Index"+ ( \x ->+ Index'+ Prelude.<$> (x Data..:? "Arn")+ Prelude.<*> (x Data..:? "Region")+ Prelude.<*> (x Data..:? "Type")+ )++instance Prelude.Hashable Index where+ hashWithSalt _salt Index' {..} =+ _salt+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` region+ `Prelude.hashWithSalt` type'++instance Prelude.NFData Index where+ rnf Index' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf region+ `Prelude.seq` Prelude.rnf type'
+ gen/Amazonka/ResourceExplorer2/Types/IndexState.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.ResourceExplorer2.Types.IndexState+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.ResourceExplorer2.Types.IndexState+ ( IndexState+ ( ..,+ IndexState_ACTIVE,+ IndexState_CREATING,+ IndexState_DELETED,+ IndexState_DELETING,+ IndexState_UPDATING+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype IndexState = IndexState'+ { fromIndexState ::+ 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 IndexState_ACTIVE :: IndexState+pattern IndexState_ACTIVE = IndexState' "ACTIVE"++pattern IndexState_CREATING :: IndexState+pattern IndexState_CREATING = IndexState' "CREATING"++pattern IndexState_DELETED :: IndexState+pattern IndexState_DELETED = IndexState' "DELETED"++pattern IndexState_DELETING :: IndexState+pattern IndexState_DELETING = IndexState' "DELETING"++pattern IndexState_UPDATING :: IndexState+pattern IndexState_UPDATING = IndexState' "UPDATING"++{-# COMPLETE+ IndexState_ACTIVE,+ IndexState_CREATING,+ IndexState_DELETED,+ IndexState_DELETING,+ IndexState_UPDATING,+ IndexState'+ #-}
+ gen/Amazonka/ResourceExplorer2/Types/IndexType.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.ResourceExplorer2.Types.IndexType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.ResourceExplorer2.Types.IndexType+ ( IndexType+ ( ..,+ IndexType_AGGREGATOR,+ IndexType_LOCAL+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype IndexType = IndexType'+ { fromIndexType ::+ 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 IndexType_AGGREGATOR :: IndexType+pattern IndexType_AGGREGATOR = IndexType' "AGGREGATOR"++pattern IndexType_LOCAL :: IndexType+pattern IndexType_LOCAL = IndexType' "LOCAL"++{-# COMPLETE+ IndexType_AGGREGATOR,+ IndexType_LOCAL,+ IndexType'+ #-}
+ gen/Amazonka/ResourceExplorer2/Types/Resource.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.ResourceExplorer2.Types.Resource+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.ResourceExplorer2.Types.Resource where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import Amazonka.ResourceExplorer2.Types.ResourceProperty++-- | A resource in Amazon Web Services that Amazon Web Services Resource+-- Explorer has discovered, and for which it has stored information in the+-- index of the Amazon Web Services Region that contains the resource.+--+-- /See:/ 'newResource' smart constructor.+data Resource = Resource'+ { -- | The+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+ -- of the resource.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The date and time that Resource Explorer last queried this resource and+ -- updated the index with the latest information about the resource.+ lastReportedAt :: Prelude.Maybe Data.ISO8601,+ -- | The Amazon Web Services account that owns the resource.+ owningAccountId :: Prelude.Maybe Prelude.Text,+ -- | A structure with additional type-specific details about the resource.+ -- These properties can be added by turning on integration between Resource+ -- Explorer and other Amazon Web Services services.+ properties :: Prelude.Maybe [ResourceProperty],+ -- | The Amazon Web Services Region in which the resource was created and+ -- exists.+ region :: Prelude.Maybe Prelude.Text,+ -- | The type of the resource.+ resourceType :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Web Service that owns the resource and is responsible for+ -- creating and updating it.+ service :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Resource' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'resource_arn' - The+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+-- of the resource.+--+-- 'lastReportedAt', 'resource_lastReportedAt' - The date and time that Resource Explorer last queried this resource and+-- updated the index with the latest information about the resource.+--+-- 'owningAccountId', 'resource_owningAccountId' - The Amazon Web Services account that owns the resource.+--+-- 'properties', 'resource_properties' - A structure with additional type-specific details about the resource.+-- These properties can be added by turning on integration between Resource+-- Explorer and other Amazon Web Services services.+--+-- 'region', 'resource_region' - The Amazon Web Services Region in which the resource was created and+-- exists.+--+-- 'resourceType', 'resource_resourceType' - The type of the resource.+--+-- 'service', 'resource_service' - The Amazon Web Service that owns the resource and is responsible for+-- creating and updating it.+newResource ::+ Resource+newResource =+ Resource'+ { arn = Prelude.Nothing,+ lastReportedAt = Prelude.Nothing,+ owningAccountId = Prelude.Nothing,+ properties = Prelude.Nothing,+ region = Prelude.Nothing,+ resourceType = Prelude.Nothing,+ service = Prelude.Nothing+ }++-- | The+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+-- of the resource.+resource_arn :: Lens.Lens' Resource (Prelude.Maybe Prelude.Text)+resource_arn = Lens.lens (\Resource' {arn} -> arn) (\s@Resource' {} a -> s {arn = a} :: Resource)++-- | The date and time that Resource Explorer last queried this resource and+-- updated the index with the latest information about the resource.+resource_lastReportedAt :: Lens.Lens' Resource (Prelude.Maybe Prelude.UTCTime)+resource_lastReportedAt = Lens.lens (\Resource' {lastReportedAt} -> lastReportedAt) (\s@Resource' {} a -> s {lastReportedAt = a} :: Resource) Prelude.. Lens.mapping Data._Time++-- | The Amazon Web Services account that owns the resource.+resource_owningAccountId :: Lens.Lens' Resource (Prelude.Maybe Prelude.Text)+resource_owningAccountId = Lens.lens (\Resource' {owningAccountId} -> owningAccountId) (\s@Resource' {} a -> s {owningAccountId = a} :: Resource)++-- | A structure with additional type-specific details about the resource.+-- These properties can be added by turning on integration between Resource+-- Explorer and other Amazon Web Services services.+resource_properties :: Lens.Lens' Resource (Prelude.Maybe [ResourceProperty])+resource_properties = Lens.lens (\Resource' {properties} -> properties) (\s@Resource' {} a -> s {properties = a} :: Resource) Prelude.. Lens.mapping Lens.coerced++-- | The Amazon Web Services Region in which the resource was created and+-- exists.+resource_region :: Lens.Lens' Resource (Prelude.Maybe Prelude.Text)+resource_region = Lens.lens (\Resource' {region} -> region) (\s@Resource' {} a -> s {region = a} :: Resource)++-- | The type of the resource.+resource_resourceType :: Lens.Lens' Resource (Prelude.Maybe Prelude.Text)+resource_resourceType = Lens.lens (\Resource' {resourceType} -> resourceType) (\s@Resource' {} a -> s {resourceType = a} :: Resource)++-- | The Amazon Web Service that owns the resource and is responsible for+-- creating and updating it.+resource_service :: Lens.Lens' Resource (Prelude.Maybe Prelude.Text)+resource_service = Lens.lens (\Resource' {service} -> service) (\s@Resource' {} a -> s {service = a} :: Resource)++instance Data.FromJSON Resource where+ parseJSON =+ Data.withObject+ "Resource"+ ( \x ->+ Resource'+ Prelude.<$> (x Data..:? "Arn")+ Prelude.<*> (x Data..:? "LastReportedAt")+ Prelude.<*> (x Data..:? "OwningAccountId")+ Prelude.<*> (x Data..:? "Properties" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "Region")+ Prelude.<*> (x Data..:? "ResourceType")+ Prelude.<*> (x Data..:? "Service")+ )++instance Prelude.Hashable Resource where+ hashWithSalt _salt Resource' {..} =+ _salt+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` lastReportedAt+ `Prelude.hashWithSalt` owningAccountId+ `Prelude.hashWithSalt` properties+ `Prelude.hashWithSalt` region+ `Prelude.hashWithSalt` resourceType+ `Prelude.hashWithSalt` service++instance Prelude.NFData Resource where+ rnf Resource' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf lastReportedAt+ `Prelude.seq` Prelude.rnf owningAccountId+ `Prelude.seq` Prelude.rnf properties+ `Prelude.seq` Prelude.rnf region+ `Prelude.seq` Prelude.rnf resourceType+ `Prelude.seq` Prelude.rnf service
+ gen/Amazonka/ResourceExplorer2/Types/ResourceCount.hs view
@@ -0,0 +1,122 @@+{-# 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.ResourceExplorer2.Types.ResourceCount+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.ResourceExplorer2.Types.ResourceCount 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 number of results that match the query. At this+-- time, Amazon Web Services Resource Explorer doesn\'t count more than+-- 1,000 matches for any query. This structure provides information about+-- whether the query exceeded this limit.+--+-- This field is included in every page when you paginate the results.+--+-- /See:/ 'newResourceCount' smart constructor.+data ResourceCount = ResourceCount'+ { -- | Indicates whether the @TotalResources@ value represents an exhaustive+ -- count of search results.+ --+ -- - If @True@, it indicates that the search was exhaustive. Every+ -- resource that matches the query was counted.+ --+ -- - If @False@, then the search reached the limit of 1,000 matching+ -- results, and stopped counting.+ complete :: Prelude.Maybe Prelude.Bool,+ -- | The number of resources that match the search query. This value can\'t+ -- exceed 1,000. If there are more than 1,000 resources that match the+ -- query, then only 1,000 are counted and the @Complete@ field is set to+ -- false. We recommend that you refine your query to return a smaller+ -- number of results.+ totalResources :: Prelude.Maybe Prelude.Integer+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ResourceCount' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'complete', 'resourceCount_complete' - Indicates whether the @TotalResources@ value represents an exhaustive+-- count of search results.+--+-- - If @True@, it indicates that the search was exhaustive. Every+-- resource that matches the query was counted.+--+-- - If @False@, then the search reached the limit of 1,000 matching+-- results, and stopped counting.+--+-- 'totalResources', 'resourceCount_totalResources' - The number of resources that match the search query. This value can\'t+-- exceed 1,000. If there are more than 1,000 resources that match the+-- query, then only 1,000 are counted and the @Complete@ field is set to+-- false. We recommend that you refine your query to return a smaller+-- number of results.+newResourceCount ::+ ResourceCount+newResourceCount =+ ResourceCount'+ { complete = Prelude.Nothing,+ totalResources = Prelude.Nothing+ }++-- | Indicates whether the @TotalResources@ value represents an exhaustive+-- count of search results.+--+-- - If @True@, it indicates that the search was exhaustive. Every+-- resource that matches the query was counted.+--+-- - If @False@, then the search reached the limit of 1,000 matching+-- results, and stopped counting.+resourceCount_complete :: Lens.Lens' ResourceCount (Prelude.Maybe Prelude.Bool)+resourceCount_complete = Lens.lens (\ResourceCount' {complete} -> complete) (\s@ResourceCount' {} a -> s {complete = a} :: ResourceCount)++-- | The number of resources that match the search query. This value can\'t+-- exceed 1,000. If there are more than 1,000 resources that match the+-- query, then only 1,000 are counted and the @Complete@ field is set to+-- false. We recommend that you refine your query to return a smaller+-- number of results.+resourceCount_totalResources :: Lens.Lens' ResourceCount (Prelude.Maybe Prelude.Integer)+resourceCount_totalResources = Lens.lens (\ResourceCount' {totalResources} -> totalResources) (\s@ResourceCount' {} a -> s {totalResources = a} :: ResourceCount)++instance Data.FromJSON ResourceCount where+ parseJSON =+ Data.withObject+ "ResourceCount"+ ( \x ->+ ResourceCount'+ Prelude.<$> (x Data..:? "Complete")+ Prelude.<*> (x Data..:? "TotalResources")+ )++instance Prelude.Hashable ResourceCount where+ hashWithSalt _salt ResourceCount' {..} =+ _salt+ `Prelude.hashWithSalt` complete+ `Prelude.hashWithSalt` totalResources++instance Prelude.NFData ResourceCount where+ rnf ResourceCount' {..} =+ Prelude.rnf complete+ `Prelude.seq` Prelude.rnf totalResources
+ gen/Amazonka/ResourceExplorer2/Types/ResourceProperty.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.ResourceExplorer2.Types.ResourceProperty+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.ResourceExplorer2.Types.ResourceProperty where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import Amazonka.ResourceExplorer2.Types.Document++-- | A structure that describes a property of a resource.+--+-- /See:/ 'newResourceProperty' smart constructor.+data ResourceProperty = ResourceProperty'+ { -- | Details about this property. The content of this field is a JSON object+ -- that varies based on the resource type.+ data' :: Prelude.Maybe Document,+ -- | The date and time that the information about this resource property was+ -- last updated.+ lastReportedAt :: Prelude.Maybe Data.ISO8601,+ -- | The name of this property of the resource.+ name :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ResourceProperty' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'data'', 'resourceProperty_data' - Details about this property. The content of this field is a JSON object+-- that varies based on the resource type.+--+-- 'lastReportedAt', 'resourceProperty_lastReportedAt' - The date and time that the information about this resource property was+-- last updated.+--+-- 'name', 'resourceProperty_name' - The name of this property of the resource.+newResourceProperty ::+ ResourceProperty+newResourceProperty =+ ResourceProperty'+ { data' = Prelude.Nothing,+ lastReportedAt = Prelude.Nothing,+ name = Prelude.Nothing+ }++-- | Details about this property. The content of this field is a JSON object+-- that varies based on the resource type.+resourceProperty_data :: Lens.Lens' ResourceProperty (Prelude.Maybe Document)+resourceProperty_data = Lens.lens (\ResourceProperty' {data'} -> data') (\s@ResourceProperty' {} a -> s {data' = a} :: ResourceProperty)++-- | The date and time that the information about this resource property was+-- last updated.+resourceProperty_lastReportedAt :: Lens.Lens' ResourceProperty (Prelude.Maybe Prelude.UTCTime)+resourceProperty_lastReportedAt = Lens.lens (\ResourceProperty' {lastReportedAt} -> lastReportedAt) (\s@ResourceProperty' {} a -> s {lastReportedAt = a} :: ResourceProperty) Prelude.. Lens.mapping Data._Time++-- | The name of this property of the resource.+resourceProperty_name :: Lens.Lens' ResourceProperty (Prelude.Maybe Prelude.Text)+resourceProperty_name = Lens.lens (\ResourceProperty' {name} -> name) (\s@ResourceProperty' {} a -> s {name = a} :: ResourceProperty)++instance Data.FromJSON ResourceProperty where+ parseJSON =+ Data.withObject+ "ResourceProperty"+ ( \x ->+ ResourceProperty'+ Prelude.<$> (x Data..:? "Data")+ Prelude.<*> (x Data..:? "LastReportedAt")+ Prelude.<*> (x Data..:? "Name")+ )++instance Prelude.Hashable ResourceProperty where+ hashWithSalt _salt ResourceProperty' {..} =+ _salt+ `Prelude.hashWithSalt` data'+ `Prelude.hashWithSalt` lastReportedAt+ `Prelude.hashWithSalt` name++instance Prelude.NFData ResourceProperty where+ rnf ResourceProperty' {..} =+ Prelude.rnf data'+ `Prelude.seq` Prelude.rnf lastReportedAt+ `Prelude.seq` Prelude.rnf name
+ gen/Amazonka/ResourceExplorer2/Types/SearchFilter.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.ResourceExplorer2.Types.SearchFilter+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.ResourceExplorer2.Types.SearchFilter 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 search filter defines which resources can be part of a search query+-- result set.+--+-- /See:/ 'newSearchFilter' smart constructor.+data SearchFilter = SearchFilter'+ { -- | The string that contains the search keywords, prefixes, and operators to+ -- control the results that can be returned by a Search operation. For more+ -- details, see+ -- <https://docs.aws.amazon.com/resource-explorer/latest/APIReference/about-query-syntax.html Search query syntax>.+ filterString :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SearchFilter' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'filterString', 'searchFilter_filterString' - The string that contains the search keywords, prefixes, and operators to+-- control the results that can be returned by a Search operation. For more+-- details, see+-- <https://docs.aws.amazon.com/resource-explorer/latest/APIReference/about-query-syntax.html Search query syntax>.+newSearchFilter ::+ -- | 'filterString'+ Prelude.Text ->+ SearchFilter+newSearchFilter pFilterString_ =+ SearchFilter' {filterString = pFilterString_}++-- | The string that contains the search keywords, prefixes, and operators to+-- control the results that can be returned by a Search operation. For more+-- details, see+-- <https://docs.aws.amazon.com/resource-explorer/latest/APIReference/about-query-syntax.html Search query syntax>.+searchFilter_filterString :: Lens.Lens' SearchFilter Prelude.Text+searchFilter_filterString = Lens.lens (\SearchFilter' {filterString} -> filterString) (\s@SearchFilter' {} a -> s {filterString = a} :: SearchFilter)++instance Data.FromJSON SearchFilter where+ parseJSON =+ Data.withObject+ "SearchFilter"+ ( \x ->+ SearchFilter' Prelude.<$> (x Data..: "FilterString")+ )++instance Prelude.Hashable SearchFilter where+ hashWithSalt _salt SearchFilter' {..} =+ _salt `Prelude.hashWithSalt` filterString++instance Prelude.NFData SearchFilter where+ rnf SearchFilter' {..} = Prelude.rnf filterString++instance Data.ToJSON SearchFilter where+ toJSON SearchFilter' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("FilterString" Data..= filterString)]+ )
+ gen/Amazonka/ResourceExplorer2/Types/SupportedResourceType.hs view
@@ -0,0 +1,92 @@+{-# 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.ResourceExplorer2.Types.SupportedResourceType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.ResourceExplorer2.Types.SupportedResourceType 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 structure that describes a resource type supported by Amazon Web+-- Services Resource Explorer.+--+-- /See:/ 'newSupportedResourceType' smart constructor.+data SupportedResourceType = SupportedResourceType'+ { -- | The unique identifier of the resource type.+ resourceType :: Prelude.Maybe Prelude.Text,+ -- | The Amazon Web Service that is associated with the resource type. This+ -- is the primary service that lets you create and interact with resources+ -- of this type.+ service :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'SupportedResourceType' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'resourceType', 'supportedResourceType_resourceType' - The unique identifier of the resource type.+--+-- 'service', 'supportedResourceType_service' - The Amazon Web Service that is associated with the resource type. This+-- is the primary service that lets you create and interact with resources+-- of this type.+newSupportedResourceType ::+ SupportedResourceType+newSupportedResourceType =+ SupportedResourceType'+ { resourceType =+ Prelude.Nothing,+ service = Prelude.Nothing+ }++-- | The unique identifier of the resource type.+supportedResourceType_resourceType :: Lens.Lens' SupportedResourceType (Prelude.Maybe Prelude.Text)+supportedResourceType_resourceType = Lens.lens (\SupportedResourceType' {resourceType} -> resourceType) (\s@SupportedResourceType' {} a -> s {resourceType = a} :: SupportedResourceType)++-- | The Amazon Web Service that is associated with the resource type. This+-- is the primary service that lets you create and interact with resources+-- of this type.+supportedResourceType_service :: Lens.Lens' SupportedResourceType (Prelude.Maybe Prelude.Text)+supportedResourceType_service = Lens.lens (\SupportedResourceType' {service} -> service) (\s@SupportedResourceType' {} a -> s {service = a} :: SupportedResourceType)++instance Data.FromJSON SupportedResourceType where+ parseJSON =+ Data.withObject+ "SupportedResourceType"+ ( \x ->+ SupportedResourceType'+ Prelude.<$> (x Data..:? "ResourceType")+ Prelude.<*> (x Data..:? "Service")+ )++instance Prelude.Hashable SupportedResourceType where+ hashWithSalt _salt SupportedResourceType' {..} =+ _salt+ `Prelude.hashWithSalt` resourceType+ `Prelude.hashWithSalt` service++instance Prelude.NFData SupportedResourceType where+ rnf SupportedResourceType' {..} =+ Prelude.rnf resourceType+ `Prelude.seq` Prelude.rnf service
+ gen/Amazonka/ResourceExplorer2/Types/View.hs view
@@ -0,0 +1,177 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.ResourceExplorer2.Types.View+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.ResourceExplorer2.Types.View where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import Amazonka.ResourceExplorer2.Types.IncludedProperty+import Amazonka.ResourceExplorer2.Types.SearchFilter++-- | A view is a structure that defines a set of filters that provide a view+-- into the information in the Amazon Web Services Resource Explorer index.+-- The filters specify which information from the index is visible to the+-- users of the view. For example, you can specify filters that include+-- only resources that are tagged with the key \"ENV\" and the value+-- \"DEVELOPMENT\" in the results returned by this view. You could also+-- create a second view that includes only resources that are tagged with+-- \"ENV\" and \"PRODUCTION\".+--+-- /See:/ 'newView' smart constructor.+data View = View'+ { -- | An array of SearchFilter objects that specify which resources can be+ -- included in the results of queries made using this view.+ filters :: Prelude.Maybe (Data.Sensitive SearchFilter),+ -- | A structure that contains additional information about the view.+ includedProperties :: Prelude.Maybe [IncludedProperty],+ -- | The date and time when this view was last modified.+ lastUpdatedAt :: Prelude.Maybe Data.ISO8601,+ -- | The Amazon Web Services account that owns this view.+ owner :: Prelude.Maybe Prelude.Text,+ -- | An+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+ -- of an Amazon Web Services account, an organization, or an organizational+ -- unit (OU) that specifies whether this view includes resources from only+ -- the specified Amazon Web Services account, all accounts in the specified+ -- organization, or all accounts in the specified OU.+ --+ -- If not specified, the value defaults to the Amazon Web Services account+ -- used to call this operation.+ scope :: Prelude.Maybe Prelude.Text,+ -- | The+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+ -- of the view.+ viewArn :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'View' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'view_filters' - An array of SearchFilter objects that specify which resources can be+-- included in the results of queries made using this view.+--+-- 'includedProperties', 'view_includedProperties' - A structure that contains additional information about the view.+--+-- 'lastUpdatedAt', 'view_lastUpdatedAt' - The date and time when this view was last modified.+--+-- 'owner', 'view_owner' - The Amazon Web Services account that owns this view.+--+-- 'scope', 'view_scope' - An+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+-- of an Amazon Web Services account, an organization, or an organizational+-- unit (OU) that specifies whether this view includes resources from only+-- the specified Amazon Web Services account, all accounts in the specified+-- organization, or all accounts in the specified OU.+--+-- If not specified, the value defaults to the Amazon Web Services account+-- used to call this operation.+--+-- 'viewArn', 'view_viewArn' - The+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+-- of the view.+newView ::+ View+newView =+ View'+ { filters = Prelude.Nothing,+ includedProperties = Prelude.Nothing,+ lastUpdatedAt = Prelude.Nothing,+ owner = Prelude.Nothing,+ scope = Prelude.Nothing,+ viewArn = Prelude.Nothing+ }++-- | An array of SearchFilter objects that specify which resources can be+-- included in the results of queries made using this view.+view_filters :: Lens.Lens' View (Prelude.Maybe SearchFilter)+view_filters = Lens.lens (\View' {filters} -> filters) (\s@View' {} a -> s {filters = a} :: View) Prelude.. Lens.mapping Data._Sensitive++-- | A structure that contains additional information about the view.+view_includedProperties :: Lens.Lens' View (Prelude.Maybe [IncludedProperty])+view_includedProperties = Lens.lens (\View' {includedProperties} -> includedProperties) (\s@View' {} a -> s {includedProperties = a} :: View) Prelude.. Lens.mapping Lens.coerced++-- | The date and time when this view was last modified.+view_lastUpdatedAt :: Lens.Lens' View (Prelude.Maybe Prelude.UTCTime)+view_lastUpdatedAt = Lens.lens (\View' {lastUpdatedAt} -> lastUpdatedAt) (\s@View' {} a -> s {lastUpdatedAt = a} :: View) Prelude.. Lens.mapping Data._Time++-- | The Amazon Web Services account that owns this view.+view_owner :: Lens.Lens' View (Prelude.Maybe Prelude.Text)+view_owner = Lens.lens (\View' {owner} -> owner) (\s@View' {} a -> s {owner = a} :: View)++-- | An+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+-- of an Amazon Web Services account, an organization, or an organizational+-- unit (OU) that specifies whether this view includes resources from only+-- the specified Amazon Web Services account, all accounts in the specified+-- organization, or all accounts in the specified OU.+--+-- If not specified, the value defaults to the Amazon Web Services account+-- used to call this operation.+view_scope :: Lens.Lens' View (Prelude.Maybe Prelude.Text)+view_scope = Lens.lens (\View' {scope} -> scope) (\s@View' {} a -> s {scope = a} :: View)++-- | The+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+-- of the view.+view_viewArn :: Lens.Lens' View (Prelude.Maybe Prelude.Text)+view_viewArn = Lens.lens (\View' {viewArn} -> viewArn) (\s@View' {} a -> s {viewArn = a} :: View)++instance Data.FromJSON View where+ parseJSON =+ Data.withObject+ "View"+ ( \x ->+ View'+ Prelude.<$> (x Data..:? "Filters")+ Prelude.<*> ( x+ Data..:? "IncludedProperties"+ Data..!= Prelude.mempty+ )+ Prelude.<*> (x Data..:? "LastUpdatedAt")+ Prelude.<*> (x Data..:? "Owner")+ Prelude.<*> (x Data..:? "Scope")+ Prelude.<*> (x Data..:? "ViewArn")+ )++instance Prelude.Hashable View where+ hashWithSalt _salt View' {..} =+ _salt+ `Prelude.hashWithSalt` filters+ `Prelude.hashWithSalt` includedProperties+ `Prelude.hashWithSalt` lastUpdatedAt+ `Prelude.hashWithSalt` owner+ `Prelude.hashWithSalt` scope+ `Prelude.hashWithSalt` viewArn++instance Prelude.NFData View where+ rnf View' {..} =+ Prelude.rnf filters+ `Prelude.seq` Prelude.rnf includedProperties+ `Prelude.seq` Prelude.rnf lastUpdatedAt+ `Prelude.seq` Prelude.rnf owner+ `Prelude.seq` Prelude.rnf scope+ `Prelude.seq` Prelude.rnf viewArn
+ gen/Amazonka/ResourceExplorer2/UntagResource.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.ResourceExplorer2.UntagResource+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Removes one or more tag key and value pairs from an Amazon Web Services+-- Resource Explorer view or index.+module Amazonka.ResourceExplorer2.UntagResource+ ( -- * Creating a Request+ UntagResource (..),+ newUntagResource,++ -- * Request Lenses+ untagResource_resourceArn,+ untagResource_tagKeys,++ -- * Destructuring the Response+ UntagResourceResponse (..),+ newUntagResourceResponse,++ -- * Response Lenses+ untagResourceResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import Amazonka.ResourceExplorer2.Types+import qualified Amazonka.Response as Response++-- | /See:/ 'newUntagResource' smart constructor.+data UntagResource = UntagResource'+ { -- | The Amazon Resource Name (ARN) of the view or index that you want to+ -- remove tags from.+ resourceArn :: Prelude.Text,+ -- | A list of the keys for the tags that you want to remove from the+ -- specified view or index.+ tagKeys :: [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UntagResource' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'resourceArn', 'untagResource_resourceArn' - The Amazon Resource Name (ARN) of the view or index that you want to+-- remove tags from.+--+-- 'tagKeys', 'untagResource_tagKeys' - A list of the keys for the tags that you want to remove from the+-- specified view or index.+newUntagResource ::+ -- | 'resourceArn'+ Prelude.Text ->+ UntagResource+newUntagResource pResourceArn_ =+ UntagResource'+ { resourceArn = pResourceArn_,+ tagKeys = Prelude.mempty+ }++-- | The Amazon Resource Name (ARN) of the view or index that you want to+-- remove tags from.+untagResource_resourceArn :: Lens.Lens' UntagResource Prelude.Text+untagResource_resourceArn = Lens.lens (\UntagResource' {resourceArn} -> resourceArn) (\s@UntagResource' {} a -> s {resourceArn = a} :: UntagResource)++-- | A list of the keys for the tags that you want to remove from the+-- specified view or index.+untagResource_tagKeys :: Lens.Lens' UntagResource [Prelude.Text]+untagResource_tagKeys = Lens.lens (\UntagResource' {tagKeys} -> tagKeys) (\s@UntagResource' {} a -> s {tagKeys = a} :: UntagResource) Prelude.. Lens.coerced++instance Core.AWSRequest UntagResource where+ type+ AWSResponse UntagResource =+ UntagResourceResponse+ request overrides =+ Request.delete (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ UntagResourceResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable UntagResource where+ hashWithSalt _salt UntagResource' {..} =+ _salt+ `Prelude.hashWithSalt` resourceArn+ `Prelude.hashWithSalt` tagKeys++instance Prelude.NFData UntagResource where+ rnf UntagResource' {..} =+ Prelude.rnf resourceArn+ `Prelude.seq` Prelude.rnf tagKeys++instance Data.ToHeaders UntagResource where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToPath UntagResource where+ toPath UntagResource' {..} =+ Prelude.mconcat ["/tags/", Data.toBS resourceArn]++instance Data.ToQuery UntagResource where+ toQuery UntagResource' {..} =+ Prelude.mconcat+ ["tagKeys" Data.=: Data.toQueryList "member" tagKeys]++-- | /See:/ 'newUntagResourceResponse' smart constructor.+data UntagResourceResponse = UntagResourceResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UntagResourceResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'untagResourceResponse_httpStatus' - The response's http status code.+newUntagResourceResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ UntagResourceResponse+newUntagResourceResponse pHttpStatus_ =+ UntagResourceResponse' {httpStatus = pHttpStatus_}++-- | The response's http status code.+untagResourceResponse_httpStatus :: Lens.Lens' UntagResourceResponse Prelude.Int+untagResourceResponse_httpStatus = Lens.lens (\UntagResourceResponse' {httpStatus} -> httpStatus) (\s@UntagResourceResponse' {} a -> s {httpStatus = a} :: UntagResourceResponse)++instance Prelude.NFData UntagResourceResponse where+ rnf UntagResourceResponse' {..} =+ Prelude.rnf httpStatus
+ gen/Amazonka/ResourceExplorer2/UpdateIndexType.hs view
@@ -0,0 +1,294 @@+{-# 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.ResourceExplorer2.UpdateIndexType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Changes the type of the index from one of the following types to the+-- other. For more information about indexes and the role they perform in+-- Amazon Web Services Resource Explorer, see+-- <https://docs.aws.amazon.com/resource-explorer/latest/userguide/manage-aggregator-region.html Turning on cross-Region search by creating an aggregator index>+-- in the /Amazon Web Services Resource Explorer User Guide/.+--+-- - __@AGGREGATOR@ index type__+--+-- The index contains information about resources from all Amazon Web+-- Services Regions in the Amazon Web Services account in which you\'ve+-- created a Resource Explorer index. Resource information from all+-- other Regions is replicated to this Region\'s index.+--+-- When you change the index type to @AGGREGATOR@, Resource Explorer+-- turns on replication of all discovered resource information from the+-- other Amazon Web Services Regions in your account to this index. You+-- can then, from this Region only, perform resource search queries+-- that span all Amazon Web Services Regions in the Amazon Web Services+-- account. Turning on replication from all other Regions is performed+-- by asynchronous background tasks. You can check the status of the+-- asynchronous tasks by using the GetIndex operation. When the+-- asynchronous tasks complete, the @Status@ response of that operation+-- changes from @UPDATING@ to @ACTIVE@. After that, you can start to+-- see results from other Amazon Web Services Regions in query results.+-- However, it can take several hours for replication from all other+-- Regions to complete.+--+-- You can have only one aggregator index per Amazon Web Services+-- account. Before you can promote a different index to be the+-- aggregator index for the account, you must first demote the existing+-- aggregator index to type @LOCAL@.+--+-- - __@LOCAL@ index type__+--+-- The index contains information about resources in only the Amazon+-- Web Services Region in which the index exists. If an aggregator+-- index in another Region exists, then information in this local index+-- is replicated to the aggregator index.+--+-- When you change the index type to @LOCAL@, Resource Explorer turns+-- off the replication of resource information from all other Amazon+-- Web Services Regions in the Amazon Web Services account to this+-- Region. The aggregator index remains in the @UPDATING@ state until+-- all replication with other Regions successfully stops. You can check+-- the status of the asynchronous task by using the GetIndex operation.+-- When Resource Explorer successfully stops all replication with other+-- Regions, the @Status@ response of that operation changes from+-- @UPDATING@ to @ACTIVE@. Separately, the resource information from+-- other Regions that was previously stored in the index is deleted+-- within 30 days by another background task. Until that asynchronous+-- task completes, some results from other Regions can continue to+-- appear in search results.+--+-- After you demote an aggregator index to a local index, you must wait+-- 24 hours before you can promote another index to be the new+-- aggregator index for the account.+module Amazonka.ResourceExplorer2.UpdateIndexType+ ( -- * Creating a Request+ UpdateIndexType (..),+ newUpdateIndexType,++ -- * Request Lenses+ updateIndexType_arn,+ updateIndexType_type,++ -- * Destructuring the Response+ UpdateIndexTypeResponse (..),+ newUpdateIndexTypeResponse,++ -- * Response Lenses+ updateIndexTypeResponse_arn,+ updateIndexTypeResponse_lastUpdatedAt,+ updateIndexTypeResponse_state,+ updateIndexTypeResponse_type,+ updateIndexTypeResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import Amazonka.ResourceExplorer2.Types+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateIndexType' smart constructor.+data UpdateIndexType = UpdateIndexType'+ { -- | The+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+ -- of the index that you want to update.+ arn :: Prelude.Text,+ -- | The type of the index. To understand the difference between @LOCAL@ and+ -- @AGGREGATOR@, see+ -- <https://docs.aws.amazon.com/resource-explorer/latest/userguide/manage-aggregator-region.html Turning on cross-Region search>+ -- in the /Amazon Web Services Resource Explorer User Guide/.+ type' :: IndexType+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateIndexType' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'updateIndexType_arn' - The+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+-- of the index that you want to update.+--+-- 'type'', 'updateIndexType_type' - The type of the index. To understand the difference between @LOCAL@ and+-- @AGGREGATOR@, see+-- <https://docs.aws.amazon.com/resource-explorer/latest/userguide/manage-aggregator-region.html Turning on cross-Region search>+-- in the /Amazon Web Services Resource Explorer User Guide/.+newUpdateIndexType ::+ -- | 'arn'+ Prelude.Text ->+ -- | 'type''+ IndexType ->+ UpdateIndexType+newUpdateIndexType pArn_ pType_ =+ UpdateIndexType' {arn = pArn_, type' = pType_}++-- | The+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+-- of the index that you want to update.+updateIndexType_arn :: Lens.Lens' UpdateIndexType Prelude.Text+updateIndexType_arn = Lens.lens (\UpdateIndexType' {arn} -> arn) (\s@UpdateIndexType' {} a -> s {arn = a} :: UpdateIndexType)++-- | The type of the index. To understand the difference between @LOCAL@ and+-- @AGGREGATOR@, see+-- <https://docs.aws.amazon.com/resource-explorer/latest/userguide/manage-aggregator-region.html Turning on cross-Region search>+-- in the /Amazon Web Services Resource Explorer User Guide/.+updateIndexType_type :: Lens.Lens' UpdateIndexType IndexType+updateIndexType_type = Lens.lens (\UpdateIndexType' {type'} -> type') (\s@UpdateIndexType' {} a -> s {type' = a} :: UpdateIndexType)++instance Core.AWSRequest UpdateIndexType where+ type+ AWSResponse UpdateIndexType =+ UpdateIndexTypeResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ UpdateIndexTypeResponse'+ Prelude.<$> (x Data..?> "Arn")+ Prelude.<*> (x Data..?> "LastUpdatedAt")+ Prelude.<*> (x Data..?> "State")+ Prelude.<*> (x Data..?> "Type")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable UpdateIndexType where+ hashWithSalt _salt UpdateIndexType' {..} =+ _salt+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` type'++instance Prelude.NFData UpdateIndexType where+ rnf UpdateIndexType' {..} =+ Prelude.rnf arn `Prelude.seq` Prelude.rnf type'++instance Data.ToHeaders UpdateIndexType where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON UpdateIndexType where+ toJSON UpdateIndexType' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("Arn" Data..= arn),+ Prelude.Just ("Type" Data..= type')+ ]+ )++instance Data.ToPath UpdateIndexType where+ toPath = Prelude.const "/UpdateIndexType"++instance Data.ToQuery UpdateIndexType where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newUpdateIndexTypeResponse' smart constructor.+data UpdateIndexTypeResponse = UpdateIndexTypeResponse'+ { -- | The+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+ -- of the index that you updated.+ arn :: Prelude.Maybe Prelude.Text,+ -- | The date and timestamp when the index was last updated.+ lastUpdatedAt :: Prelude.Maybe Data.ISO8601,+ -- | Indicates the state of the request to update the index. This operation+ -- is asynchronous. Call the GetIndex operation to check for changes.+ state :: Prelude.Maybe IndexState,+ -- | Specifies the type of the specified index after the operation completes.+ type' :: Prelude.Maybe IndexType,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateIndexTypeResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'updateIndexTypeResponse_arn' - The+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+-- of the index that you updated.+--+-- 'lastUpdatedAt', 'updateIndexTypeResponse_lastUpdatedAt' - The date and timestamp when the index was last updated.+--+-- 'state', 'updateIndexTypeResponse_state' - Indicates the state of the request to update the index. This operation+-- is asynchronous. Call the GetIndex operation to check for changes.+--+-- 'type'', 'updateIndexTypeResponse_type' - Specifies the type of the specified index after the operation completes.+--+-- 'httpStatus', 'updateIndexTypeResponse_httpStatus' - The response's http status code.+newUpdateIndexTypeResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ UpdateIndexTypeResponse+newUpdateIndexTypeResponse pHttpStatus_ =+ UpdateIndexTypeResponse'+ { arn = Prelude.Nothing,+ lastUpdatedAt = Prelude.Nothing,+ state = Prelude.Nothing,+ type' = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | The+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+-- of the index that you updated.+updateIndexTypeResponse_arn :: Lens.Lens' UpdateIndexTypeResponse (Prelude.Maybe Prelude.Text)+updateIndexTypeResponse_arn = Lens.lens (\UpdateIndexTypeResponse' {arn} -> arn) (\s@UpdateIndexTypeResponse' {} a -> s {arn = a} :: UpdateIndexTypeResponse)++-- | The date and timestamp when the index was last updated.+updateIndexTypeResponse_lastUpdatedAt :: Lens.Lens' UpdateIndexTypeResponse (Prelude.Maybe Prelude.UTCTime)+updateIndexTypeResponse_lastUpdatedAt = Lens.lens (\UpdateIndexTypeResponse' {lastUpdatedAt} -> lastUpdatedAt) (\s@UpdateIndexTypeResponse' {} a -> s {lastUpdatedAt = a} :: UpdateIndexTypeResponse) Prelude.. Lens.mapping Data._Time++-- | Indicates the state of the request to update the index. This operation+-- is asynchronous. Call the GetIndex operation to check for changes.+updateIndexTypeResponse_state :: Lens.Lens' UpdateIndexTypeResponse (Prelude.Maybe IndexState)+updateIndexTypeResponse_state = Lens.lens (\UpdateIndexTypeResponse' {state} -> state) (\s@UpdateIndexTypeResponse' {} a -> s {state = a} :: UpdateIndexTypeResponse)++-- | Specifies the type of the specified index after the operation completes.+updateIndexTypeResponse_type :: Lens.Lens' UpdateIndexTypeResponse (Prelude.Maybe IndexType)+updateIndexTypeResponse_type = Lens.lens (\UpdateIndexTypeResponse' {type'} -> type') (\s@UpdateIndexTypeResponse' {} a -> s {type' = a} :: UpdateIndexTypeResponse)++-- | The response's http status code.+updateIndexTypeResponse_httpStatus :: Lens.Lens' UpdateIndexTypeResponse Prelude.Int+updateIndexTypeResponse_httpStatus = Lens.lens (\UpdateIndexTypeResponse' {httpStatus} -> httpStatus) (\s@UpdateIndexTypeResponse' {} a -> s {httpStatus = a} :: UpdateIndexTypeResponse)++instance Prelude.NFData UpdateIndexTypeResponse where+ rnf UpdateIndexTypeResponse' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf lastUpdatedAt+ `Prelude.seq` Prelude.rnf state+ `Prelude.seq` Prelude.rnf type'+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/ResourceExplorer2/UpdateView.hs view
@@ -0,0 +1,264 @@+{-# 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.ResourceExplorer2.UpdateView+-- 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 some of the details of a view. You can change the filter string+-- and the list of included properties. You can\'t change the name of the+-- view.+module Amazonka.ResourceExplorer2.UpdateView+ ( -- * Creating a Request+ UpdateView (..),+ newUpdateView,++ -- * Request Lenses+ updateView_filters,+ updateView_includedProperties,+ updateView_viewArn,++ -- * Destructuring the Response+ UpdateViewResponse (..),+ newUpdateViewResponse,++ -- * Response Lenses+ updateViewResponse_view,+ updateViewResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import Amazonka.ResourceExplorer2.Types+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateView' smart constructor.+data UpdateView = UpdateView'+ { -- | An array of strings that specify which resources are included in the+ -- results of queries made using this view. When you use this view in a+ -- Search operation, the filter string is combined with the search\'s+ -- @QueryString@ parameter using a logical @AND@ operator.+ --+ -- For information about the supported syntax, see+ -- <https://docs.aws.amazon.com/resource-explorer/latest/userguide/using-search-query-syntax.html Search query reference for Resource Explorer>+ -- in the /Amazon Web Services Resource Explorer User Guide/.+ --+ -- This query string in the context of this operation supports only+ -- <https://docs.aws.amazon.com/resource-explorer/latest/userguide/using-search-query-syntax.html#query-syntax-filters filter prefixes>+ -- with optional+ -- <https://docs.aws.amazon.com/resource-explorer/latest/userguide/using-search-query-syntax.html#query-syntax-operators operators>.+ -- It doesn\'t support free-form text. For example, the string+ -- @region:us* service:ec2 -tag:stage=prod@ includes all Amazon EC2+ -- resources in any Amazon Web Services Region that begins with the letters+ -- @us@ and is /not/ tagged with a key @Stage@ that has the value @prod@.+ filters :: Prelude.Maybe (Data.Sensitive SearchFilter),+ -- | Specifies optional fields that you want included in search results from+ -- this view. It is a list of objects that each describe a field to+ -- include.+ --+ -- The default is an empty list, with no optional fields included in the+ -- results.+ includedProperties :: Prelude.Maybe [IncludedProperty],+ -- | The+ -- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+ -- of the view that you want to modify.+ viewArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateView' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'updateView_filters' - An array of strings that specify which resources are included in the+-- results of queries made using this view. When you use this view in a+-- Search operation, the filter string is combined with the search\'s+-- @QueryString@ parameter using a logical @AND@ operator.+--+-- For information about the supported syntax, see+-- <https://docs.aws.amazon.com/resource-explorer/latest/userguide/using-search-query-syntax.html Search query reference for Resource Explorer>+-- in the /Amazon Web Services Resource Explorer User Guide/.+--+-- This query string in the context of this operation supports only+-- <https://docs.aws.amazon.com/resource-explorer/latest/userguide/using-search-query-syntax.html#query-syntax-filters filter prefixes>+-- with optional+-- <https://docs.aws.amazon.com/resource-explorer/latest/userguide/using-search-query-syntax.html#query-syntax-operators operators>.+-- It doesn\'t support free-form text. For example, the string+-- @region:us* service:ec2 -tag:stage=prod@ includes all Amazon EC2+-- resources in any Amazon Web Services Region that begins with the letters+-- @us@ and is /not/ tagged with a key @Stage@ that has the value @prod@.+--+-- 'includedProperties', 'updateView_includedProperties' - Specifies optional fields that you want included in search results from+-- this view. It is a list of objects that each describe a field to+-- include.+--+-- The default is an empty list, with no optional fields included in the+-- results.+--+-- 'viewArn', 'updateView_viewArn' - The+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+-- of the view that you want to modify.+newUpdateView ::+ -- | 'viewArn'+ Prelude.Text ->+ UpdateView+newUpdateView pViewArn_ =+ UpdateView'+ { filters = Prelude.Nothing,+ includedProperties = Prelude.Nothing,+ viewArn = pViewArn_+ }++-- | An array of strings that specify which resources are included in the+-- results of queries made using this view. When you use this view in a+-- Search operation, the filter string is combined with the search\'s+-- @QueryString@ parameter using a logical @AND@ operator.+--+-- For information about the supported syntax, see+-- <https://docs.aws.amazon.com/resource-explorer/latest/userguide/using-search-query-syntax.html Search query reference for Resource Explorer>+-- in the /Amazon Web Services Resource Explorer User Guide/.+--+-- This query string in the context of this operation supports only+-- <https://docs.aws.amazon.com/resource-explorer/latest/userguide/using-search-query-syntax.html#query-syntax-filters filter prefixes>+-- with optional+-- <https://docs.aws.amazon.com/resource-explorer/latest/userguide/using-search-query-syntax.html#query-syntax-operators operators>.+-- It doesn\'t support free-form text. For example, the string+-- @region:us* service:ec2 -tag:stage=prod@ includes all Amazon EC2+-- resources in any Amazon Web Services Region that begins with the letters+-- @us@ and is /not/ tagged with a key @Stage@ that has the value @prod@.+updateView_filters :: Lens.Lens' UpdateView (Prelude.Maybe SearchFilter)+updateView_filters = Lens.lens (\UpdateView' {filters} -> filters) (\s@UpdateView' {} a -> s {filters = a} :: UpdateView) Prelude.. Lens.mapping Data._Sensitive++-- | Specifies optional fields that you want included in search results from+-- this view. It is a list of objects that each describe a field to+-- include.+--+-- The default is an empty list, with no optional fields included in the+-- results.+updateView_includedProperties :: Lens.Lens' UpdateView (Prelude.Maybe [IncludedProperty])+updateView_includedProperties = Lens.lens (\UpdateView' {includedProperties} -> includedProperties) (\s@UpdateView' {} a -> s {includedProperties = a} :: UpdateView) Prelude.. Lens.mapping Lens.coerced++-- | The+-- <https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html Amazon resource name (ARN)>+-- of the view that you want to modify.+updateView_viewArn :: Lens.Lens' UpdateView Prelude.Text+updateView_viewArn = Lens.lens (\UpdateView' {viewArn} -> viewArn) (\s@UpdateView' {} a -> s {viewArn = a} :: UpdateView)++instance Core.AWSRequest UpdateView where+ type AWSResponse UpdateView = UpdateViewResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ UpdateViewResponse'+ Prelude.<$> (x Data..?> "View")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable UpdateView where+ hashWithSalt _salt UpdateView' {..} =+ _salt+ `Prelude.hashWithSalt` filters+ `Prelude.hashWithSalt` includedProperties+ `Prelude.hashWithSalt` viewArn++instance Prelude.NFData UpdateView where+ rnf UpdateView' {..} =+ Prelude.rnf filters+ `Prelude.seq` Prelude.rnf includedProperties+ `Prelude.seq` Prelude.rnf viewArn++instance Data.ToHeaders UpdateView where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON UpdateView where+ toJSON UpdateView' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("Filters" Data..=) Prelude.<$> filters,+ ("IncludedProperties" Data..=)+ Prelude.<$> includedProperties,+ Prelude.Just ("ViewArn" Data..= viewArn)+ ]+ )++instance Data.ToPath UpdateView where+ toPath = Prelude.const "/UpdateView"++instance Data.ToQuery UpdateView where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newUpdateViewResponse' smart constructor.+data UpdateViewResponse = UpdateViewResponse'+ { -- | Details about the view that you changed with this operation.+ view :: Prelude.Maybe View,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateViewResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'view', 'updateViewResponse_view' - Details about the view that you changed with this operation.+--+-- 'httpStatus', 'updateViewResponse_httpStatus' - The response's http status code.+newUpdateViewResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ UpdateViewResponse+newUpdateViewResponse pHttpStatus_ =+ UpdateViewResponse'+ { view = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Details about the view that you changed with this operation.+updateViewResponse_view :: Lens.Lens' UpdateViewResponse (Prelude.Maybe View)+updateViewResponse_view = Lens.lens (\UpdateViewResponse' {view} -> view) (\s@UpdateViewResponse' {} a -> s {view = a} :: UpdateViewResponse)++-- | The response's http status code.+updateViewResponse_httpStatus :: Lens.Lens' UpdateViewResponse Prelude.Int+updateViewResponse_httpStatus = Lens.lens (\UpdateViewResponse' {httpStatus} -> httpStatus) (\s@UpdateViewResponse' {} a -> s {httpStatus = a} :: UpdateViewResponse)++instance Prelude.NFData UpdateViewResponse where+ rnf UpdateViewResponse' {..} =+ Prelude.rnf view+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/ResourceExplorer2/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.ResourceExplorer2.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.ResourceExplorer2.Waiters where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import Amazonka.ResourceExplorer2.Lens+import Amazonka.ResourceExplorer2.Types
+ src/.gitkeep view
+ test/Main.hs view
@@ -0,0 +1,23 @@+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Main+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Main (main) where++import Test.Amazonka.ResourceExplorer2+import Test.Amazonka.ResourceExplorer2.Internal+import Test.Tasty++main :: IO ()+main =+ defaultMain $+ testGroup+ "ResourceExplorer2"+ [ testGroup "tests" tests,+ testGroup "fixtures" fixtures+ ]
+ test/Test/Amazonka/Gen/ResourceExplorer2.hs view
@@ -0,0 +1,418 @@+{-# 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.ResourceExplorer2+-- Copyright : (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.ResourceExplorer2 where++import Amazonka.ResourceExplorer2+import qualified Data.Proxy as Proxy+import Test.Amazonka.Fixture+import Test.Amazonka.Prelude+import Test.Amazonka.ResourceExplorer2.Internal+import Test.Tasty++-- Auto-generated: the actual test selection needs to be manually placed into+-- the top-level so that real test data can be incrementally added.+--+-- This commented snippet is what the entire set should look like:++-- fixtures :: TestTree+-- fixtures =+-- [ testGroup "request"+-- [ requestAssociateDefaultView $+-- newAssociateDefaultView+--+-- , requestBatchGetView $+-- newBatchGetView+--+-- , requestCreateIndex $+-- newCreateIndex+--+-- , requestCreateView $+-- newCreateView+--+-- , requestDeleteIndex $+-- newDeleteIndex+--+-- , requestDeleteView $+-- newDeleteView+--+-- , requestDisassociateDefaultView $+-- newDisassociateDefaultView+--+-- , requestGetDefaultView $+-- newGetDefaultView+--+-- , requestGetIndex $+-- newGetIndex+--+-- , requestGetView $+-- newGetView+--+-- , requestListIndexes $+-- newListIndexes+--+-- , requestListSupportedResourceTypes $+-- newListSupportedResourceTypes+--+-- , requestListTagsForResource $+-- newListTagsForResource+--+-- , requestListViews $+-- newListViews+--+-- , requestSearch $+-- newSearch+--+-- , requestTagResource $+-- newTagResource+--+-- , requestUntagResource $+-- newUntagResource+--+-- , requestUpdateIndexType $+-- newUpdateIndexType+--+-- , requestUpdateView $+-- newUpdateView+--+-- ]++-- , testGroup "response"+-- [ responseAssociateDefaultView $+-- newAssociateDefaultViewResponse+--+-- , responseBatchGetView $+-- newBatchGetViewResponse+--+-- , responseCreateIndex $+-- newCreateIndexResponse+--+-- , responseCreateView $+-- newCreateViewResponse+--+-- , responseDeleteIndex $+-- newDeleteIndexResponse+--+-- , responseDeleteView $+-- newDeleteViewResponse+--+-- , responseDisassociateDefaultView $+-- newDisassociateDefaultViewResponse+--+-- , responseGetDefaultView $+-- newGetDefaultViewResponse+--+-- , responseGetIndex $+-- newGetIndexResponse+--+-- , responseGetView $+-- newGetViewResponse+--+-- , responseListIndexes $+-- newListIndexesResponse+--+-- , responseListSupportedResourceTypes $+-- newListSupportedResourceTypesResponse+--+-- , responseListTagsForResource $+-- newListTagsForResourceResponse+--+-- , responseListViews $+-- newListViewsResponse+--+-- , responseSearch $+-- newSearchResponse+--+-- , responseTagResource $+-- newTagResourceResponse+--+-- , responseUntagResource $+-- newUntagResourceResponse+--+-- , responseUpdateIndexType $+-- newUpdateIndexTypeResponse+--+-- , responseUpdateView $+-- newUpdateViewResponse+--+-- ]+-- ]++-- Requests++requestAssociateDefaultView :: AssociateDefaultView -> TestTree+requestAssociateDefaultView =+ req+ "AssociateDefaultView"+ "fixture/AssociateDefaultView.yaml"++requestBatchGetView :: BatchGetView -> TestTree+requestBatchGetView =+ req+ "BatchGetView"+ "fixture/BatchGetView.yaml"++requestCreateIndex :: CreateIndex -> TestTree+requestCreateIndex =+ req+ "CreateIndex"+ "fixture/CreateIndex.yaml"++requestCreateView :: CreateView -> TestTree+requestCreateView =+ req+ "CreateView"+ "fixture/CreateView.yaml"++requestDeleteIndex :: DeleteIndex -> TestTree+requestDeleteIndex =+ req+ "DeleteIndex"+ "fixture/DeleteIndex.yaml"++requestDeleteView :: DeleteView -> TestTree+requestDeleteView =+ req+ "DeleteView"+ "fixture/DeleteView.yaml"++requestDisassociateDefaultView :: DisassociateDefaultView -> TestTree+requestDisassociateDefaultView =+ req+ "DisassociateDefaultView"+ "fixture/DisassociateDefaultView.yaml"++requestGetDefaultView :: GetDefaultView -> TestTree+requestGetDefaultView =+ req+ "GetDefaultView"+ "fixture/GetDefaultView.yaml"++requestGetIndex :: GetIndex -> TestTree+requestGetIndex =+ req+ "GetIndex"+ "fixture/GetIndex.yaml"++requestGetView :: GetView -> TestTree+requestGetView =+ req+ "GetView"+ "fixture/GetView.yaml"++requestListIndexes :: ListIndexes -> TestTree+requestListIndexes =+ req+ "ListIndexes"+ "fixture/ListIndexes.yaml"++requestListSupportedResourceTypes :: ListSupportedResourceTypes -> TestTree+requestListSupportedResourceTypes =+ req+ "ListSupportedResourceTypes"+ "fixture/ListSupportedResourceTypes.yaml"++requestListTagsForResource :: ListTagsForResource -> TestTree+requestListTagsForResource =+ req+ "ListTagsForResource"+ "fixture/ListTagsForResource.yaml"++requestListViews :: ListViews -> TestTree+requestListViews =+ req+ "ListViews"+ "fixture/ListViews.yaml"++requestSearch :: Search -> TestTree+requestSearch =+ req+ "Search"+ "fixture/Search.yaml"++requestTagResource :: TagResource -> TestTree+requestTagResource =+ req+ "TagResource"+ "fixture/TagResource.yaml"++requestUntagResource :: UntagResource -> TestTree+requestUntagResource =+ req+ "UntagResource"+ "fixture/UntagResource.yaml"++requestUpdateIndexType :: UpdateIndexType -> TestTree+requestUpdateIndexType =+ req+ "UpdateIndexType"+ "fixture/UpdateIndexType.yaml"++requestUpdateView :: UpdateView -> TestTree+requestUpdateView =+ req+ "UpdateView"+ "fixture/UpdateView.yaml"++-- Responses++responseAssociateDefaultView :: AssociateDefaultViewResponse -> TestTree+responseAssociateDefaultView =+ res+ "AssociateDefaultViewResponse"+ "fixture/AssociateDefaultViewResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy AssociateDefaultView)++responseBatchGetView :: BatchGetViewResponse -> TestTree+responseBatchGetView =+ res+ "BatchGetViewResponse"+ "fixture/BatchGetViewResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy BatchGetView)++responseCreateIndex :: CreateIndexResponse -> TestTree+responseCreateIndex =+ res+ "CreateIndexResponse"+ "fixture/CreateIndexResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateIndex)++responseCreateView :: CreateViewResponse -> TestTree+responseCreateView =+ res+ "CreateViewResponse"+ "fixture/CreateViewResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy CreateView)++responseDeleteIndex :: DeleteIndexResponse -> TestTree+responseDeleteIndex =+ res+ "DeleteIndexResponse"+ "fixture/DeleteIndexResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteIndex)++responseDeleteView :: DeleteViewResponse -> TestTree+responseDeleteView =+ res+ "DeleteViewResponse"+ "fixture/DeleteViewResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteView)++responseDisassociateDefaultView :: DisassociateDefaultViewResponse -> TestTree+responseDisassociateDefaultView =+ res+ "DisassociateDefaultViewResponse"+ "fixture/DisassociateDefaultViewResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DisassociateDefaultView)++responseGetDefaultView :: GetDefaultViewResponse -> TestTree+responseGetDefaultView =+ res+ "GetDefaultViewResponse"+ "fixture/GetDefaultViewResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetDefaultView)++responseGetIndex :: GetIndexResponse -> TestTree+responseGetIndex =+ res+ "GetIndexResponse"+ "fixture/GetIndexResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetIndex)++responseGetView :: GetViewResponse -> TestTree+responseGetView =+ res+ "GetViewResponse"+ "fixture/GetViewResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetView)++responseListIndexes :: ListIndexesResponse -> TestTree+responseListIndexes =+ res+ "ListIndexesResponse"+ "fixture/ListIndexesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListIndexes)++responseListSupportedResourceTypes :: ListSupportedResourceTypesResponse -> TestTree+responseListSupportedResourceTypes =+ res+ "ListSupportedResourceTypesResponse"+ "fixture/ListSupportedResourceTypesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListSupportedResourceTypes)++responseListTagsForResource :: ListTagsForResourceResponse -> TestTree+responseListTagsForResource =+ res+ "ListTagsForResourceResponse"+ "fixture/ListTagsForResourceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListTagsForResource)++responseListViews :: ListViewsResponse -> TestTree+responseListViews =+ res+ "ListViewsResponse"+ "fixture/ListViewsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListViews)++responseSearch :: SearchResponse -> TestTree+responseSearch =+ res+ "SearchResponse"+ "fixture/SearchResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy Search)++responseTagResource :: TagResourceResponse -> TestTree+responseTagResource =+ res+ "TagResourceResponse"+ "fixture/TagResourceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy TagResource)++responseUntagResource :: UntagResourceResponse -> TestTree+responseUntagResource =+ res+ "UntagResourceResponse"+ "fixture/UntagResourceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UntagResource)++responseUpdateIndexType :: UpdateIndexTypeResponse -> TestTree+responseUpdateIndexType =+ res+ "UpdateIndexTypeResponse"+ "fixture/UpdateIndexTypeResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateIndexType)++responseUpdateView :: UpdateViewResponse -> TestTree+responseUpdateView =+ res+ "UpdateViewResponse"+ "fixture/UpdateViewResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateView)
+ test/Test/Amazonka/ResourceExplorer2.hs view
@@ -0,0 +1,20 @@+-- |+-- Module : Test.Amazonka.ResourceExplorer2+-- Copyright : (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.ResourceExplorer2+ ( tests,+ fixtures,+ )+where++import Test.Tasty (TestTree)++tests :: [TestTree]+tests = []++fixtures :: [TestTree]+fixtures = []
+ test/Test/Amazonka/ResourceExplorer2/Internal.hs view
@@ -0,0 +1,8 @@+-- |+-- Module : Test.Amazonka.ResourceExplorer2.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.ResourceExplorer2.Internal where