amazonka-ssm-sap (empty) → 2.0
raw patch · 79 files changed
+6837/−0 lines, 79 filesdep +amazonka-coredep +amazonka-ssm-sapdep +amazonka-test
Dependencies added: amazonka-core, amazonka-ssm-sap, amazonka-test, base, bytestring, case-insensitive, tasty, tasty-hunit, text, time, unordered-containers
Files
- LICENSE +367/−0
- README.md +44/−0
- amazonka-ssm-sap.cabal +118/−0
- fixture/DeleteResourcePermission.yaml +10/−0
- fixture/DeleteResourcePermissionResponse.proto +0/−0
- fixture/DeregisterApplication.yaml +10/−0
- fixture/DeregisterApplicationResponse.proto +0/−0
- fixture/GetApplication.yaml +10/−0
- fixture/GetApplicationResponse.proto +0/−0
- fixture/GetComponent.yaml +10/−0
- fixture/GetComponentResponse.proto +0/−0
- fixture/GetDatabase.yaml +10/−0
- fixture/GetDatabaseResponse.proto +0/−0
- fixture/GetOperation.yaml +10/−0
- fixture/GetOperationResponse.proto +0/−0
- fixture/GetResourcePermission.yaml +10/−0
- fixture/GetResourcePermissionResponse.proto +0/−0
- fixture/ListApplications.yaml +10/−0
- fixture/ListApplicationsResponse.proto +0/−0
- fixture/ListComponents.yaml +10/−0
- fixture/ListComponentsResponse.proto +0/−0
- fixture/ListDatabases.yaml +10/−0
- fixture/ListDatabasesResponse.proto +0/−0
- fixture/ListTagsForResource.yaml +10/−0
- fixture/ListTagsForResourceResponse.proto +0/−0
- fixture/PutResourcePermission.yaml +10/−0
- fixture/PutResourcePermissionResponse.proto +0/−0
- fixture/RegisterApplication.yaml +10/−0
- fixture/RegisterApplicationResponse.proto +0/−0
- fixture/TagResource.yaml +10/−0
- fixture/TagResourceResponse.proto +0/−0
- fixture/UntagResource.yaml +10/−0
- fixture/UntagResourceResponse.proto +0/−0
- fixture/UpdateApplicationSettings.yaml +10/−0
- fixture/UpdateApplicationSettingsResponse.proto +0/−0
- gen/Amazonka/SSMSAP.hs +254/−0
- gen/Amazonka/SSMSAP/DeleteResourcePermission.hs +192/−0
- gen/Amazonka/SSMSAP/DeregisterApplication.hs +158/−0
- gen/Amazonka/SSMSAP/GetApplication.hs +186/−0
- gen/Amazonka/SSMSAP/GetComponent.hs +177/−0
- gen/Amazonka/SSMSAP/GetDatabase.hs +204/−0
- gen/Amazonka/SSMSAP/GetOperation.hs +157/−0
- gen/Amazonka/SSMSAP/GetResourcePermission.hs +177/−0
- gen/Amazonka/SSMSAP/Lens.hs +232/−0
- gen/Amazonka/SSMSAP/ListApplications.hs +208/−0
- gen/Amazonka/SSMSAP/ListComponents.hs +219/−0
- gen/Amazonka/SSMSAP/ListDatabases.hs +230/−0
- gen/Amazonka/SSMSAP/ListTagsForResource.hs +156/−0
- gen/Amazonka/SSMSAP/PutResourcePermission.hs +195/−0
- gen/Amazonka/SSMSAP/RegisterApplication.hs +264/−0
- gen/Amazonka/SSMSAP/TagResource.hs +159/−0
- gen/Amazonka/SSMSAP/Types.hs +273/−0
- gen/Amazonka/SSMSAP/Types/Application.hs +142/−0
- gen/Amazonka/SSMSAP/Types/ApplicationCredential.hs +112/−0
- gen/Amazonka/SSMSAP/Types/ApplicationStatus.hs +101/−0
- gen/Amazonka/SSMSAP/Types/ApplicationSummary.hs +101/−0
- gen/Amazonka/SSMSAP/Types/ApplicationType.hs +66/−0
- gen/Amazonka/SSMSAP/Types/Component.hs +143/−0
- gen/Amazonka/SSMSAP/Types/ComponentStatus.hs +66/−0
- gen/Amazonka/SSMSAP/Types/ComponentSummary.hs +101/−0
- gen/Amazonka/SSMSAP/Types/ComponentType.hs +66/−0
- gen/Amazonka/SSMSAP/Types/CredentialType.hs +66/−0
- gen/Amazonka/SSMSAP/Types/Database.hs +173/−0
- gen/Amazonka/SSMSAP/Types/DatabaseStatus.hs +86/−0
- gen/Amazonka/SSMSAP/Types/DatabaseSummary.hs +121/−0
- gen/Amazonka/SSMSAP/Types/DatabaseType.hs +71/−0
- gen/Amazonka/SSMSAP/Types/Host.hs +101/−0
- gen/Amazonka/SSMSAP/Types/HostRole.hs +81/−0
- gen/Amazonka/SSMSAP/Types/Operation.hs +171/−0
- gen/Amazonka/SSMSAP/Types/OperationStatus.hs +76/−0
- gen/Amazonka/SSMSAP/Types/PermissionActionType.hs +66/−0
- gen/Amazonka/SSMSAP/UntagResource.hs +162/−0
- gen/Amazonka/SSMSAP/UpdateApplicationSettings.hs +202/−0
- gen/Amazonka/SSMSAP/Waiters.hs +24/−0
- src/.gitkeep +0/−0
- test/Main.hs +23/−0
- test/Test/Amazonka/Gen/SSMSAP.hs +358/−0
- test/Test/Amazonka/SSMSAP.hs +20/−0
- test/Test/Amazonka/SSMSAP/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 Systems Manager for SAP SDK++* [Version](#version)+* [Description](#description)+* [Contribute](#contribute)+* [Licence](#licence)+++## Version+ +`2.0` - Derived from API version @2018-05-10@ of the AWS service descriptions, licensed under Apache 2.0.++## Description++Documentation is available via [Hackage](http://hackage.haskell.org/package/amazonka-ssm-sap)+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.SSMSAP](http://hackage.haskell.org/package/amazonka-ssm-sap/docs/Amazonka-SSMSAP.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-ssm-sap` 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-ssm-sap.cabal view
@@ -0,0 +1,118 @@+cabal-version: 2.2+name: amazonka-ssm-sap+version: 2.0+synopsis: Amazon Systems Manager for SAP SDK.+homepage: https://github.com/brendanhay/amazonka+bug-reports: https://github.com/brendanhay/amazonka/issues+license: MPL-2.0+license-file: LICENSE+author: Brendan Hay+maintainer:+ Brendan Hay <brendan.g.hay+amazonka@gmail.com>, Jack Kelly <jack@jackkelly.name>++copyright: Copyright (c) 2013-2023 Brendan Hay+category: AWS+build-type: Simple+extra-source-files:+ fixture/*.proto+ fixture/*.yaml+ README.md+ src/.gitkeep++description:+ Derived from API version @2018-05-10@ 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.SSMSAP.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.SSMSAP" 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-ssm-sap++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.SSMSAP+ Amazonka.SSMSAP.DeleteResourcePermission+ Amazonka.SSMSAP.DeregisterApplication+ Amazonka.SSMSAP.GetApplication+ Amazonka.SSMSAP.GetComponent+ Amazonka.SSMSAP.GetDatabase+ Amazonka.SSMSAP.GetOperation+ Amazonka.SSMSAP.GetResourcePermission+ Amazonka.SSMSAP.Lens+ Amazonka.SSMSAP.ListApplications+ Amazonka.SSMSAP.ListComponents+ Amazonka.SSMSAP.ListDatabases+ Amazonka.SSMSAP.ListTagsForResource+ Amazonka.SSMSAP.PutResourcePermission+ Amazonka.SSMSAP.RegisterApplication+ Amazonka.SSMSAP.TagResource+ Amazonka.SSMSAP.Types+ Amazonka.SSMSAP.Types.Application+ Amazonka.SSMSAP.Types.ApplicationCredential+ Amazonka.SSMSAP.Types.ApplicationStatus+ Amazonka.SSMSAP.Types.ApplicationSummary+ Amazonka.SSMSAP.Types.ApplicationType+ Amazonka.SSMSAP.Types.Component+ Amazonka.SSMSAP.Types.ComponentStatus+ Amazonka.SSMSAP.Types.ComponentSummary+ Amazonka.SSMSAP.Types.ComponentType+ Amazonka.SSMSAP.Types.CredentialType+ Amazonka.SSMSAP.Types.Database+ Amazonka.SSMSAP.Types.DatabaseStatus+ Amazonka.SSMSAP.Types.DatabaseSummary+ Amazonka.SSMSAP.Types.DatabaseType+ Amazonka.SSMSAP.Types.Host+ Amazonka.SSMSAP.Types.HostRole+ Amazonka.SSMSAP.Types.Operation+ Amazonka.SSMSAP.Types.OperationStatus+ Amazonka.SSMSAP.Types.PermissionActionType+ Amazonka.SSMSAP.UntagResource+ Amazonka.SSMSAP.UpdateApplicationSettings+ Amazonka.SSMSAP.Waiters++ build-depends:+ , amazonka-core >=2.0 && <2.1+ , base >=4.12 && <5++test-suite amazonka-ssm-sap-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.SSMSAP+ Test.Amazonka.SSMSAP+ Test.Amazonka.SSMSAP.Internal++ build-depends:+ , amazonka-core >=2.0 && <2.1+ , amazonka-ssm-sap+ , amazonka-test >=2.0 && <2.1+ , base+ , bytestring+ , case-insensitive+ , tasty+ , tasty-hunit+ , text+ , time+ , unordered-containers
+ fixture/DeleteResourcePermission.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/ssm-sap/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: ssm-sap.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/DeleteResourcePermissionResponse.proto view
+ fixture/DeregisterApplication.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/ssm-sap/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: ssm-sap.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/DeregisterApplicationResponse.proto view
+ fixture/GetApplication.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/ssm-sap/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: ssm-sap.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/GetApplicationResponse.proto view
+ fixture/GetComponent.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/ssm-sap/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: ssm-sap.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/GetComponentResponse.proto view
+ fixture/GetDatabase.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/ssm-sap/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: ssm-sap.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/GetDatabaseResponse.proto view
+ fixture/GetOperation.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/ssm-sap/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: ssm-sap.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/GetOperationResponse.proto view
+ fixture/GetResourcePermission.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/ssm-sap/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: ssm-sap.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/GetResourcePermissionResponse.proto view
+ fixture/ListApplications.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/ssm-sap/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: ssm-sap.us-east-1.amazonaws.com+ Content-Type: application/x-www-form-urlencoded; charset=utf-8+ X-Amz-Content-SHA256: abcdef+ X-Amz-Date: 20091028T223200Z+body:+ ''
+ fixture/ListApplicationsResponse.proto view
+ fixture/ListComponents.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/ssm-sap/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: ssm-sap.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/ListComponentsResponse.proto view
+ fixture/ListDatabases.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/ssm-sap/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: ssm-sap.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/ListDatabasesResponse.proto view
+ fixture/ListTagsForResource.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/ssm-sap/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: ssm-sap.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/PutResourcePermission.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/ssm-sap/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: ssm-sap.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/PutResourcePermissionResponse.proto view
+ fixture/RegisterApplication.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/ssm-sap/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: ssm-sap.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/RegisterApplicationResponse.proto view
+ fixture/TagResource.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/ssm-sap/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: ssm-sap.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/ssm-sap/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: ssm-sap.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/UpdateApplicationSettings.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/ssm-sap/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: ssm-sap.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/UpdateApplicationSettingsResponse.proto view
+ gen/Amazonka/SSMSAP.hs view
@@ -0,0 +1,254 @@+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Amazonka.SSMSAP+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Derived from API version @2018-05-10@ of the AWS service descriptions, licensed under Apache 2.0.+--+-- This API reference provides descriptions, syntax, and other details+-- about each of the actions and data types for AWS Systems Manager for+-- SAP. The topic for each action shows the API request parameters and+-- responses.+module Amazonka.SSMSAP+ ( -- * Service Configuration+ defaultService,++ -- * Errors+ -- $errors++ -- ** ConflictException+ _ConflictException,++ -- ** InternalServerException+ _InternalServerException,++ -- ** ResourceNotFoundException+ _ResourceNotFoundException,++ -- ** ValidationException+ _ValidationException,++ -- * Waiters+ -- $waiters++ -- * Operations+ -- $operations++ -- ** DeleteResourcePermission+ DeleteResourcePermission (DeleteResourcePermission'),+ newDeleteResourcePermission,+ DeleteResourcePermissionResponse (DeleteResourcePermissionResponse'),+ newDeleteResourcePermissionResponse,++ -- ** DeregisterApplication+ DeregisterApplication (DeregisterApplication'),+ newDeregisterApplication,+ DeregisterApplicationResponse (DeregisterApplicationResponse'),+ newDeregisterApplicationResponse,++ -- ** GetApplication+ GetApplication (GetApplication'),+ newGetApplication,+ GetApplicationResponse (GetApplicationResponse'),+ newGetApplicationResponse,++ -- ** GetComponent+ GetComponent (GetComponent'),+ newGetComponent,+ GetComponentResponse (GetComponentResponse'),+ newGetComponentResponse,++ -- ** GetDatabase+ GetDatabase (GetDatabase'),+ newGetDatabase,+ GetDatabaseResponse (GetDatabaseResponse'),+ newGetDatabaseResponse,++ -- ** GetOperation+ GetOperation (GetOperation'),+ newGetOperation,+ GetOperationResponse (GetOperationResponse'),+ newGetOperationResponse,++ -- ** GetResourcePermission+ GetResourcePermission (GetResourcePermission'),+ newGetResourcePermission,+ GetResourcePermissionResponse (GetResourcePermissionResponse'),+ newGetResourcePermissionResponse,++ -- ** ListApplications (Paginated)+ ListApplications (ListApplications'),+ newListApplications,+ ListApplicationsResponse (ListApplicationsResponse'),+ newListApplicationsResponse,++ -- ** ListComponents (Paginated)+ ListComponents (ListComponents'),+ newListComponents,+ ListComponentsResponse (ListComponentsResponse'),+ newListComponentsResponse,++ -- ** ListDatabases (Paginated)+ ListDatabases (ListDatabases'),+ newListDatabases,+ ListDatabasesResponse (ListDatabasesResponse'),+ newListDatabasesResponse,++ -- ** ListTagsForResource+ ListTagsForResource (ListTagsForResource'),+ newListTagsForResource,+ ListTagsForResourceResponse (ListTagsForResourceResponse'),+ newListTagsForResourceResponse,++ -- ** PutResourcePermission+ PutResourcePermission (PutResourcePermission'),+ newPutResourcePermission,+ PutResourcePermissionResponse (PutResourcePermissionResponse'),+ newPutResourcePermissionResponse,++ -- ** RegisterApplication+ RegisterApplication (RegisterApplication'),+ newRegisterApplication,+ RegisterApplicationResponse (RegisterApplicationResponse'),+ newRegisterApplicationResponse,++ -- ** TagResource+ TagResource (TagResource'),+ newTagResource,+ TagResourceResponse (TagResourceResponse'),+ newTagResourceResponse,++ -- ** UntagResource+ UntagResource (UntagResource'),+ newUntagResource,+ UntagResourceResponse (UntagResourceResponse'),+ newUntagResourceResponse,++ -- ** UpdateApplicationSettings+ UpdateApplicationSettings (UpdateApplicationSettings'),+ newUpdateApplicationSettings,+ UpdateApplicationSettingsResponse (UpdateApplicationSettingsResponse'),+ newUpdateApplicationSettingsResponse,++ -- * Types++ -- ** ApplicationStatus+ ApplicationStatus (..),++ -- ** ApplicationType+ ApplicationType (..),++ -- ** ComponentStatus+ ComponentStatus (..),++ -- ** ComponentType+ ComponentType (..),++ -- ** CredentialType+ CredentialType (..),++ -- ** DatabaseStatus+ DatabaseStatus (..),++ -- ** DatabaseType+ DatabaseType (..),++ -- ** HostRole+ HostRole (..),++ -- ** OperationStatus+ OperationStatus (..),++ -- ** PermissionActionType+ PermissionActionType (..),++ -- ** Application+ Application (Application'),+ newApplication,++ -- ** ApplicationCredential+ ApplicationCredential (ApplicationCredential'),+ newApplicationCredential,++ -- ** ApplicationSummary+ ApplicationSummary (ApplicationSummary'),+ newApplicationSummary,++ -- ** Component+ Component (Component'),+ newComponent,++ -- ** ComponentSummary+ ComponentSummary (ComponentSummary'),+ newComponentSummary,++ -- ** Database+ Database (Database'),+ newDatabase,++ -- ** DatabaseSummary+ DatabaseSummary (DatabaseSummary'),+ newDatabaseSummary,++ -- ** Host+ Host (Host'),+ newHost,++ -- ** Operation+ Operation (Operation'),+ newOperation,+ )+where++import Amazonka.SSMSAP.DeleteResourcePermission+import Amazonka.SSMSAP.DeregisterApplication+import Amazonka.SSMSAP.GetApplication+import Amazonka.SSMSAP.GetComponent+import Amazonka.SSMSAP.GetDatabase+import Amazonka.SSMSAP.GetOperation+import Amazonka.SSMSAP.GetResourcePermission+import Amazonka.SSMSAP.Lens+import Amazonka.SSMSAP.ListApplications+import Amazonka.SSMSAP.ListComponents+import Amazonka.SSMSAP.ListDatabases+import Amazonka.SSMSAP.ListTagsForResource+import Amazonka.SSMSAP.PutResourcePermission+import Amazonka.SSMSAP.RegisterApplication+import Amazonka.SSMSAP.TagResource+import Amazonka.SSMSAP.Types+import Amazonka.SSMSAP.UntagResource+import Amazonka.SSMSAP.UpdateApplicationSettings+import Amazonka.SSMSAP.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 'SSMSAP'.++-- $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/SSMSAP/DeleteResourcePermission.hs view
@@ -0,0 +1,192 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.SSMSAP.DeleteResourcePermission+-- 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 permissions associated with the target database.+module Amazonka.SSMSAP.DeleteResourcePermission+ ( -- * Creating a Request+ DeleteResourcePermission (..),+ newDeleteResourcePermission,++ -- * Request Lenses+ deleteResourcePermission_actionType,+ deleteResourcePermission_sourceResourceArn,+ deleteResourcePermission_resourceArn,++ -- * Destructuring the Response+ DeleteResourcePermissionResponse (..),+ newDeleteResourcePermissionResponse,++ -- * Response Lenses+ deleteResourcePermissionResponse_policy,+ deleteResourcePermissionResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSMSAP.Types++-- | /See:/ 'newDeleteResourcePermission' smart constructor.+data DeleteResourcePermission = DeleteResourcePermission'+ { actionType :: Prelude.Maybe PermissionActionType,+ sourceResourceArn :: Prelude.Maybe Prelude.Text,+ resourceArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteResourcePermission' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'actionType', 'deleteResourcePermission_actionType' -+--+-- 'sourceResourceArn', 'deleteResourcePermission_sourceResourceArn' -+--+-- 'resourceArn', 'deleteResourcePermission_resourceArn' -+newDeleteResourcePermission ::+ -- | 'resourceArn'+ Prelude.Text ->+ DeleteResourcePermission+newDeleteResourcePermission pResourceArn_ =+ DeleteResourcePermission'+ { actionType =+ Prelude.Nothing,+ sourceResourceArn = Prelude.Nothing,+ resourceArn = pResourceArn_+ }++deleteResourcePermission_actionType :: Lens.Lens' DeleteResourcePermission (Prelude.Maybe PermissionActionType)+deleteResourcePermission_actionType = Lens.lens (\DeleteResourcePermission' {actionType} -> actionType) (\s@DeleteResourcePermission' {} a -> s {actionType = a} :: DeleteResourcePermission)++deleteResourcePermission_sourceResourceArn :: Lens.Lens' DeleteResourcePermission (Prelude.Maybe Prelude.Text)+deleteResourcePermission_sourceResourceArn = Lens.lens (\DeleteResourcePermission' {sourceResourceArn} -> sourceResourceArn) (\s@DeleteResourcePermission' {} a -> s {sourceResourceArn = a} :: DeleteResourcePermission)++deleteResourcePermission_resourceArn :: Lens.Lens' DeleteResourcePermission Prelude.Text+deleteResourcePermission_resourceArn = Lens.lens (\DeleteResourcePermission' {resourceArn} -> resourceArn) (\s@DeleteResourcePermission' {} a -> s {resourceArn = a} :: DeleteResourcePermission)++instance Core.AWSRequest DeleteResourcePermission where+ type+ AWSResponse DeleteResourcePermission =+ DeleteResourcePermissionResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DeleteResourcePermissionResponse'+ Prelude.<$> (x Data..?> "Policy")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DeleteResourcePermission where+ hashWithSalt _salt DeleteResourcePermission' {..} =+ _salt+ `Prelude.hashWithSalt` actionType+ `Prelude.hashWithSalt` sourceResourceArn+ `Prelude.hashWithSalt` resourceArn++instance Prelude.NFData DeleteResourcePermission where+ rnf DeleteResourcePermission' {..} =+ Prelude.rnf actionType+ `Prelude.seq` Prelude.rnf sourceResourceArn+ `Prelude.seq` Prelude.rnf resourceArn++instance Data.ToHeaders DeleteResourcePermission where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON DeleteResourcePermission where+ toJSON DeleteResourcePermission' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("ActionType" Data..=) Prelude.<$> actionType,+ ("SourceResourceArn" Data..=)+ Prelude.<$> sourceResourceArn,+ Prelude.Just ("ResourceArn" Data..= resourceArn)+ ]+ )++instance Data.ToPath DeleteResourcePermission where+ toPath = Prelude.const "/delete-resource-permission"++instance Data.ToQuery DeleteResourcePermission where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteResourcePermissionResponse' smart constructor.+data DeleteResourcePermissionResponse = DeleteResourcePermissionResponse'+ { policy :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteResourcePermissionResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'policy', 'deleteResourcePermissionResponse_policy' -+--+-- 'httpStatus', 'deleteResourcePermissionResponse_httpStatus' - The response's http status code.+newDeleteResourcePermissionResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeleteResourcePermissionResponse+newDeleteResourcePermissionResponse pHttpStatus_ =+ DeleteResourcePermissionResponse'+ { policy =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++deleteResourcePermissionResponse_policy :: Lens.Lens' DeleteResourcePermissionResponse (Prelude.Maybe Prelude.Text)+deleteResourcePermissionResponse_policy = Lens.lens (\DeleteResourcePermissionResponse' {policy} -> policy) (\s@DeleteResourcePermissionResponse' {} a -> s {policy = a} :: DeleteResourcePermissionResponse)++-- | The response's http status code.+deleteResourcePermissionResponse_httpStatus :: Lens.Lens' DeleteResourcePermissionResponse Prelude.Int+deleteResourcePermissionResponse_httpStatus = Lens.lens (\DeleteResourcePermissionResponse' {httpStatus} -> httpStatus) (\s@DeleteResourcePermissionResponse' {} a -> s {httpStatus = a} :: DeleteResourcePermissionResponse)++instance+ Prelude.NFData+ DeleteResourcePermissionResponse+ where+ rnf DeleteResourcePermissionResponse' {..} =+ Prelude.rnf policy+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/SSMSAP/DeregisterApplication.hs view
@@ -0,0 +1,158 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.SSMSAP.DeregisterApplication+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deregister an SAP application with AWS Systems Manager for SAP. This+-- action does not affect the existing setup of your SAP workloads on Amazon+-- EC2.+module Amazonka.SSMSAP.DeregisterApplication+ ( -- * Creating a Request+ DeregisterApplication (..),+ newDeregisterApplication,++ -- * Request Lenses+ deregisterApplication_applicationId,++ -- * Destructuring the Response+ DeregisterApplicationResponse (..),+ newDeregisterApplicationResponse,++ -- * Response Lenses+ deregisterApplicationResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSMSAP.Types++-- | /See:/ 'newDeregisterApplication' smart constructor.+data DeregisterApplication = DeregisterApplication'+ { applicationId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeregisterApplication' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationId', 'deregisterApplication_applicationId' -+newDeregisterApplication ::+ -- | 'applicationId'+ Prelude.Text ->+ DeregisterApplication+newDeregisterApplication pApplicationId_ =+ DeregisterApplication'+ { applicationId =+ pApplicationId_+ }++deregisterApplication_applicationId :: Lens.Lens' DeregisterApplication Prelude.Text+deregisterApplication_applicationId = Lens.lens (\DeregisterApplication' {applicationId} -> applicationId) (\s@DeregisterApplication' {} a -> s {applicationId = a} :: DeregisterApplication)++instance Core.AWSRequest DeregisterApplication where+ type+ AWSResponse DeregisterApplication =+ DeregisterApplicationResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ DeregisterApplicationResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable DeregisterApplication where+ hashWithSalt _salt DeregisterApplication' {..} =+ _salt `Prelude.hashWithSalt` applicationId++instance Prelude.NFData DeregisterApplication where+ rnf DeregisterApplication' {..} =+ Prelude.rnf applicationId++instance Data.ToHeaders DeregisterApplication where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON DeregisterApplication where+ toJSON DeregisterApplication' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("ApplicationId" Data..= applicationId)+ ]+ )++instance Data.ToPath DeregisterApplication where+ toPath = Prelude.const "/deregister-application"++instance Data.ToQuery DeregisterApplication where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeregisterApplicationResponse' smart constructor.+data DeregisterApplicationResponse = DeregisterApplicationResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeregisterApplicationResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'deregisterApplicationResponse_httpStatus' - The response's http status code.+newDeregisterApplicationResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ DeregisterApplicationResponse+newDeregisterApplicationResponse pHttpStatus_ =+ DeregisterApplicationResponse'+ { httpStatus =+ pHttpStatus_+ }++-- | The response's http status code.+deregisterApplicationResponse_httpStatus :: Lens.Lens' DeregisterApplicationResponse Prelude.Int+deregisterApplicationResponse_httpStatus = Lens.lens (\DeregisterApplicationResponse' {httpStatus} -> httpStatus) (\s@DeregisterApplicationResponse' {} a -> s {httpStatus = a} :: DeregisterApplicationResponse)++instance Prelude.NFData DeregisterApplicationResponse where+ rnf DeregisterApplicationResponse' {..} =+ Prelude.rnf httpStatus
+ gen/Amazonka/SSMSAP/GetApplication.hs view
@@ -0,0 +1,186 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.SSMSAP.GetApplication+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets an application registered with AWS Systems Manager for SAP. It also+-- returns the components of the application.+module Amazonka.SSMSAP.GetApplication+ ( -- * Creating a Request+ GetApplication (..),+ newGetApplication,++ -- * Request Lenses+ getApplication_applicationArn,+ getApplication_applicationId,++ -- * Destructuring the Response+ GetApplicationResponse (..),+ newGetApplicationResponse,++ -- * Response Lenses+ getApplicationResponse_application,+ getApplicationResponse_tags,+ getApplicationResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSMSAP.Types++-- | /See:/ 'newGetApplication' smart constructor.+data GetApplication = GetApplication'+ { applicationArn :: Prelude.Maybe Prelude.Text,+ applicationId :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetApplication' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationArn', 'getApplication_applicationArn' -+--+-- 'applicationId', 'getApplication_applicationId' -+newGetApplication ::+ GetApplication+newGetApplication =+ GetApplication'+ { applicationArn = Prelude.Nothing,+ applicationId = Prelude.Nothing+ }++getApplication_applicationArn :: Lens.Lens' GetApplication (Prelude.Maybe Prelude.Text)+getApplication_applicationArn = Lens.lens (\GetApplication' {applicationArn} -> applicationArn) (\s@GetApplication' {} a -> s {applicationArn = a} :: GetApplication)++getApplication_applicationId :: Lens.Lens' GetApplication (Prelude.Maybe Prelude.Text)+getApplication_applicationId = Lens.lens (\GetApplication' {applicationId} -> applicationId) (\s@GetApplication' {} a -> s {applicationId = a} :: GetApplication)++instance Core.AWSRequest GetApplication where+ type+ AWSResponse GetApplication =+ GetApplicationResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ GetApplicationResponse'+ Prelude.<$> (x Data..?> "Application")+ Prelude.<*> (x Data..?> "Tags" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable GetApplication where+ hashWithSalt _salt GetApplication' {..} =+ _salt+ `Prelude.hashWithSalt` applicationArn+ `Prelude.hashWithSalt` applicationId++instance Prelude.NFData GetApplication where+ rnf GetApplication' {..} =+ Prelude.rnf applicationArn+ `Prelude.seq` Prelude.rnf applicationId++instance Data.ToHeaders GetApplication where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON GetApplication where+ toJSON GetApplication' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("ApplicationArn" Data..=)+ Prelude.<$> applicationArn,+ ("ApplicationId" Data..=) Prelude.<$> applicationId+ ]+ )++instance Data.ToPath GetApplication where+ toPath = Prelude.const "/get-application"++instance Data.ToQuery GetApplication where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newGetApplicationResponse' smart constructor.+data GetApplicationResponse = GetApplicationResponse'+ { application :: Prelude.Maybe Application,+ 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 'GetApplicationResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'application', 'getApplicationResponse_application' -+--+-- 'tags', 'getApplicationResponse_tags' -+--+-- 'httpStatus', 'getApplicationResponse_httpStatus' - The response's http status code.+newGetApplicationResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetApplicationResponse+newGetApplicationResponse pHttpStatus_ =+ GetApplicationResponse'+ { application =+ Prelude.Nothing,+ tags = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++getApplicationResponse_application :: Lens.Lens' GetApplicationResponse (Prelude.Maybe Application)+getApplicationResponse_application = Lens.lens (\GetApplicationResponse' {application} -> application) (\s@GetApplicationResponse' {} a -> s {application = a} :: GetApplicationResponse)++getApplicationResponse_tags :: Lens.Lens' GetApplicationResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+getApplicationResponse_tags = Lens.lens (\GetApplicationResponse' {tags} -> tags) (\s@GetApplicationResponse' {} a -> s {tags = a} :: GetApplicationResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+getApplicationResponse_httpStatus :: Lens.Lens' GetApplicationResponse Prelude.Int+getApplicationResponse_httpStatus = Lens.lens (\GetApplicationResponse' {httpStatus} -> httpStatus) (\s@GetApplicationResponse' {} a -> s {httpStatus = a} :: GetApplicationResponse)++instance Prelude.NFData GetApplicationResponse where+ rnf GetApplicationResponse' {..} =+ Prelude.rnf application+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/SSMSAP/GetComponent.hs view
@@ -0,0 +1,177 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.SSMSAP.GetComponent+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets the component of an application registered with AWS Systems Manager+-- for SAP.+module Amazonka.SSMSAP.GetComponent+ ( -- * Creating a Request+ GetComponent (..),+ newGetComponent,++ -- * Request Lenses+ getComponent_applicationId,+ getComponent_componentId,++ -- * Destructuring the Response+ GetComponentResponse (..),+ newGetComponentResponse,++ -- * Response Lenses+ getComponentResponse_component,+ getComponentResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSMSAP.Types++-- | /See:/ 'newGetComponent' smart constructor.+data GetComponent = GetComponent'+ { applicationId :: Prelude.Text,+ componentId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetComponent' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationId', 'getComponent_applicationId' -+--+-- 'componentId', 'getComponent_componentId' -+newGetComponent ::+ -- | 'applicationId'+ Prelude.Text ->+ -- | 'componentId'+ Prelude.Text ->+ GetComponent+newGetComponent pApplicationId_ pComponentId_ =+ GetComponent'+ { applicationId = pApplicationId_,+ componentId = pComponentId_+ }++getComponent_applicationId :: Lens.Lens' GetComponent Prelude.Text+getComponent_applicationId = Lens.lens (\GetComponent' {applicationId} -> applicationId) (\s@GetComponent' {} a -> s {applicationId = a} :: GetComponent)++getComponent_componentId :: Lens.Lens' GetComponent Prelude.Text+getComponent_componentId = Lens.lens (\GetComponent' {componentId} -> componentId) (\s@GetComponent' {} a -> s {componentId = a} :: GetComponent)++instance Core.AWSRequest GetComponent where+ type AWSResponse GetComponent = GetComponentResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ GetComponentResponse'+ Prelude.<$> (x Data..?> "Component")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable GetComponent where+ hashWithSalt _salt GetComponent' {..} =+ _salt+ `Prelude.hashWithSalt` applicationId+ `Prelude.hashWithSalt` componentId++instance Prelude.NFData GetComponent where+ rnf GetComponent' {..} =+ Prelude.rnf applicationId+ `Prelude.seq` Prelude.rnf componentId++instance Data.ToHeaders GetComponent where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON GetComponent where+ toJSON GetComponent' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("ApplicationId" Data..= applicationId),+ Prelude.Just ("ComponentId" Data..= componentId)+ ]+ )++instance Data.ToPath GetComponent where+ toPath = Prelude.const "/get-component"++instance Data.ToQuery GetComponent where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newGetComponentResponse' smart constructor.+data GetComponentResponse = GetComponentResponse'+ { component :: Prelude.Maybe Component,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetComponentResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'component', 'getComponentResponse_component' -+--+-- 'httpStatus', 'getComponentResponse_httpStatus' - The response's http status code.+newGetComponentResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetComponentResponse+newGetComponentResponse pHttpStatus_ =+ GetComponentResponse'+ { component = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++getComponentResponse_component :: Lens.Lens' GetComponentResponse (Prelude.Maybe Component)+getComponentResponse_component = Lens.lens (\GetComponentResponse' {component} -> component) (\s@GetComponentResponse' {} a -> s {component = a} :: GetComponentResponse)++-- | The response's http status code.+getComponentResponse_httpStatus :: Lens.Lens' GetComponentResponse Prelude.Int+getComponentResponse_httpStatus = Lens.lens (\GetComponentResponse' {httpStatus} -> httpStatus) (\s@GetComponentResponse' {} a -> s {httpStatus = a} :: GetComponentResponse)++instance Prelude.NFData GetComponentResponse where+ rnf GetComponentResponse' {..} =+ Prelude.rnf component+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/SSMSAP/GetDatabase.hs view
@@ -0,0 +1,204 @@+{-# 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.SSMSAP.GetDatabase+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets the SAP HANA database of an application registered with AWS Systems+-- Manager for SAP.+module Amazonka.SSMSAP.GetDatabase+ ( -- * Creating a Request+ GetDatabase (..),+ newGetDatabase,++ -- * Request Lenses+ getDatabase_applicationId,+ getDatabase_componentId,+ getDatabase_databaseArn,+ getDatabase_databaseId,++ -- * Destructuring the Response+ GetDatabaseResponse (..),+ newGetDatabaseResponse,++ -- * Response Lenses+ getDatabaseResponse_database,+ getDatabaseResponse_tags,+ getDatabaseResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSMSAP.Types++-- | /See:/ 'newGetDatabase' smart constructor.+data GetDatabase = GetDatabase'+ { applicationId :: Prelude.Maybe Prelude.Text,+ componentId :: Prelude.Maybe Prelude.Text,+ databaseArn :: Prelude.Maybe Prelude.Text,+ databaseId :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetDatabase' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationId', 'getDatabase_applicationId' -+--+-- 'componentId', 'getDatabase_componentId' -+--+-- 'databaseArn', 'getDatabase_databaseArn' -+--+-- 'databaseId', 'getDatabase_databaseId' -+newGetDatabase ::+ GetDatabase+newGetDatabase =+ GetDatabase'+ { applicationId = Prelude.Nothing,+ componentId = Prelude.Nothing,+ databaseArn = Prelude.Nothing,+ databaseId = Prelude.Nothing+ }++getDatabase_applicationId :: Lens.Lens' GetDatabase (Prelude.Maybe Prelude.Text)+getDatabase_applicationId = Lens.lens (\GetDatabase' {applicationId} -> applicationId) (\s@GetDatabase' {} a -> s {applicationId = a} :: GetDatabase)++getDatabase_componentId :: Lens.Lens' GetDatabase (Prelude.Maybe Prelude.Text)+getDatabase_componentId = Lens.lens (\GetDatabase' {componentId} -> componentId) (\s@GetDatabase' {} a -> s {componentId = a} :: GetDatabase)++getDatabase_databaseArn :: Lens.Lens' GetDatabase (Prelude.Maybe Prelude.Text)+getDatabase_databaseArn = Lens.lens (\GetDatabase' {databaseArn} -> databaseArn) (\s@GetDatabase' {} a -> s {databaseArn = a} :: GetDatabase)++getDatabase_databaseId :: Lens.Lens' GetDatabase (Prelude.Maybe Prelude.Text)+getDatabase_databaseId = Lens.lens (\GetDatabase' {databaseId} -> databaseId) (\s@GetDatabase' {} a -> s {databaseId = a} :: GetDatabase)++instance Core.AWSRequest GetDatabase where+ type AWSResponse GetDatabase = GetDatabaseResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ GetDatabaseResponse'+ Prelude.<$> (x Data..?> "Database")+ Prelude.<*> (x Data..?> "Tags" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable GetDatabase where+ hashWithSalt _salt GetDatabase' {..} =+ _salt+ `Prelude.hashWithSalt` applicationId+ `Prelude.hashWithSalt` componentId+ `Prelude.hashWithSalt` databaseArn+ `Prelude.hashWithSalt` databaseId++instance Prelude.NFData GetDatabase where+ rnf GetDatabase' {..} =+ Prelude.rnf applicationId+ `Prelude.seq` Prelude.rnf componentId+ `Prelude.seq` Prelude.rnf databaseArn+ `Prelude.seq` Prelude.rnf databaseId++instance Data.ToHeaders GetDatabase where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON GetDatabase where+ toJSON GetDatabase' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("ApplicationId" Data..=) Prelude.<$> applicationId,+ ("ComponentId" Data..=) Prelude.<$> componentId,+ ("DatabaseArn" Data..=) Prelude.<$> databaseArn,+ ("DatabaseId" Data..=) Prelude.<$> databaseId+ ]+ )++instance Data.ToPath GetDatabase where+ toPath = Prelude.const "/get-database"++instance Data.ToQuery GetDatabase where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newGetDatabaseResponse' smart constructor.+data GetDatabaseResponse = GetDatabaseResponse'+ { database :: Prelude.Maybe Database,+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetDatabaseResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'database', 'getDatabaseResponse_database' -+--+-- 'tags', 'getDatabaseResponse_tags' -+--+-- 'httpStatus', 'getDatabaseResponse_httpStatus' - The response's http status code.+newGetDatabaseResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetDatabaseResponse+newGetDatabaseResponse pHttpStatus_ =+ GetDatabaseResponse'+ { database = Prelude.Nothing,+ tags = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++getDatabaseResponse_database :: Lens.Lens' GetDatabaseResponse (Prelude.Maybe Database)+getDatabaseResponse_database = Lens.lens (\GetDatabaseResponse' {database} -> database) (\s@GetDatabaseResponse' {} a -> s {database = a} :: GetDatabaseResponse)++getDatabaseResponse_tags :: Lens.Lens' GetDatabaseResponse (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+getDatabaseResponse_tags = Lens.lens (\GetDatabaseResponse' {tags} -> tags) (\s@GetDatabaseResponse' {} a -> s {tags = a} :: GetDatabaseResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+getDatabaseResponse_httpStatus :: Lens.Lens' GetDatabaseResponse Prelude.Int+getDatabaseResponse_httpStatus = Lens.lens (\GetDatabaseResponse' {httpStatus} -> httpStatus) (\s@GetDatabaseResponse' {} a -> s {httpStatus = a} :: GetDatabaseResponse)++instance Prelude.NFData GetDatabaseResponse where+ rnf GetDatabaseResponse' {..} =+ Prelude.rnf database+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/SSMSAP/GetOperation.hs view
@@ -0,0 +1,157 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.SSMSAP.GetOperation+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets the details of an operation by specifying the operation ID.+module Amazonka.SSMSAP.GetOperation+ ( -- * Creating a Request+ GetOperation (..),+ newGetOperation,++ -- * Request Lenses+ getOperation_operationId,++ -- * Destructuring the Response+ GetOperationResponse (..),+ newGetOperationResponse,++ -- * Response Lenses+ getOperationResponse_operation,+ getOperationResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSMSAP.Types++-- | /See:/ 'newGetOperation' smart constructor.+data GetOperation = GetOperation'+ { operationId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetOperation' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'operationId', 'getOperation_operationId' -+newGetOperation ::+ -- | 'operationId'+ Prelude.Text ->+ GetOperation+newGetOperation pOperationId_ =+ GetOperation' {operationId = pOperationId_}++getOperation_operationId :: Lens.Lens' GetOperation Prelude.Text+getOperation_operationId = Lens.lens (\GetOperation' {operationId} -> operationId) (\s@GetOperation' {} a -> s {operationId = a} :: GetOperation)++instance Core.AWSRequest GetOperation where+ type AWSResponse GetOperation = GetOperationResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ GetOperationResponse'+ Prelude.<$> (x Data..?> "Operation")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable GetOperation where+ hashWithSalt _salt GetOperation' {..} =+ _salt `Prelude.hashWithSalt` operationId++instance Prelude.NFData GetOperation where+ rnf GetOperation' {..} = Prelude.rnf operationId++instance Data.ToHeaders GetOperation where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON GetOperation where+ toJSON GetOperation' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("OperationId" Data..= operationId)]+ )++instance Data.ToPath GetOperation where+ toPath = Prelude.const "/get-operation"++instance Data.ToQuery GetOperation where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newGetOperationResponse' smart constructor.+data GetOperationResponse = GetOperationResponse'+ { operation :: Prelude.Maybe Operation,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetOperationResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'operation', 'getOperationResponse_operation' -+--+-- 'httpStatus', 'getOperationResponse_httpStatus' - The response's http status code.+newGetOperationResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetOperationResponse+newGetOperationResponse pHttpStatus_ =+ GetOperationResponse'+ { operation = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++getOperationResponse_operation :: Lens.Lens' GetOperationResponse (Prelude.Maybe Operation)+getOperationResponse_operation = Lens.lens (\GetOperationResponse' {operation} -> operation) (\s@GetOperationResponse' {} a -> s {operation = a} :: GetOperationResponse)++-- | The response's http status code.+getOperationResponse_httpStatus :: Lens.Lens' GetOperationResponse Prelude.Int+getOperationResponse_httpStatus = Lens.lens (\GetOperationResponse' {httpStatus} -> httpStatus) (\s@GetOperationResponse' {} a -> s {httpStatus = a} :: GetOperationResponse)++instance Prelude.NFData GetOperationResponse where+ rnf GetOperationResponse' {..} =+ Prelude.rnf operation+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/SSMSAP/GetResourcePermission.hs view
@@ -0,0 +1,177 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.SSMSAP.GetResourcePermission+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Gets permissions associated with the target database.+module Amazonka.SSMSAP.GetResourcePermission+ ( -- * Creating a Request+ GetResourcePermission (..),+ newGetResourcePermission,++ -- * Request Lenses+ getResourcePermission_actionType,+ getResourcePermission_resourceArn,++ -- * Destructuring the Response+ GetResourcePermissionResponse (..),+ newGetResourcePermissionResponse,++ -- * Response Lenses+ getResourcePermissionResponse_policy,+ getResourcePermissionResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSMSAP.Types++-- | /See:/ 'newGetResourcePermission' smart constructor.+data GetResourcePermission = GetResourcePermission'+ { actionType :: Prelude.Maybe PermissionActionType,+ resourceArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetResourcePermission' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'actionType', 'getResourcePermission_actionType' -+--+-- 'resourceArn', 'getResourcePermission_resourceArn' -+newGetResourcePermission ::+ -- | 'resourceArn'+ Prelude.Text ->+ GetResourcePermission+newGetResourcePermission pResourceArn_ =+ GetResourcePermission'+ { actionType =+ Prelude.Nothing,+ resourceArn = pResourceArn_+ }++getResourcePermission_actionType :: Lens.Lens' GetResourcePermission (Prelude.Maybe PermissionActionType)+getResourcePermission_actionType = Lens.lens (\GetResourcePermission' {actionType} -> actionType) (\s@GetResourcePermission' {} a -> s {actionType = a} :: GetResourcePermission)++getResourcePermission_resourceArn :: Lens.Lens' GetResourcePermission Prelude.Text+getResourcePermission_resourceArn = Lens.lens (\GetResourcePermission' {resourceArn} -> resourceArn) (\s@GetResourcePermission' {} a -> s {resourceArn = a} :: GetResourcePermission)++instance Core.AWSRequest GetResourcePermission where+ type+ AWSResponse GetResourcePermission =+ GetResourcePermissionResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ GetResourcePermissionResponse'+ Prelude.<$> (x Data..?> "Policy")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable GetResourcePermission where+ hashWithSalt _salt GetResourcePermission' {..} =+ _salt+ `Prelude.hashWithSalt` actionType+ `Prelude.hashWithSalt` resourceArn++instance Prelude.NFData GetResourcePermission where+ rnf GetResourcePermission' {..} =+ Prelude.rnf actionType+ `Prelude.seq` Prelude.rnf resourceArn++instance Data.ToHeaders GetResourcePermission where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON GetResourcePermission where+ toJSON GetResourcePermission' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("ActionType" Data..=) Prelude.<$> actionType,+ Prelude.Just ("ResourceArn" Data..= resourceArn)+ ]+ )++instance Data.ToPath GetResourcePermission where+ toPath = Prelude.const "/get-resource-permission"++instance Data.ToQuery GetResourcePermission where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newGetResourcePermissionResponse' smart constructor.+data GetResourcePermissionResponse = GetResourcePermissionResponse'+ { policy :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetResourcePermissionResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'policy', 'getResourcePermissionResponse_policy' -+--+-- 'httpStatus', 'getResourcePermissionResponse_httpStatus' - The response's http status code.+newGetResourcePermissionResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ GetResourcePermissionResponse+newGetResourcePermissionResponse pHttpStatus_ =+ GetResourcePermissionResponse'+ { policy =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++getResourcePermissionResponse_policy :: Lens.Lens' GetResourcePermissionResponse (Prelude.Maybe Prelude.Text)+getResourcePermissionResponse_policy = Lens.lens (\GetResourcePermissionResponse' {policy} -> policy) (\s@GetResourcePermissionResponse' {} a -> s {policy = a} :: GetResourcePermissionResponse)++-- | The response's http status code.+getResourcePermissionResponse_httpStatus :: Lens.Lens' GetResourcePermissionResponse Prelude.Int+getResourcePermissionResponse_httpStatus = Lens.lens (\GetResourcePermissionResponse' {httpStatus} -> httpStatus) (\s@GetResourcePermissionResponse' {} a -> s {httpStatus = a} :: GetResourcePermissionResponse)++instance Prelude.NFData GetResourcePermissionResponse where+ rnf GetResourcePermissionResponse' {..} =+ Prelude.rnf policy+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/SSMSAP/Lens.hs view
@@ -0,0 +1,232 @@+{-# 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.SSMSAP.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.SSMSAP.Lens+ ( -- * Operations++ -- ** DeleteResourcePermission+ deleteResourcePermission_actionType,+ deleteResourcePermission_sourceResourceArn,+ deleteResourcePermission_resourceArn,+ deleteResourcePermissionResponse_policy,+ deleteResourcePermissionResponse_httpStatus,++ -- ** DeregisterApplication+ deregisterApplication_applicationId,+ deregisterApplicationResponse_httpStatus,++ -- ** GetApplication+ getApplication_applicationArn,+ getApplication_applicationId,+ getApplicationResponse_application,+ getApplicationResponse_tags,+ getApplicationResponse_httpStatus,++ -- ** GetComponent+ getComponent_applicationId,+ getComponent_componentId,+ getComponentResponse_component,+ getComponentResponse_httpStatus,++ -- ** GetDatabase+ getDatabase_applicationId,+ getDatabase_componentId,+ getDatabase_databaseArn,+ getDatabase_databaseId,+ getDatabaseResponse_database,+ getDatabaseResponse_tags,+ getDatabaseResponse_httpStatus,++ -- ** GetOperation+ getOperation_operationId,+ getOperationResponse_operation,+ getOperationResponse_httpStatus,++ -- ** GetResourcePermission+ getResourcePermission_actionType,+ getResourcePermission_resourceArn,+ getResourcePermissionResponse_policy,+ getResourcePermissionResponse_httpStatus,++ -- ** ListApplications+ listApplications_maxResults,+ listApplications_nextToken,+ listApplicationsResponse_applications,+ listApplicationsResponse_nextToken,+ listApplicationsResponse_httpStatus,++ -- ** ListComponents+ listComponents_applicationId,+ listComponents_maxResults,+ listComponents_nextToken,+ listComponentsResponse_components,+ listComponentsResponse_nextToken,+ listComponentsResponse_httpStatus,++ -- ** ListDatabases+ listDatabases_applicationId,+ listDatabases_componentId,+ listDatabases_maxResults,+ listDatabases_nextToken,+ listDatabasesResponse_databases,+ listDatabasesResponse_nextToken,+ listDatabasesResponse_httpStatus,++ -- ** ListTagsForResource+ listTagsForResource_resourceArn,+ listTagsForResourceResponse_tags,+ listTagsForResourceResponse_httpStatus,++ -- ** PutResourcePermission+ putResourcePermission_actionType,+ putResourcePermission_sourceResourceArn,+ putResourcePermission_resourceArn,+ putResourcePermissionResponse_policy,+ putResourcePermissionResponse_httpStatus,++ -- ** RegisterApplication+ registerApplication_sapInstanceNumber,+ registerApplication_sid,+ registerApplication_tags,+ registerApplication_applicationId,+ registerApplication_applicationType,+ registerApplication_instances,+ registerApplication_credentials,+ registerApplicationResponse_application,+ registerApplicationResponse_operationId,+ registerApplicationResponse_httpStatus,++ -- ** TagResource+ tagResource_resourceArn,+ tagResource_tags,+ tagResourceResponse_httpStatus,++ -- ** UntagResource+ untagResource_resourceArn,+ untagResource_tagKeys,+ untagResourceResponse_httpStatus,++ -- ** UpdateApplicationSettings+ updateApplicationSettings_credentialsToAddOrUpdate,+ updateApplicationSettings_credentialsToRemove,+ updateApplicationSettings_applicationId,+ updateApplicationSettingsResponse_message,+ updateApplicationSettingsResponse_operationIds,+ updateApplicationSettingsResponse_httpStatus,++ -- * Types++ -- ** Application+ application_appRegistryArn,+ application_arn,+ application_components,+ application_id,+ application_lastUpdated,+ application_status,+ application_statusMessage,+ application_type,++ -- ** ApplicationCredential+ applicationCredential_databaseName,+ applicationCredential_credentialType,+ applicationCredential_secretId,++ -- ** ApplicationSummary+ applicationSummary_arn,+ applicationSummary_id,+ applicationSummary_tags,+ applicationSummary_type,++ -- ** Component+ component_applicationId,+ component_componentId,+ component_componentType,+ component_databases,+ component_hosts,+ component_lastUpdated,+ component_primaryHost,+ component_status,++ -- ** ComponentSummary+ componentSummary_applicationId,+ componentSummary_componentId,+ componentSummary_componentType,+ componentSummary_tags,++ -- ** Database+ database_applicationId,+ database_arn,+ database_componentId,+ database_credentials,+ database_databaseId,+ database_databaseName,+ database_databaseType,+ database_lastUpdated,+ database_primaryHost,+ database_sQLPort,+ database_status,++ -- ** DatabaseSummary+ databaseSummary_applicationId,+ databaseSummary_arn,+ databaseSummary_componentId,+ databaseSummary_databaseId,+ databaseSummary_databaseType,+ databaseSummary_tags,++ -- ** Host+ host_hostIp,+ host_hostName,+ host_hostRole,+ host_instanceId,++ -- ** Operation+ operation_endTime,+ operation_id,+ operation_lastUpdatedTime,+ operation_properties,+ operation_resourceArn,+ operation_resourceId,+ operation_resourceType,+ operation_startTime,+ operation_status,+ operation_statusMessage,+ operation_type,+ )+where++import Amazonka.SSMSAP.DeleteResourcePermission+import Amazonka.SSMSAP.DeregisterApplication+import Amazonka.SSMSAP.GetApplication+import Amazonka.SSMSAP.GetComponent+import Amazonka.SSMSAP.GetDatabase+import Amazonka.SSMSAP.GetOperation+import Amazonka.SSMSAP.GetResourcePermission+import Amazonka.SSMSAP.ListApplications+import Amazonka.SSMSAP.ListComponents+import Amazonka.SSMSAP.ListDatabases+import Amazonka.SSMSAP.ListTagsForResource+import Amazonka.SSMSAP.PutResourcePermission+import Amazonka.SSMSAP.RegisterApplication+import Amazonka.SSMSAP.TagResource+import Amazonka.SSMSAP.Types.Application+import Amazonka.SSMSAP.Types.ApplicationCredential+import Amazonka.SSMSAP.Types.ApplicationSummary+import Amazonka.SSMSAP.Types.Component+import Amazonka.SSMSAP.Types.ComponentSummary+import Amazonka.SSMSAP.Types.Database+import Amazonka.SSMSAP.Types.DatabaseSummary+import Amazonka.SSMSAP.Types.Host+import Amazonka.SSMSAP.Types.Operation+import Amazonka.SSMSAP.UntagResource+import Amazonka.SSMSAP.UpdateApplicationSettings
+ gen/Amazonka/SSMSAP/ListApplications.hs view
@@ -0,0 +1,208 @@+{-# 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.SSMSAP.ListApplications+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists all the applications registered with AWS Systems Manager for SAP.+--+-- This operation returns paginated results.+module Amazonka.SSMSAP.ListApplications+ ( -- * Creating a Request+ ListApplications (..),+ newListApplications,++ -- * Request Lenses+ listApplications_maxResults,+ listApplications_nextToken,++ -- * Destructuring the Response+ ListApplicationsResponse (..),+ newListApplicationsResponse,++ -- * Response Lenses+ listApplicationsResponse_applications,+ listApplicationsResponse_nextToken,+ listApplicationsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSMSAP.Types++-- | /See:/ 'newListApplications' smart constructor.+data ListApplications = ListApplications'+ { maxResults :: Prelude.Maybe Prelude.Natural,+ nextToken :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListApplications' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'maxResults', 'listApplications_maxResults' -+--+-- 'nextToken', 'listApplications_nextToken' -+newListApplications ::+ ListApplications+newListApplications =+ ListApplications'+ { maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing+ }++listApplications_maxResults :: Lens.Lens' ListApplications (Prelude.Maybe Prelude.Natural)+listApplications_maxResults = Lens.lens (\ListApplications' {maxResults} -> maxResults) (\s@ListApplications' {} a -> s {maxResults = a} :: ListApplications)++listApplications_nextToken :: Lens.Lens' ListApplications (Prelude.Maybe Prelude.Text)+listApplications_nextToken = Lens.lens (\ListApplications' {nextToken} -> nextToken) (\s@ListApplications' {} a -> s {nextToken = a} :: ListApplications)++instance Core.AWSPager ListApplications where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listApplicationsResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? listApplicationsResponse_applications+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listApplications_nextToken+ Lens..~ rs+ Lens.^? listApplicationsResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ListApplications where+ type+ AWSResponse ListApplications =+ ListApplicationsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListApplicationsResponse'+ Prelude.<$> (x Data..?> "Applications" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "NextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListApplications where+ hashWithSalt _salt ListApplications' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken++instance Prelude.NFData ListApplications where+ rnf ListApplications' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken++instance Data.ToHeaders ListApplications where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListApplications where+ toJSON ListApplications' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("MaxResults" Data..=) Prelude.<$> maxResults,+ ("NextToken" Data..=) Prelude.<$> nextToken+ ]+ )++instance Data.ToPath ListApplications where+ toPath = Prelude.const "/list-applications"++instance Data.ToQuery ListApplications where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListApplicationsResponse' smart constructor.+data ListApplicationsResponse = ListApplicationsResponse'+ { applications :: Prelude.Maybe [ApplicationSummary],+ 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 'ListApplicationsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applications', 'listApplicationsResponse_applications' -+--+-- 'nextToken', 'listApplicationsResponse_nextToken' -+--+-- 'httpStatus', 'listApplicationsResponse_httpStatus' - The response's http status code.+newListApplicationsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListApplicationsResponse+newListApplicationsResponse pHttpStatus_ =+ ListApplicationsResponse'+ { applications =+ Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++listApplicationsResponse_applications :: Lens.Lens' ListApplicationsResponse (Prelude.Maybe [ApplicationSummary])+listApplicationsResponse_applications = Lens.lens (\ListApplicationsResponse' {applications} -> applications) (\s@ListApplicationsResponse' {} a -> s {applications = a} :: ListApplicationsResponse) Prelude.. Lens.mapping Lens.coerced++listApplicationsResponse_nextToken :: Lens.Lens' ListApplicationsResponse (Prelude.Maybe Prelude.Text)+listApplicationsResponse_nextToken = Lens.lens (\ListApplicationsResponse' {nextToken} -> nextToken) (\s@ListApplicationsResponse' {} a -> s {nextToken = a} :: ListApplicationsResponse)++-- | The response's http status code.+listApplicationsResponse_httpStatus :: Lens.Lens' ListApplicationsResponse Prelude.Int+listApplicationsResponse_httpStatus = Lens.lens (\ListApplicationsResponse' {httpStatus} -> httpStatus) (\s@ListApplicationsResponse' {} a -> s {httpStatus = a} :: ListApplicationsResponse)++instance Prelude.NFData ListApplicationsResponse where+ rnf ListApplicationsResponse' {..} =+ Prelude.rnf applications+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/SSMSAP/ListComponents.hs view
@@ -0,0 +1,219 @@+{-# 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.SSMSAP.ListComponents+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists all the components registered with AWS Systems Manager for SAP.+--+-- This operation returns paginated results.+module Amazonka.SSMSAP.ListComponents+ ( -- * Creating a Request+ ListComponents (..),+ newListComponents,++ -- * Request Lenses+ listComponents_applicationId,+ listComponents_maxResults,+ listComponents_nextToken,++ -- * Destructuring the Response+ ListComponentsResponse (..),+ newListComponentsResponse,++ -- * Response Lenses+ listComponentsResponse_components,+ listComponentsResponse_nextToken,+ listComponentsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSMSAP.Types++-- | /See:/ 'newListComponents' smart constructor.+data ListComponents = ListComponents'+ { applicationId :: Prelude.Maybe Prelude.Text,+ maxResults :: Prelude.Maybe Prelude.Natural,+ nextToken :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListComponents' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationId', 'listComponents_applicationId' -+--+-- 'maxResults', 'listComponents_maxResults' -+--+-- 'nextToken', 'listComponents_nextToken' -+newListComponents ::+ ListComponents+newListComponents =+ ListComponents'+ { applicationId = Prelude.Nothing,+ maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing+ }++listComponents_applicationId :: Lens.Lens' ListComponents (Prelude.Maybe Prelude.Text)+listComponents_applicationId = Lens.lens (\ListComponents' {applicationId} -> applicationId) (\s@ListComponents' {} a -> s {applicationId = a} :: ListComponents)++listComponents_maxResults :: Lens.Lens' ListComponents (Prelude.Maybe Prelude.Natural)+listComponents_maxResults = Lens.lens (\ListComponents' {maxResults} -> maxResults) (\s@ListComponents' {} a -> s {maxResults = a} :: ListComponents)++listComponents_nextToken :: Lens.Lens' ListComponents (Prelude.Maybe Prelude.Text)+listComponents_nextToken = Lens.lens (\ListComponents' {nextToken} -> nextToken) (\s@ListComponents' {} a -> s {nextToken = a} :: ListComponents)++instance Core.AWSPager ListComponents where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listComponentsResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? listComponentsResponse_components+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listComponents_nextToken+ Lens..~ rs+ Lens.^? listComponentsResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ListComponents where+ type+ AWSResponse ListComponents =+ ListComponentsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListComponentsResponse'+ Prelude.<$> (x Data..?> "Components" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "NextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListComponents where+ hashWithSalt _salt ListComponents' {..} =+ _salt+ `Prelude.hashWithSalt` applicationId+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken++instance Prelude.NFData ListComponents where+ rnf ListComponents' {..} =+ Prelude.rnf applicationId+ `Prelude.seq` Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken++instance Data.ToHeaders ListComponents where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListComponents where+ toJSON ListComponents' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("ApplicationId" Data..=) Prelude.<$> applicationId,+ ("MaxResults" Data..=) Prelude.<$> maxResults,+ ("NextToken" Data..=) Prelude.<$> nextToken+ ]+ )++instance Data.ToPath ListComponents where+ toPath = Prelude.const "/list-components"++instance Data.ToQuery ListComponents where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListComponentsResponse' smart constructor.+data ListComponentsResponse = ListComponentsResponse'+ { components :: Prelude.Maybe [ComponentSummary],+ 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 'ListComponentsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'components', 'listComponentsResponse_components' -+--+-- 'nextToken', 'listComponentsResponse_nextToken' -+--+-- 'httpStatus', 'listComponentsResponse_httpStatus' - The response's http status code.+newListComponentsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListComponentsResponse+newListComponentsResponse pHttpStatus_ =+ ListComponentsResponse'+ { components =+ Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++listComponentsResponse_components :: Lens.Lens' ListComponentsResponse (Prelude.Maybe [ComponentSummary])+listComponentsResponse_components = Lens.lens (\ListComponentsResponse' {components} -> components) (\s@ListComponentsResponse' {} a -> s {components = a} :: ListComponentsResponse) Prelude.. Lens.mapping Lens.coerced++listComponentsResponse_nextToken :: Lens.Lens' ListComponentsResponse (Prelude.Maybe Prelude.Text)+listComponentsResponse_nextToken = Lens.lens (\ListComponentsResponse' {nextToken} -> nextToken) (\s@ListComponentsResponse' {} a -> s {nextToken = a} :: ListComponentsResponse)++-- | The response's http status code.+listComponentsResponse_httpStatus :: Lens.Lens' ListComponentsResponse Prelude.Int+listComponentsResponse_httpStatus = Lens.lens (\ListComponentsResponse' {httpStatus} -> httpStatus) (\s@ListComponentsResponse' {} a -> s {httpStatus = a} :: ListComponentsResponse)++instance Prelude.NFData ListComponentsResponse where+ rnf ListComponentsResponse' {..} =+ Prelude.rnf components+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/SSMSAP/ListDatabases.hs view
@@ -0,0 +1,230 @@+{-# 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.SSMSAP.ListDatabases+-- 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 SAP HANA databases of an application registered with AWS+-- Systems Manager for SAP.+--+-- This operation returns paginated results.+module Amazonka.SSMSAP.ListDatabases+ ( -- * Creating a Request+ ListDatabases (..),+ newListDatabases,++ -- * Request Lenses+ listDatabases_applicationId,+ listDatabases_componentId,+ listDatabases_maxResults,+ listDatabases_nextToken,++ -- * Destructuring the Response+ ListDatabasesResponse (..),+ newListDatabasesResponse,++ -- * Response Lenses+ listDatabasesResponse_databases,+ listDatabasesResponse_nextToken,+ listDatabasesResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSMSAP.Types++-- | /See:/ 'newListDatabases' smart constructor.+data ListDatabases = ListDatabases'+ { applicationId :: Prelude.Maybe Prelude.Text,+ componentId :: Prelude.Maybe Prelude.Text,+ maxResults :: Prelude.Maybe Prelude.Natural,+ nextToken :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListDatabases' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationId', 'listDatabases_applicationId' -+--+-- 'componentId', 'listDatabases_componentId' -+--+-- 'maxResults', 'listDatabases_maxResults' -+--+-- 'nextToken', 'listDatabases_nextToken' -+newListDatabases ::+ ListDatabases+newListDatabases =+ ListDatabases'+ { applicationId = Prelude.Nothing,+ componentId = Prelude.Nothing,+ maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing+ }++listDatabases_applicationId :: Lens.Lens' ListDatabases (Prelude.Maybe Prelude.Text)+listDatabases_applicationId = Lens.lens (\ListDatabases' {applicationId} -> applicationId) (\s@ListDatabases' {} a -> s {applicationId = a} :: ListDatabases)++listDatabases_componentId :: Lens.Lens' ListDatabases (Prelude.Maybe Prelude.Text)+listDatabases_componentId = Lens.lens (\ListDatabases' {componentId} -> componentId) (\s@ListDatabases' {} a -> s {componentId = a} :: ListDatabases)++listDatabases_maxResults :: Lens.Lens' ListDatabases (Prelude.Maybe Prelude.Natural)+listDatabases_maxResults = Lens.lens (\ListDatabases' {maxResults} -> maxResults) (\s@ListDatabases' {} a -> s {maxResults = a} :: ListDatabases)++listDatabases_nextToken :: Lens.Lens' ListDatabases (Prelude.Maybe Prelude.Text)+listDatabases_nextToken = Lens.lens (\ListDatabases' {nextToken} -> nextToken) (\s@ListDatabases' {} a -> s {nextToken = a} :: ListDatabases)++instance Core.AWSPager ListDatabases where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listDatabasesResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? listDatabasesResponse_databases+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listDatabases_nextToken+ Lens..~ rs+ Lens.^? listDatabasesResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ListDatabases where+ type+ AWSResponse ListDatabases =+ ListDatabasesResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListDatabasesResponse'+ Prelude.<$> (x Data..?> "Databases" Core..!@ Prelude.mempty)+ Prelude.<*> (x Data..?> "NextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListDatabases where+ hashWithSalt _salt ListDatabases' {..} =+ _salt+ `Prelude.hashWithSalt` applicationId+ `Prelude.hashWithSalt` componentId+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken++instance Prelude.NFData ListDatabases where+ rnf ListDatabases' {..} =+ Prelude.rnf applicationId+ `Prelude.seq` Prelude.rnf componentId+ `Prelude.seq` Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken++instance Data.ToHeaders ListDatabases where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListDatabases where+ toJSON ListDatabases' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("ApplicationId" Data..=) Prelude.<$> applicationId,+ ("ComponentId" Data..=) Prelude.<$> componentId,+ ("MaxResults" Data..=) Prelude.<$> maxResults,+ ("NextToken" Data..=) Prelude.<$> nextToken+ ]+ )++instance Data.ToPath ListDatabases where+ toPath = Prelude.const "/list-databases"++instance Data.ToQuery ListDatabases where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListDatabasesResponse' smart constructor.+data ListDatabasesResponse = ListDatabasesResponse'+ { databases :: Prelude.Maybe [DatabaseSummary],+ 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 'ListDatabasesResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'databases', 'listDatabasesResponse_databases' -+--+-- 'nextToken', 'listDatabasesResponse_nextToken' -+--+-- 'httpStatus', 'listDatabasesResponse_httpStatus' - The response's http status code.+newListDatabasesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListDatabasesResponse+newListDatabasesResponse pHttpStatus_ =+ ListDatabasesResponse'+ { databases = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++listDatabasesResponse_databases :: Lens.Lens' ListDatabasesResponse (Prelude.Maybe [DatabaseSummary])+listDatabasesResponse_databases = Lens.lens (\ListDatabasesResponse' {databases} -> databases) (\s@ListDatabasesResponse' {} a -> s {databases = a} :: ListDatabasesResponse) Prelude.. Lens.mapping Lens.coerced++listDatabasesResponse_nextToken :: Lens.Lens' ListDatabasesResponse (Prelude.Maybe Prelude.Text)+listDatabasesResponse_nextToken = Lens.lens (\ListDatabasesResponse' {nextToken} -> nextToken) (\s@ListDatabasesResponse' {} a -> s {nextToken = a} :: ListDatabasesResponse)++-- | The response's http status code.+listDatabasesResponse_httpStatus :: Lens.Lens' ListDatabasesResponse Prelude.Int+listDatabasesResponse_httpStatus = Lens.lens (\ListDatabasesResponse' {httpStatus} -> httpStatus) (\s@ListDatabasesResponse' {} a -> s {httpStatus = a} :: ListDatabasesResponse)++instance Prelude.NFData ListDatabasesResponse where+ rnf ListDatabasesResponse' {..} =+ Prelude.rnf databases+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/SSMSAP/ListTagsForResource.hs view
@@ -0,0 +1,156 @@+{-# 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.SSMSAP.ListTagsForResource+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Lists all tags on an SAP HANA application and\/or database registered+-- with AWS Systems Manager for SAP.+module Amazonka.SSMSAP.ListTagsForResource+ ( -- * Creating a Request+ ListTagsForResource (..),+ newListTagsForResource,++ -- * Request Lenses+ listTagsForResource_resourceArn,++ -- * Destructuring the Response+ ListTagsForResourceResponse (..),+ newListTagsForResourceResponse,++ -- * Response Lenses+ listTagsForResourceResponse_tags,+ listTagsForResourceResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSMSAP.Types++-- | /See:/ 'newListTagsForResource' smart constructor.+data ListTagsForResource = ListTagsForResource'+ { 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' -+newListTagsForResource ::+ -- | 'resourceArn'+ Prelude.Text ->+ ListTagsForResource+newListTagsForResource pResourceArn_ =+ ListTagsForResource' {resourceArn = pResourceArn_}++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'+ { 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' -+--+-- 'httpStatus', 'listTagsForResourceResponse_httpStatus' - The response's http status code.+newListTagsForResourceResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListTagsForResourceResponse+newListTagsForResourceResponse pHttpStatus_ =+ ListTagsForResourceResponse'+ { tags =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++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/SSMSAP/PutResourcePermission.hs view
@@ -0,0 +1,195 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.SSMSAP.PutResourcePermission+-- 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 permissions to the target database.+module Amazonka.SSMSAP.PutResourcePermission+ ( -- * Creating a Request+ PutResourcePermission (..),+ newPutResourcePermission,++ -- * Request Lenses+ putResourcePermission_actionType,+ putResourcePermission_sourceResourceArn,+ putResourcePermission_resourceArn,++ -- * Destructuring the Response+ PutResourcePermissionResponse (..),+ newPutResourcePermissionResponse,++ -- * Response Lenses+ putResourcePermissionResponse_policy,+ putResourcePermissionResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSMSAP.Types++-- | /See:/ 'newPutResourcePermission' smart constructor.+data PutResourcePermission = PutResourcePermission'+ { actionType :: PermissionActionType,+ sourceResourceArn :: Prelude.Text,+ resourceArn :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PutResourcePermission' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'actionType', 'putResourcePermission_actionType' -+--+-- 'sourceResourceArn', 'putResourcePermission_sourceResourceArn' -+--+-- 'resourceArn', 'putResourcePermission_resourceArn' -+newPutResourcePermission ::+ -- | 'actionType'+ PermissionActionType ->+ -- | 'sourceResourceArn'+ Prelude.Text ->+ -- | 'resourceArn'+ Prelude.Text ->+ PutResourcePermission+newPutResourcePermission+ pActionType_+ pSourceResourceArn_+ pResourceArn_ =+ PutResourcePermission'+ { actionType = pActionType_,+ sourceResourceArn = pSourceResourceArn_,+ resourceArn = pResourceArn_+ }++putResourcePermission_actionType :: Lens.Lens' PutResourcePermission PermissionActionType+putResourcePermission_actionType = Lens.lens (\PutResourcePermission' {actionType} -> actionType) (\s@PutResourcePermission' {} a -> s {actionType = a} :: PutResourcePermission)++putResourcePermission_sourceResourceArn :: Lens.Lens' PutResourcePermission Prelude.Text+putResourcePermission_sourceResourceArn = Lens.lens (\PutResourcePermission' {sourceResourceArn} -> sourceResourceArn) (\s@PutResourcePermission' {} a -> s {sourceResourceArn = a} :: PutResourcePermission)++putResourcePermission_resourceArn :: Lens.Lens' PutResourcePermission Prelude.Text+putResourcePermission_resourceArn = Lens.lens (\PutResourcePermission' {resourceArn} -> resourceArn) (\s@PutResourcePermission' {} a -> s {resourceArn = a} :: PutResourcePermission)++instance Core.AWSRequest PutResourcePermission where+ type+ AWSResponse PutResourcePermission =+ PutResourcePermissionResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ PutResourcePermissionResponse'+ Prelude.<$> (x Data..?> "Policy")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable PutResourcePermission where+ hashWithSalt _salt PutResourcePermission' {..} =+ _salt+ `Prelude.hashWithSalt` actionType+ `Prelude.hashWithSalt` sourceResourceArn+ `Prelude.hashWithSalt` resourceArn++instance Prelude.NFData PutResourcePermission where+ rnf PutResourcePermission' {..} =+ Prelude.rnf actionType+ `Prelude.seq` Prelude.rnf sourceResourceArn+ `Prelude.seq` Prelude.rnf resourceArn++instance Data.ToHeaders PutResourcePermission where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON PutResourcePermission where+ toJSON PutResourcePermission' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("ActionType" Data..= actionType),+ Prelude.Just+ ("SourceResourceArn" Data..= sourceResourceArn),+ Prelude.Just ("ResourceArn" Data..= resourceArn)+ ]+ )++instance Data.ToPath PutResourcePermission where+ toPath = Prelude.const "/put-resource-permission"++instance Data.ToQuery PutResourcePermission where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newPutResourcePermissionResponse' smart constructor.+data PutResourcePermissionResponse = PutResourcePermissionResponse'+ { policy :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PutResourcePermissionResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'policy', 'putResourcePermissionResponse_policy' -+--+-- 'httpStatus', 'putResourcePermissionResponse_httpStatus' - The response's http status code.+newPutResourcePermissionResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ PutResourcePermissionResponse+newPutResourcePermissionResponse pHttpStatus_ =+ PutResourcePermissionResponse'+ { policy =+ Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++putResourcePermissionResponse_policy :: Lens.Lens' PutResourcePermissionResponse (Prelude.Maybe Prelude.Text)+putResourcePermissionResponse_policy = Lens.lens (\PutResourcePermissionResponse' {policy} -> policy) (\s@PutResourcePermissionResponse' {} a -> s {policy = a} :: PutResourcePermissionResponse)++-- | The response's http status code.+putResourcePermissionResponse_httpStatus :: Lens.Lens' PutResourcePermissionResponse Prelude.Int+putResourcePermissionResponse_httpStatus = Lens.lens (\PutResourcePermissionResponse' {httpStatus} -> httpStatus) (\s@PutResourcePermissionResponse' {} a -> s {httpStatus = a} :: PutResourcePermissionResponse)++instance Prelude.NFData PutResourcePermissionResponse where+ rnf PutResourcePermissionResponse' {..} =+ Prelude.rnf policy+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/SSMSAP/RegisterApplication.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.SSMSAP.RegisterApplication+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Register an SAP application with AWS Systems Manager for SAP. You must+-- meet the following requirements before registering.+--+-- The SAP application you want to register with AWS Systems Manager for+-- SAP is running on Amazon EC2.+--+-- AWS Systems Manager Agent must be setup on an Amazon EC2 instance along+-- with the required IAM permissions.+--+-- Amazon EC2 instance(s) must have access to the secrets created in AWS+-- Secrets Manager to manage SAP applications and components.+module Amazonka.SSMSAP.RegisterApplication+ ( -- * Creating a Request+ RegisterApplication (..),+ newRegisterApplication,++ -- * Request Lenses+ registerApplication_sapInstanceNumber,+ registerApplication_sid,+ registerApplication_tags,+ registerApplication_applicationId,+ registerApplication_applicationType,+ registerApplication_instances,+ registerApplication_credentials,++ -- * Destructuring the Response+ RegisterApplicationResponse (..),+ newRegisterApplicationResponse,++ -- * Response Lenses+ registerApplicationResponse_application,+ registerApplicationResponse_operationId,+ registerApplicationResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSMSAP.Types++-- | /See:/ 'newRegisterApplication' smart constructor.+data RegisterApplication = RegisterApplication'+ { sapInstanceNumber :: Prelude.Maybe Prelude.Text,+ sid :: Prelude.Maybe Prelude.Text,+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ applicationId :: Prelude.Text,+ applicationType :: ApplicationType,+ instances :: Prelude.NonEmpty Prelude.Text,+ credentials :: Prelude.NonEmpty ApplicationCredential+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RegisterApplication' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'sapInstanceNumber', 'registerApplication_sapInstanceNumber' -+--+-- 'sid', 'registerApplication_sid' -+--+-- 'tags', 'registerApplication_tags' -+--+-- 'applicationId', 'registerApplication_applicationId' -+--+-- 'applicationType', 'registerApplication_applicationType' -+--+-- 'instances', 'registerApplication_instances' -+--+-- 'credentials', 'registerApplication_credentials' -+newRegisterApplication ::+ -- | 'applicationId'+ Prelude.Text ->+ -- | 'applicationType'+ ApplicationType ->+ -- | 'instances'+ Prelude.NonEmpty Prelude.Text ->+ -- | 'credentials'+ Prelude.NonEmpty ApplicationCredential ->+ RegisterApplication+newRegisterApplication+ pApplicationId_+ pApplicationType_+ pInstances_+ pCredentials_ =+ RegisterApplication'+ { sapInstanceNumber =+ Prelude.Nothing,+ sid = Prelude.Nothing,+ tags = Prelude.Nothing,+ applicationId = pApplicationId_,+ applicationType = pApplicationType_,+ instances = Lens.coerced Lens.# pInstances_,+ credentials = Lens.coerced Lens.# pCredentials_+ }++registerApplication_sapInstanceNumber :: Lens.Lens' RegisterApplication (Prelude.Maybe Prelude.Text)+registerApplication_sapInstanceNumber = Lens.lens (\RegisterApplication' {sapInstanceNumber} -> sapInstanceNumber) (\s@RegisterApplication' {} a -> s {sapInstanceNumber = a} :: RegisterApplication)++registerApplication_sid :: Lens.Lens' RegisterApplication (Prelude.Maybe Prelude.Text)+registerApplication_sid = Lens.lens (\RegisterApplication' {sid} -> sid) (\s@RegisterApplication' {} a -> s {sid = a} :: RegisterApplication)++registerApplication_tags :: Lens.Lens' RegisterApplication (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+registerApplication_tags = Lens.lens (\RegisterApplication' {tags} -> tags) (\s@RegisterApplication' {} a -> s {tags = a} :: RegisterApplication) Prelude.. Lens.mapping Lens.coerced++registerApplication_applicationId :: Lens.Lens' RegisterApplication Prelude.Text+registerApplication_applicationId = Lens.lens (\RegisterApplication' {applicationId} -> applicationId) (\s@RegisterApplication' {} a -> s {applicationId = a} :: RegisterApplication)++registerApplication_applicationType :: Lens.Lens' RegisterApplication ApplicationType+registerApplication_applicationType = Lens.lens (\RegisterApplication' {applicationType} -> applicationType) (\s@RegisterApplication' {} a -> s {applicationType = a} :: RegisterApplication)++registerApplication_instances :: Lens.Lens' RegisterApplication (Prelude.NonEmpty Prelude.Text)+registerApplication_instances = Lens.lens (\RegisterApplication' {instances} -> instances) (\s@RegisterApplication' {} a -> s {instances = a} :: RegisterApplication) Prelude.. Lens.coerced++registerApplication_credentials :: Lens.Lens' RegisterApplication (Prelude.NonEmpty ApplicationCredential)+registerApplication_credentials = Lens.lens (\RegisterApplication' {credentials} -> credentials) (\s@RegisterApplication' {} a -> s {credentials = a} :: RegisterApplication) Prelude.. Lens.coerced++instance Core.AWSRequest RegisterApplication where+ type+ AWSResponse RegisterApplication =+ RegisterApplicationResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ RegisterApplicationResponse'+ Prelude.<$> (x Data..?> "Application")+ Prelude.<*> (x Data..?> "OperationId")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable RegisterApplication where+ hashWithSalt _salt RegisterApplication' {..} =+ _salt+ `Prelude.hashWithSalt` sapInstanceNumber+ `Prelude.hashWithSalt` sid+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` applicationId+ `Prelude.hashWithSalt` applicationType+ `Prelude.hashWithSalt` instances+ `Prelude.hashWithSalt` credentials++instance Prelude.NFData RegisterApplication where+ rnf RegisterApplication' {..} =+ Prelude.rnf sapInstanceNumber+ `Prelude.seq` Prelude.rnf sid+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf applicationId+ `Prelude.seq` Prelude.rnf applicationType+ `Prelude.seq` Prelude.rnf instances+ `Prelude.seq` Prelude.rnf credentials++instance Data.ToHeaders RegisterApplication where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON RegisterApplication where+ toJSON RegisterApplication' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("SapInstanceNumber" Data..=)+ Prelude.<$> sapInstanceNumber,+ ("Sid" Data..=) Prelude.<$> sid,+ ("Tags" Data..=) Prelude.<$> tags,+ Prelude.Just ("ApplicationId" Data..= applicationId),+ Prelude.Just+ ("ApplicationType" Data..= applicationType),+ Prelude.Just ("Instances" Data..= instances),+ Prelude.Just ("Credentials" Data..= credentials)+ ]+ )++instance Data.ToPath RegisterApplication where+ toPath = Prelude.const "/register-application"++instance Data.ToQuery RegisterApplication where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newRegisterApplicationResponse' smart constructor.+data RegisterApplicationResponse = RegisterApplicationResponse'+ { application :: Prelude.Maybe Application,+ operationId :: 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 'RegisterApplicationResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'application', 'registerApplicationResponse_application' -+--+-- 'operationId', 'registerApplicationResponse_operationId' -+--+-- 'httpStatus', 'registerApplicationResponse_httpStatus' - The response's http status code.+newRegisterApplicationResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ RegisterApplicationResponse+newRegisterApplicationResponse pHttpStatus_ =+ RegisterApplicationResponse'+ { application =+ Prelude.Nothing,+ operationId = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++registerApplicationResponse_application :: Lens.Lens' RegisterApplicationResponse (Prelude.Maybe Application)+registerApplicationResponse_application = Lens.lens (\RegisterApplicationResponse' {application} -> application) (\s@RegisterApplicationResponse' {} a -> s {application = a} :: RegisterApplicationResponse)++registerApplicationResponse_operationId :: Lens.Lens' RegisterApplicationResponse (Prelude.Maybe Prelude.Text)+registerApplicationResponse_operationId = Lens.lens (\RegisterApplicationResponse' {operationId} -> operationId) (\s@RegisterApplicationResponse' {} a -> s {operationId = a} :: RegisterApplicationResponse)++-- | The response's http status code.+registerApplicationResponse_httpStatus :: Lens.Lens' RegisterApplicationResponse Prelude.Int+registerApplicationResponse_httpStatus = Lens.lens (\RegisterApplicationResponse' {httpStatus} -> httpStatus) (\s@RegisterApplicationResponse' {} a -> s {httpStatus = a} :: RegisterApplicationResponse)++instance Prelude.NFData RegisterApplicationResponse where+ rnf RegisterApplicationResponse' {..} =+ Prelude.rnf application+ `Prelude.seq` Prelude.rnf operationId+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/SSMSAP/TagResource.hs view
@@ -0,0 +1,159 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.SSMSAP.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)+--+-- Creates tag for a resource by specifying the ARN.+module Amazonka.SSMSAP.TagResource+ ( -- * Creating a Request+ TagResource (..),+ newTagResource,++ -- * Request Lenses+ tagResource_resourceArn,+ tagResource_tags,++ -- * Destructuring the Response+ TagResourceResponse (..),+ newTagResourceResponse,++ -- * Response Lenses+ tagResourceResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSMSAP.Types++-- | /See:/ 'newTagResource' smart constructor.+data TagResource = TagResource'+ { resourceArn :: Prelude.Text,+ tags :: Prelude.HashMap Prelude.Text Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TagResource' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'resourceArn', 'tagResource_resourceArn' -+--+-- 'tags', 'tagResource_tags' -+newTagResource ::+ -- | 'resourceArn'+ Prelude.Text ->+ TagResource+newTagResource pResourceArn_ =+ TagResource'+ { resourceArn = pResourceArn_,+ tags = Prelude.mempty+ }++tagResource_resourceArn :: Lens.Lens' TagResource Prelude.Text+tagResource_resourceArn = Lens.lens (\TagResource' {resourceArn} -> resourceArn) (\s@TagResource' {} a -> s {resourceArn = a} :: TagResource)++tagResource_tags :: Lens.Lens' TagResource (Prelude.HashMap Prelude.Text Prelude.Text)+tagResource_tags = Lens.lens (\TagResource' {tags} -> tags) (\s@TagResource' {} a -> s {tags = a} :: TagResource) Prelude.. Lens.coerced++instance Core.AWSRequest TagResource where+ type AWSResponse TagResource = TagResourceResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveEmpty+ ( \s h x ->+ TagResourceResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable TagResource where+ hashWithSalt _salt TagResource' {..} =+ _salt+ `Prelude.hashWithSalt` resourceArn+ `Prelude.hashWithSalt` tags++instance Prelude.NFData TagResource where+ rnf TagResource' {..} =+ Prelude.rnf resourceArn+ `Prelude.seq` Prelude.rnf tags++instance Data.ToHeaders TagResource where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON TagResource where+ toJSON TagResource' {..} =+ Data.object+ ( Prelude.catMaybes+ [Prelude.Just ("tags" Data..= tags)]+ )++instance Data.ToPath TagResource where+ toPath TagResource' {..} =+ Prelude.mconcat ["/tags/", Data.toBS resourceArn]++instance Data.ToQuery TagResource where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newTagResourceResponse' smart constructor.+data TagResourceResponse = TagResourceResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'TagResourceResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'tagResourceResponse_httpStatus' - The response's http status code.+newTagResourceResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ TagResourceResponse+newTagResourceResponse pHttpStatus_ =+ TagResourceResponse' {httpStatus = pHttpStatus_}++-- | The response's http status code.+tagResourceResponse_httpStatus :: Lens.Lens' TagResourceResponse Prelude.Int+tagResourceResponse_httpStatus = Lens.lens (\TagResourceResponse' {httpStatus} -> httpStatus) (\s@TagResourceResponse' {} a -> s {httpStatus = a} :: TagResourceResponse)++instance Prelude.NFData TagResourceResponse where+ rnf TagResourceResponse' {..} = Prelude.rnf httpStatus
+ gen/Amazonka/SSMSAP/Types.hs view
@@ -0,0 +1,273 @@+{-# 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.SSMSAP.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.SSMSAP.Types+ ( -- * Service Configuration+ defaultService,++ -- * Errors+ _ConflictException,+ _InternalServerException,+ _ResourceNotFoundException,+ _ValidationException,++ -- * ApplicationStatus+ ApplicationStatus (..),++ -- * ApplicationType+ ApplicationType (..),++ -- * ComponentStatus+ ComponentStatus (..),++ -- * ComponentType+ ComponentType (..),++ -- * CredentialType+ CredentialType (..),++ -- * DatabaseStatus+ DatabaseStatus (..),++ -- * DatabaseType+ DatabaseType (..),++ -- * HostRole+ HostRole (..),++ -- * OperationStatus+ OperationStatus (..),++ -- * PermissionActionType+ PermissionActionType (..),++ -- * Application+ Application (..),+ newApplication,+ application_appRegistryArn,+ application_arn,+ application_components,+ application_id,+ application_lastUpdated,+ application_status,+ application_statusMessage,+ application_type,++ -- * ApplicationCredential+ ApplicationCredential (..),+ newApplicationCredential,+ applicationCredential_databaseName,+ applicationCredential_credentialType,+ applicationCredential_secretId,++ -- * ApplicationSummary+ ApplicationSummary (..),+ newApplicationSummary,+ applicationSummary_arn,+ applicationSummary_id,+ applicationSummary_tags,+ applicationSummary_type,++ -- * Component+ Component (..),+ newComponent,+ component_applicationId,+ component_componentId,+ component_componentType,+ component_databases,+ component_hosts,+ component_lastUpdated,+ component_primaryHost,+ component_status,++ -- * ComponentSummary+ ComponentSummary (..),+ newComponentSummary,+ componentSummary_applicationId,+ componentSummary_componentId,+ componentSummary_componentType,+ componentSummary_tags,++ -- * Database+ Database (..),+ newDatabase,+ database_applicationId,+ database_arn,+ database_componentId,+ database_credentials,+ database_databaseId,+ database_databaseName,+ database_databaseType,+ database_lastUpdated,+ database_primaryHost,+ database_sQLPort,+ database_status,++ -- * DatabaseSummary+ DatabaseSummary (..),+ newDatabaseSummary,+ databaseSummary_applicationId,+ databaseSummary_arn,+ databaseSummary_componentId,+ databaseSummary_databaseId,+ databaseSummary_databaseType,+ databaseSummary_tags,++ -- * Host+ Host (..),+ newHost,+ host_hostIp,+ host_hostName,+ host_hostRole,+ host_instanceId,++ -- * Operation+ Operation (..),+ newOperation,+ operation_endTime,+ operation_id,+ operation_lastUpdatedTime,+ operation_properties,+ operation_resourceArn,+ operation_resourceId,+ operation_resourceType,+ operation_startTime,+ operation_status,+ operation_statusMessage,+ operation_type,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Prelude as Prelude+import Amazonka.SSMSAP.Types.Application+import Amazonka.SSMSAP.Types.ApplicationCredential+import Amazonka.SSMSAP.Types.ApplicationStatus+import Amazonka.SSMSAP.Types.ApplicationSummary+import Amazonka.SSMSAP.Types.ApplicationType+import Amazonka.SSMSAP.Types.Component+import Amazonka.SSMSAP.Types.ComponentStatus+import Amazonka.SSMSAP.Types.ComponentSummary+import Amazonka.SSMSAP.Types.ComponentType+import Amazonka.SSMSAP.Types.CredentialType+import Amazonka.SSMSAP.Types.Database+import Amazonka.SSMSAP.Types.DatabaseStatus+import Amazonka.SSMSAP.Types.DatabaseSummary+import Amazonka.SSMSAP.Types.DatabaseType+import Amazonka.SSMSAP.Types.Host+import Amazonka.SSMSAP.Types.HostRole+import Amazonka.SSMSAP.Types.Operation+import Amazonka.SSMSAP.Types.OperationStatus+import Amazonka.SSMSAP.Types.PermissionActionType+import qualified Amazonka.Sign.V4 as Sign++-- | API version @2018-05-10@ of the Amazon Systems Manager for SAP SDK configuration.+defaultService :: Core.Service+defaultService =+ Core.Service+ { Core.abbrev = "SSMSAP",+ Core.signer = Sign.v4,+ Core.endpointPrefix = "ssm-sap",+ Core.signingName = "ssm-sap",+ Core.version = "2018-05-10",+ Core.s3AddressingStyle = Core.S3AddressingStyleAuto,+ Core.endpoint = Core.defaultEndpoint defaultService,+ Core.timeout = Prelude.Just 70,+ Core.check = Core.statusSuccess,+ Core.error = Core.parseJSONError "SSMSAP",+ 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++_ConflictException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ConflictException =+ Core._MatchServiceError+ defaultService+ "ConflictException"+ Prelude.. Core.hasStatus 409++_InternalServerException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InternalServerException =+ Core._MatchServiceError+ defaultService+ "InternalServerException"+ Prelude.. Core.hasStatus 500++_ResourceNotFoundException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ResourceNotFoundException =+ Core._MatchServiceError+ defaultService+ "ResourceNotFoundException"+ Prelude.. Core.hasStatus 404++_ValidationException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ValidationException =+ Core._MatchServiceError+ defaultService+ "ValidationException"+ Prelude.. Core.hasStatus 400
+ gen/Amazonka/SSMSAP/Types/Application.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.SSMSAP.Types.Application+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.SSMSAP.Types.Application 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.SSMSAP.Types.ApplicationStatus+import Amazonka.SSMSAP.Types.ApplicationType++-- |+--+-- /See:/ 'newApplication' smart constructor.+data Application = Application'+ { appRegistryArn :: Prelude.Maybe Prelude.Text,+ arn :: Prelude.Maybe Prelude.Text,+ components :: Prelude.Maybe [Prelude.Text],+ id :: Prelude.Maybe Prelude.Text,+ lastUpdated :: Prelude.Maybe Data.POSIX,+ status :: Prelude.Maybe ApplicationStatus,+ statusMessage :: Prelude.Maybe Prelude.Text,+ type' :: Prelude.Maybe ApplicationType+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Application' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'appRegistryArn', 'application_appRegistryArn' -+--+-- 'arn', 'application_arn' -+--+-- 'components', 'application_components' -+--+-- 'id', 'application_id' -+--+-- 'lastUpdated', 'application_lastUpdated' -+--+-- 'status', 'application_status' -+--+-- 'statusMessage', 'application_statusMessage' -+--+-- 'type'', 'application_type' -+newApplication ::+ Application+newApplication =+ Application'+ { appRegistryArn = Prelude.Nothing,+ arn = Prelude.Nothing,+ components = Prelude.Nothing,+ id = Prelude.Nothing,+ lastUpdated = Prelude.Nothing,+ status = Prelude.Nothing,+ statusMessage = Prelude.Nothing,+ type' = Prelude.Nothing+ }++application_appRegistryArn :: Lens.Lens' Application (Prelude.Maybe Prelude.Text)+application_appRegistryArn = Lens.lens (\Application' {appRegistryArn} -> appRegistryArn) (\s@Application' {} a -> s {appRegistryArn = a} :: Application)++application_arn :: Lens.Lens' Application (Prelude.Maybe Prelude.Text)+application_arn = Lens.lens (\Application' {arn} -> arn) (\s@Application' {} a -> s {arn = a} :: Application)++application_components :: Lens.Lens' Application (Prelude.Maybe [Prelude.Text])+application_components = Lens.lens (\Application' {components} -> components) (\s@Application' {} a -> s {components = a} :: Application) Prelude.. Lens.mapping Lens.coerced++application_id :: Lens.Lens' Application (Prelude.Maybe Prelude.Text)+application_id = Lens.lens (\Application' {id} -> id) (\s@Application' {} a -> s {id = a} :: Application)++application_lastUpdated :: Lens.Lens' Application (Prelude.Maybe Prelude.UTCTime)+application_lastUpdated = Lens.lens (\Application' {lastUpdated} -> lastUpdated) (\s@Application' {} a -> s {lastUpdated = a} :: Application) Prelude.. Lens.mapping Data._Time++application_status :: Lens.Lens' Application (Prelude.Maybe ApplicationStatus)+application_status = Lens.lens (\Application' {status} -> status) (\s@Application' {} a -> s {status = a} :: Application)++application_statusMessage :: Lens.Lens' Application (Prelude.Maybe Prelude.Text)+application_statusMessage = Lens.lens (\Application' {statusMessage} -> statusMessage) (\s@Application' {} a -> s {statusMessage = a} :: Application)++application_type :: Lens.Lens' Application (Prelude.Maybe ApplicationType)+application_type = Lens.lens (\Application' {type'} -> type') (\s@Application' {} a -> s {type' = a} :: Application)++instance Data.FromJSON Application where+ parseJSON =+ Data.withObject+ "Application"+ ( \x ->+ Application'+ Prelude.<$> (x Data..:? "AppRegistryArn")+ Prelude.<*> (x Data..:? "Arn")+ Prelude.<*> (x Data..:? "Components" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "Id")+ Prelude.<*> (x Data..:? "LastUpdated")+ Prelude.<*> (x Data..:? "Status")+ Prelude.<*> (x Data..:? "StatusMessage")+ Prelude.<*> (x Data..:? "Type")+ )++instance Prelude.Hashable Application where+ hashWithSalt _salt Application' {..} =+ _salt+ `Prelude.hashWithSalt` appRegistryArn+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` components+ `Prelude.hashWithSalt` id+ `Prelude.hashWithSalt` lastUpdated+ `Prelude.hashWithSalt` status+ `Prelude.hashWithSalt` statusMessage+ `Prelude.hashWithSalt` type'++instance Prelude.NFData Application where+ rnf Application' {..} =+ Prelude.rnf appRegistryArn+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf components+ `Prelude.seq` Prelude.rnf id+ `Prelude.seq` Prelude.rnf lastUpdated+ `Prelude.seq` Prelude.rnf status+ `Prelude.seq` Prelude.rnf statusMessage+ `Prelude.seq` Prelude.rnf type'
+ gen/Amazonka/SSMSAP/Types/ApplicationCredential.hs view
@@ -0,0 +1,112 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.SSMSAP.Types.ApplicationCredential+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.SSMSAP.Types.ApplicationCredential 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.SSMSAP.Types.CredentialType++-- |+--+-- /See:/ 'newApplicationCredential' smart constructor.+data ApplicationCredential = ApplicationCredential'+ { databaseName :: Prelude.Text,+ credentialType :: CredentialType,+ secretId :: Data.Sensitive Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ApplicationCredential' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'databaseName', 'applicationCredential_databaseName' -+--+-- 'credentialType', 'applicationCredential_credentialType' -+--+-- 'secretId', 'applicationCredential_secretId' -+newApplicationCredential ::+ -- | 'databaseName'+ Prelude.Text ->+ -- | 'credentialType'+ CredentialType ->+ -- | 'secretId'+ Prelude.Text ->+ ApplicationCredential+newApplicationCredential+ pDatabaseName_+ pCredentialType_+ pSecretId_ =+ ApplicationCredential'+ { databaseName =+ pDatabaseName_,+ credentialType = pCredentialType_,+ secretId = Data._Sensitive Lens.# pSecretId_+ }++applicationCredential_databaseName :: Lens.Lens' ApplicationCredential Prelude.Text+applicationCredential_databaseName = Lens.lens (\ApplicationCredential' {databaseName} -> databaseName) (\s@ApplicationCredential' {} a -> s {databaseName = a} :: ApplicationCredential)++applicationCredential_credentialType :: Lens.Lens' ApplicationCredential CredentialType+applicationCredential_credentialType = Lens.lens (\ApplicationCredential' {credentialType} -> credentialType) (\s@ApplicationCredential' {} a -> s {credentialType = a} :: ApplicationCredential)++applicationCredential_secretId :: Lens.Lens' ApplicationCredential Prelude.Text+applicationCredential_secretId = Lens.lens (\ApplicationCredential' {secretId} -> secretId) (\s@ApplicationCredential' {} a -> s {secretId = a} :: ApplicationCredential) Prelude.. Data._Sensitive++instance Data.FromJSON ApplicationCredential where+ parseJSON =+ Data.withObject+ "ApplicationCredential"+ ( \x ->+ ApplicationCredential'+ Prelude.<$> (x Data..: "DatabaseName")+ Prelude.<*> (x Data..: "CredentialType")+ Prelude.<*> (x Data..: "SecretId")+ )++instance Prelude.Hashable ApplicationCredential where+ hashWithSalt _salt ApplicationCredential' {..} =+ _salt+ `Prelude.hashWithSalt` databaseName+ `Prelude.hashWithSalt` credentialType+ `Prelude.hashWithSalt` secretId++instance Prelude.NFData ApplicationCredential where+ rnf ApplicationCredential' {..} =+ Prelude.rnf databaseName+ `Prelude.seq` Prelude.rnf credentialType+ `Prelude.seq` Prelude.rnf secretId++instance Data.ToJSON ApplicationCredential where+ toJSON ApplicationCredential' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just ("DatabaseName" Data..= databaseName),+ Prelude.Just+ ("CredentialType" Data..= credentialType),+ Prelude.Just ("SecretId" Data..= secretId)+ ]+ )
+ gen/Amazonka/SSMSAP/Types/ApplicationStatus.hs view
@@ -0,0 +1,101 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.SSMSAP.Types.ApplicationStatus+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.SSMSAP.Types.ApplicationStatus+ ( ApplicationStatus+ ( ..,+ ApplicationStatus_ACTIVATED,+ ApplicationStatus_DELETING,+ ApplicationStatus_FAILED,+ ApplicationStatus_REGISTERING,+ ApplicationStatus_STARTING,+ ApplicationStatus_STOPPED,+ ApplicationStatus_STOPPING,+ ApplicationStatus_UNKNOWN+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ApplicationStatus = ApplicationStatus'+ { fromApplicationStatus ::+ 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 ApplicationStatus_ACTIVATED :: ApplicationStatus+pattern ApplicationStatus_ACTIVATED = ApplicationStatus' "ACTIVATED"++pattern ApplicationStatus_DELETING :: ApplicationStatus+pattern ApplicationStatus_DELETING = ApplicationStatus' "DELETING"++pattern ApplicationStatus_FAILED :: ApplicationStatus+pattern ApplicationStatus_FAILED = ApplicationStatus' "FAILED"++pattern ApplicationStatus_REGISTERING :: ApplicationStatus+pattern ApplicationStatus_REGISTERING = ApplicationStatus' "REGISTERING"++pattern ApplicationStatus_STARTING :: ApplicationStatus+pattern ApplicationStatus_STARTING = ApplicationStatus' "STARTING"++pattern ApplicationStatus_STOPPED :: ApplicationStatus+pattern ApplicationStatus_STOPPED = ApplicationStatus' "STOPPED"++pattern ApplicationStatus_STOPPING :: ApplicationStatus+pattern ApplicationStatus_STOPPING = ApplicationStatus' "STOPPING"++pattern ApplicationStatus_UNKNOWN :: ApplicationStatus+pattern ApplicationStatus_UNKNOWN = ApplicationStatus' "UNKNOWN"++{-# COMPLETE+ ApplicationStatus_ACTIVATED,+ ApplicationStatus_DELETING,+ ApplicationStatus_FAILED,+ ApplicationStatus_REGISTERING,+ ApplicationStatus_STARTING,+ ApplicationStatus_STOPPED,+ ApplicationStatus_STOPPING,+ ApplicationStatus_UNKNOWN,+ ApplicationStatus'+ #-}
+ gen/Amazonka/SSMSAP/Types/ApplicationSummary.hs view
@@ -0,0 +1,101 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.SSMSAP.Types.ApplicationSummary+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.SSMSAP.Types.ApplicationSummary 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.SSMSAP.Types.ApplicationType++-- |+--+-- /See:/ 'newApplicationSummary' smart constructor.+data ApplicationSummary = ApplicationSummary'+ { arn :: Prelude.Maybe Prelude.Text,+ id :: Prelude.Maybe Prelude.Text,+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ type' :: Prelude.Maybe ApplicationType+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ApplicationSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'arn', 'applicationSummary_arn' -+--+-- 'id', 'applicationSummary_id' -+--+-- 'tags', 'applicationSummary_tags' -+--+-- 'type'', 'applicationSummary_type' -+newApplicationSummary ::+ ApplicationSummary+newApplicationSummary =+ ApplicationSummary'+ { arn = Prelude.Nothing,+ id = Prelude.Nothing,+ tags = Prelude.Nothing,+ type' = Prelude.Nothing+ }++applicationSummary_arn :: Lens.Lens' ApplicationSummary (Prelude.Maybe Prelude.Text)+applicationSummary_arn = Lens.lens (\ApplicationSummary' {arn} -> arn) (\s@ApplicationSummary' {} a -> s {arn = a} :: ApplicationSummary)++applicationSummary_id :: Lens.Lens' ApplicationSummary (Prelude.Maybe Prelude.Text)+applicationSummary_id = Lens.lens (\ApplicationSummary' {id} -> id) (\s@ApplicationSummary' {} a -> s {id = a} :: ApplicationSummary)++applicationSummary_tags :: Lens.Lens' ApplicationSummary (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+applicationSummary_tags = Lens.lens (\ApplicationSummary' {tags} -> tags) (\s@ApplicationSummary' {} a -> s {tags = a} :: ApplicationSummary) Prelude.. Lens.mapping Lens.coerced++applicationSummary_type :: Lens.Lens' ApplicationSummary (Prelude.Maybe ApplicationType)+applicationSummary_type = Lens.lens (\ApplicationSummary' {type'} -> type') (\s@ApplicationSummary' {} a -> s {type' = a} :: ApplicationSummary)++instance Data.FromJSON ApplicationSummary where+ parseJSON =+ Data.withObject+ "ApplicationSummary"+ ( \x ->+ ApplicationSummary'+ Prelude.<$> (x Data..:? "Arn")+ Prelude.<*> (x Data..:? "Id")+ Prelude.<*> (x Data..:? "Tags" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "Type")+ )++instance Prelude.Hashable ApplicationSummary where+ hashWithSalt _salt ApplicationSummary' {..} =+ _salt+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` id+ `Prelude.hashWithSalt` tags+ `Prelude.hashWithSalt` type'++instance Prelude.NFData ApplicationSummary where+ rnf ApplicationSummary' {..} =+ Prelude.rnf arn+ `Prelude.seq` Prelude.rnf id+ `Prelude.seq` Prelude.rnf tags+ `Prelude.seq` Prelude.rnf type'
+ gen/Amazonka/SSMSAP/Types/ApplicationType.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.SSMSAP.Types.ApplicationType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.SSMSAP.Types.ApplicationType+ ( ApplicationType+ ( ..,+ ApplicationType_HANA+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ApplicationType = ApplicationType'+ { fromApplicationType ::+ 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 ApplicationType_HANA :: ApplicationType+pattern ApplicationType_HANA = ApplicationType' "HANA"++{-# COMPLETE+ ApplicationType_HANA,+ ApplicationType'+ #-}
+ gen/Amazonka/SSMSAP/Types/Component.hs view
@@ -0,0 +1,143 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.SSMSAP.Types.Component+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.SSMSAP.Types.Component 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.SSMSAP.Types.ComponentStatus+import Amazonka.SSMSAP.Types.ComponentType+import Amazonka.SSMSAP.Types.Host++-- |+--+-- /See:/ 'newComponent' smart constructor.+data Component = Component'+ { applicationId :: Prelude.Maybe Prelude.Text,+ componentId :: Prelude.Maybe Prelude.Text,+ componentType :: Prelude.Maybe ComponentType,+ databases :: Prelude.Maybe [Prelude.Text],+ hosts :: Prelude.Maybe [Host],+ lastUpdated :: Prelude.Maybe Data.POSIX,+ primaryHost :: Prelude.Maybe Prelude.Text,+ status :: Prelude.Maybe ComponentStatus+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Component' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationId', 'component_applicationId' -+--+-- 'componentId', 'component_componentId' -+--+-- 'componentType', 'component_componentType' -+--+-- 'databases', 'component_databases' -+--+-- 'hosts', 'component_hosts' -+--+-- 'lastUpdated', 'component_lastUpdated' -+--+-- 'primaryHost', 'component_primaryHost' -+--+-- 'status', 'component_status' -+newComponent ::+ Component+newComponent =+ Component'+ { applicationId = Prelude.Nothing,+ componentId = Prelude.Nothing,+ componentType = Prelude.Nothing,+ databases = Prelude.Nothing,+ hosts = Prelude.Nothing,+ lastUpdated = Prelude.Nothing,+ primaryHost = Prelude.Nothing,+ status = Prelude.Nothing+ }++component_applicationId :: Lens.Lens' Component (Prelude.Maybe Prelude.Text)+component_applicationId = Lens.lens (\Component' {applicationId} -> applicationId) (\s@Component' {} a -> s {applicationId = a} :: Component)++component_componentId :: Lens.Lens' Component (Prelude.Maybe Prelude.Text)+component_componentId = Lens.lens (\Component' {componentId} -> componentId) (\s@Component' {} a -> s {componentId = a} :: Component)++component_componentType :: Lens.Lens' Component (Prelude.Maybe ComponentType)+component_componentType = Lens.lens (\Component' {componentType} -> componentType) (\s@Component' {} a -> s {componentType = a} :: Component)++component_databases :: Lens.Lens' Component (Prelude.Maybe [Prelude.Text])+component_databases = Lens.lens (\Component' {databases} -> databases) (\s@Component' {} a -> s {databases = a} :: Component) Prelude.. Lens.mapping Lens.coerced++component_hosts :: Lens.Lens' Component (Prelude.Maybe [Host])+component_hosts = Lens.lens (\Component' {hosts} -> hosts) (\s@Component' {} a -> s {hosts = a} :: Component) Prelude.. Lens.mapping Lens.coerced++component_lastUpdated :: Lens.Lens' Component (Prelude.Maybe Prelude.UTCTime)+component_lastUpdated = Lens.lens (\Component' {lastUpdated} -> lastUpdated) (\s@Component' {} a -> s {lastUpdated = a} :: Component) Prelude.. Lens.mapping Data._Time++component_primaryHost :: Lens.Lens' Component (Prelude.Maybe Prelude.Text)+component_primaryHost = Lens.lens (\Component' {primaryHost} -> primaryHost) (\s@Component' {} a -> s {primaryHost = a} :: Component)++component_status :: Lens.Lens' Component (Prelude.Maybe ComponentStatus)+component_status = Lens.lens (\Component' {status} -> status) (\s@Component' {} a -> s {status = a} :: Component)++instance Data.FromJSON Component where+ parseJSON =+ Data.withObject+ "Component"+ ( \x ->+ Component'+ Prelude.<$> (x Data..:? "ApplicationId")+ Prelude.<*> (x Data..:? "ComponentId")+ Prelude.<*> (x Data..:? "ComponentType")+ Prelude.<*> (x Data..:? "Databases" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "Hosts" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "LastUpdated")+ Prelude.<*> (x Data..:? "PrimaryHost")+ Prelude.<*> (x Data..:? "Status")+ )++instance Prelude.Hashable Component where+ hashWithSalt _salt Component' {..} =+ _salt+ `Prelude.hashWithSalt` applicationId+ `Prelude.hashWithSalt` componentId+ `Prelude.hashWithSalt` componentType+ `Prelude.hashWithSalt` databases+ `Prelude.hashWithSalt` hosts+ `Prelude.hashWithSalt` lastUpdated+ `Prelude.hashWithSalt` primaryHost+ `Prelude.hashWithSalt` status++instance Prelude.NFData Component where+ rnf Component' {..} =+ Prelude.rnf applicationId+ `Prelude.seq` Prelude.rnf componentId+ `Prelude.seq` Prelude.rnf componentType+ `Prelude.seq` Prelude.rnf databases+ `Prelude.seq` Prelude.rnf hosts+ `Prelude.seq` Prelude.rnf lastUpdated+ `Prelude.seq` Prelude.rnf primaryHost+ `Prelude.seq` Prelude.rnf status
+ gen/Amazonka/SSMSAP/Types/ComponentStatus.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.SSMSAP.Types.ComponentStatus+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.SSMSAP.Types.ComponentStatus+ ( ComponentStatus+ ( ..,+ ComponentStatus_ACTIVATED+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ComponentStatus = ComponentStatus'+ { fromComponentStatus ::+ 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 ComponentStatus_ACTIVATED :: ComponentStatus+pattern ComponentStatus_ACTIVATED = ComponentStatus' "ACTIVATED"++{-# COMPLETE+ ComponentStatus_ACTIVATED,+ ComponentStatus'+ #-}
+ gen/Amazonka/SSMSAP/Types/ComponentSummary.hs view
@@ -0,0 +1,101 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.SSMSAP.Types.ComponentSummary+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.SSMSAP.Types.ComponentSummary 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.SSMSAP.Types.ComponentType++-- |+--+-- /See:/ 'newComponentSummary' smart constructor.+data ComponentSummary = ComponentSummary'+ { applicationId :: Prelude.Maybe Prelude.Text,+ componentId :: Prelude.Maybe Prelude.Text,+ componentType :: Prelude.Maybe ComponentType,+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text)+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ComponentSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationId', 'componentSummary_applicationId' -+--+-- 'componentId', 'componentSummary_componentId' -+--+-- 'componentType', 'componentSummary_componentType' -+--+-- 'tags', 'componentSummary_tags' -+newComponentSummary ::+ ComponentSummary+newComponentSummary =+ ComponentSummary'+ { applicationId = Prelude.Nothing,+ componentId = Prelude.Nothing,+ componentType = Prelude.Nothing,+ tags = Prelude.Nothing+ }++componentSummary_applicationId :: Lens.Lens' ComponentSummary (Prelude.Maybe Prelude.Text)+componentSummary_applicationId = Lens.lens (\ComponentSummary' {applicationId} -> applicationId) (\s@ComponentSummary' {} a -> s {applicationId = a} :: ComponentSummary)++componentSummary_componentId :: Lens.Lens' ComponentSummary (Prelude.Maybe Prelude.Text)+componentSummary_componentId = Lens.lens (\ComponentSummary' {componentId} -> componentId) (\s@ComponentSummary' {} a -> s {componentId = a} :: ComponentSummary)++componentSummary_componentType :: Lens.Lens' ComponentSummary (Prelude.Maybe ComponentType)+componentSummary_componentType = Lens.lens (\ComponentSummary' {componentType} -> componentType) (\s@ComponentSummary' {} a -> s {componentType = a} :: ComponentSummary)++componentSummary_tags :: Lens.Lens' ComponentSummary (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+componentSummary_tags = Lens.lens (\ComponentSummary' {tags} -> tags) (\s@ComponentSummary' {} a -> s {tags = a} :: ComponentSummary) Prelude.. Lens.mapping Lens.coerced++instance Data.FromJSON ComponentSummary where+ parseJSON =+ Data.withObject+ "ComponentSummary"+ ( \x ->+ ComponentSummary'+ Prelude.<$> (x Data..:? "ApplicationId")+ Prelude.<*> (x Data..:? "ComponentId")+ Prelude.<*> (x Data..:? "ComponentType")+ Prelude.<*> (x Data..:? "Tags" Data..!= Prelude.mempty)+ )++instance Prelude.Hashable ComponentSummary where+ hashWithSalt _salt ComponentSummary' {..} =+ _salt+ `Prelude.hashWithSalt` applicationId+ `Prelude.hashWithSalt` componentId+ `Prelude.hashWithSalt` componentType+ `Prelude.hashWithSalt` tags++instance Prelude.NFData ComponentSummary where+ rnf ComponentSummary' {..} =+ Prelude.rnf applicationId+ `Prelude.seq` Prelude.rnf componentId+ `Prelude.seq` Prelude.rnf componentType+ `Prelude.seq` Prelude.rnf tags
+ gen/Amazonka/SSMSAP/Types/ComponentType.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.SSMSAP.Types.ComponentType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.SSMSAP.Types.ComponentType+ ( ComponentType+ ( ..,+ ComponentType_HANA+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype ComponentType = ComponentType'+ { fromComponentType ::+ 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 ComponentType_HANA :: ComponentType+pattern ComponentType_HANA = ComponentType' "HANA"++{-# COMPLETE+ ComponentType_HANA,+ ComponentType'+ #-}
+ gen/Amazonka/SSMSAP/Types/CredentialType.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.SSMSAP.Types.CredentialType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.SSMSAP.Types.CredentialType+ ( CredentialType+ ( ..,+ CredentialType_ADMIN+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype CredentialType = CredentialType'+ { fromCredentialType ::+ 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 CredentialType_ADMIN :: CredentialType+pattern CredentialType_ADMIN = CredentialType' "ADMIN"++{-# COMPLETE+ CredentialType_ADMIN,+ CredentialType'+ #-}
+ gen/Amazonka/SSMSAP/Types/Database.hs view
@@ -0,0 +1,173 @@+{-# 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.SSMSAP.Types.Database+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.SSMSAP.Types.Database 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.SSMSAP.Types.ApplicationCredential+import Amazonka.SSMSAP.Types.DatabaseStatus+import Amazonka.SSMSAP.Types.DatabaseType++-- |+--+-- /See:/ 'newDatabase' smart constructor.+data Database = Database'+ { applicationId :: Prelude.Maybe Prelude.Text,+ arn :: Prelude.Maybe Prelude.Text,+ componentId :: Prelude.Maybe Prelude.Text,+ credentials :: Prelude.Maybe (Prelude.NonEmpty ApplicationCredential),+ databaseId :: Prelude.Maybe Prelude.Text,+ databaseName :: Prelude.Maybe Prelude.Text,+ databaseType :: Prelude.Maybe DatabaseType,+ lastUpdated :: Prelude.Maybe Data.POSIX,+ primaryHost :: Prelude.Maybe Prelude.Text,+ sQLPort :: Prelude.Maybe Prelude.Int,+ status :: Prelude.Maybe DatabaseStatus+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Database' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationId', 'database_applicationId' -+--+-- 'arn', 'database_arn' -+--+-- 'componentId', 'database_componentId' -+--+-- 'credentials', 'database_credentials' -+--+-- 'databaseId', 'database_databaseId' -+--+-- 'databaseName', 'database_databaseName' -+--+-- 'databaseType', 'database_databaseType' -+--+-- 'lastUpdated', 'database_lastUpdated' -+--+-- 'primaryHost', 'database_primaryHost' -+--+-- 'sQLPort', 'database_sQLPort' -+--+-- 'status', 'database_status' -+newDatabase ::+ Database+newDatabase =+ Database'+ { applicationId = Prelude.Nothing,+ arn = Prelude.Nothing,+ componentId = Prelude.Nothing,+ credentials = Prelude.Nothing,+ databaseId = Prelude.Nothing,+ databaseName = Prelude.Nothing,+ databaseType = Prelude.Nothing,+ lastUpdated = Prelude.Nothing,+ primaryHost = Prelude.Nothing,+ sQLPort = Prelude.Nothing,+ status = Prelude.Nothing+ }++database_applicationId :: Lens.Lens' Database (Prelude.Maybe Prelude.Text)+database_applicationId = Lens.lens (\Database' {applicationId} -> applicationId) (\s@Database' {} a -> s {applicationId = a} :: Database)++database_arn :: Lens.Lens' Database (Prelude.Maybe Prelude.Text)+database_arn = Lens.lens (\Database' {arn} -> arn) (\s@Database' {} a -> s {arn = a} :: Database)++database_componentId :: Lens.Lens' Database (Prelude.Maybe Prelude.Text)+database_componentId = Lens.lens (\Database' {componentId} -> componentId) (\s@Database' {} a -> s {componentId = a} :: Database)++database_credentials :: Lens.Lens' Database (Prelude.Maybe (Prelude.NonEmpty ApplicationCredential))+database_credentials = Lens.lens (\Database' {credentials} -> credentials) (\s@Database' {} a -> s {credentials = a} :: Database) Prelude.. Lens.mapping Lens.coerced++database_databaseId :: Lens.Lens' Database (Prelude.Maybe Prelude.Text)+database_databaseId = Lens.lens (\Database' {databaseId} -> databaseId) (\s@Database' {} a -> s {databaseId = a} :: Database)++database_databaseName :: Lens.Lens' Database (Prelude.Maybe Prelude.Text)+database_databaseName = Lens.lens (\Database' {databaseName} -> databaseName) (\s@Database' {} a -> s {databaseName = a} :: Database)++database_databaseType :: Lens.Lens' Database (Prelude.Maybe DatabaseType)+database_databaseType = Lens.lens (\Database' {databaseType} -> databaseType) (\s@Database' {} a -> s {databaseType = a} :: Database)++database_lastUpdated :: Lens.Lens' Database (Prelude.Maybe Prelude.UTCTime)+database_lastUpdated = Lens.lens (\Database' {lastUpdated} -> lastUpdated) (\s@Database' {} a -> s {lastUpdated = a} :: Database) Prelude.. Lens.mapping Data._Time++database_primaryHost :: Lens.Lens' Database (Prelude.Maybe Prelude.Text)+database_primaryHost = Lens.lens (\Database' {primaryHost} -> primaryHost) (\s@Database' {} a -> s {primaryHost = a} :: Database)++database_sQLPort :: Lens.Lens' Database (Prelude.Maybe Prelude.Int)+database_sQLPort = Lens.lens (\Database' {sQLPort} -> sQLPort) (\s@Database' {} a -> s {sQLPort = a} :: Database)++database_status :: Lens.Lens' Database (Prelude.Maybe DatabaseStatus)+database_status = Lens.lens (\Database' {status} -> status) (\s@Database' {} a -> s {status = a} :: Database)++instance Data.FromJSON Database where+ parseJSON =+ Data.withObject+ "Database"+ ( \x ->+ Database'+ Prelude.<$> (x Data..:? "ApplicationId")+ Prelude.<*> (x Data..:? "Arn")+ Prelude.<*> (x Data..:? "ComponentId")+ Prelude.<*> (x Data..:? "Credentials")+ Prelude.<*> (x Data..:? "DatabaseId")+ Prelude.<*> (x Data..:? "DatabaseName")+ Prelude.<*> (x Data..:? "DatabaseType")+ Prelude.<*> (x Data..:? "LastUpdated")+ Prelude.<*> (x Data..:? "PrimaryHost")+ Prelude.<*> (x Data..:? "SQLPort")+ Prelude.<*> (x Data..:? "Status")+ )++instance Prelude.Hashable Database where+ hashWithSalt _salt Database' {..} =+ _salt+ `Prelude.hashWithSalt` applicationId+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` componentId+ `Prelude.hashWithSalt` credentials+ `Prelude.hashWithSalt` databaseId+ `Prelude.hashWithSalt` databaseName+ `Prelude.hashWithSalt` databaseType+ `Prelude.hashWithSalt` lastUpdated+ `Prelude.hashWithSalt` primaryHost+ `Prelude.hashWithSalt` sQLPort+ `Prelude.hashWithSalt` status++instance Prelude.NFData Database where+ rnf Database' {..} =+ Prelude.rnf applicationId+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf componentId+ `Prelude.seq` Prelude.rnf credentials+ `Prelude.seq` Prelude.rnf databaseId+ `Prelude.seq` Prelude.rnf databaseName+ `Prelude.seq` Prelude.rnf databaseType+ `Prelude.seq` Prelude.rnf lastUpdated+ `Prelude.seq` Prelude.rnf primaryHost+ `Prelude.seq` Prelude.rnf sQLPort+ `Prelude.seq` Prelude.rnf status
+ gen/Amazonka/SSMSAP/Types/DatabaseStatus.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.SSMSAP.Types.DatabaseStatus+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.SSMSAP.Types.DatabaseStatus+ ( DatabaseStatus+ ( ..,+ DatabaseStatus_RUNNING,+ DatabaseStatus_STARTING,+ DatabaseStatus_STOPPED,+ DatabaseStatus_UNKNOWN,+ DatabaseStatus_WARNING+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype DatabaseStatus = DatabaseStatus'+ { fromDatabaseStatus ::+ 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 DatabaseStatus_RUNNING :: DatabaseStatus+pattern DatabaseStatus_RUNNING = DatabaseStatus' "RUNNING"++pattern DatabaseStatus_STARTING :: DatabaseStatus+pattern DatabaseStatus_STARTING = DatabaseStatus' "STARTING"++pattern DatabaseStatus_STOPPED :: DatabaseStatus+pattern DatabaseStatus_STOPPED = DatabaseStatus' "STOPPED"++pattern DatabaseStatus_UNKNOWN :: DatabaseStatus+pattern DatabaseStatus_UNKNOWN = DatabaseStatus' "UNKNOWN"++pattern DatabaseStatus_WARNING :: DatabaseStatus+pattern DatabaseStatus_WARNING = DatabaseStatus' "WARNING"++{-# COMPLETE+ DatabaseStatus_RUNNING,+ DatabaseStatus_STARTING,+ DatabaseStatus_STOPPED,+ DatabaseStatus_UNKNOWN,+ DatabaseStatus_WARNING,+ DatabaseStatus'+ #-}
+ gen/Amazonka/SSMSAP/Types/DatabaseSummary.hs view
@@ -0,0 +1,121 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.SSMSAP.Types.DatabaseSummary+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.SSMSAP.Types.DatabaseSummary 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.SSMSAP.Types.DatabaseType++-- |+--+-- /See:/ 'newDatabaseSummary' smart constructor.+data DatabaseSummary = DatabaseSummary'+ { applicationId :: Prelude.Maybe Prelude.Text,+ arn :: Prelude.Maybe Prelude.Text,+ componentId :: Prelude.Maybe Prelude.Text,+ databaseId :: Prelude.Maybe Prelude.Text,+ databaseType :: Prelude.Maybe DatabaseType,+ tags :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text)+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DatabaseSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'applicationId', 'databaseSummary_applicationId' -+--+-- 'arn', 'databaseSummary_arn' -+--+-- 'componentId', 'databaseSummary_componentId' -+--+-- 'databaseId', 'databaseSummary_databaseId' -+--+-- 'databaseType', 'databaseSummary_databaseType' -+--+-- 'tags', 'databaseSummary_tags' -+newDatabaseSummary ::+ DatabaseSummary+newDatabaseSummary =+ DatabaseSummary'+ { applicationId = Prelude.Nothing,+ arn = Prelude.Nothing,+ componentId = Prelude.Nothing,+ databaseId = Prelude.Nothing,+ databaseType = Prelude.Nothing,+ tags = Prelude.Nothing+ }++databaseSummary_applicationId :: Lens.Lens' DatabaseSummary (Prelude.Maybe Prelude.Text)+databaseSummary_applicationId = Lens.lens (\DatabaseSummary' {applicationId} -> applicationId) (\s@DatabaseSummary' {} a -> s {applicationId = a} :: DatabaseSummary)++databaseSummary_arn :: Lens.Lens' DatabaseSummary (Prelude.Maybe Prelude.Text)+databaseSummary_arn = Lens.lens (\DatabaseSummary' {arn} -> arn) (\s@DatabaseSummary' {} a -> s {arn = a} :: DatabaseSummary)++databaseSummary_componentId :: Lens.Lens' DatabaseSummary (Prelude.Maybe Prelude.Text)+databaseSummary_componentId = Lens.lens (\DatabaseSummary' {componentId} -> componentId) (\s@DatabaseSummary' {} a -> s {componentId = a} :: DatabaseSummary)++databaseSummary_databaseId :: Lens.Lens' DatabaseSummary (Prelude.Maybe Prelude.Text)+databaseSummary_databaseId = Lens.lens (\DatabaseSummary' {databaseId} -> databaseId) (\s@DatabaseSummary' {} a -> s {databaseId = a} :: DatabaseSummary)++databaseSummary_databaseType :: Lens.Lens' DatabaseSummary (Prelude.Maybe DatabaseType)+databaseSummary_databaseType = Lens.lens (\DatabaseSummary' {databaseType} -> databaseType) (\s@DatabaseSummary' {} a -> s {databaseType = a} :: DatabaseSummary)++databaseSummary_tags :: Lens.Lens' DatabaseSummary (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+databaseSummary_tags = Lens.lens (\DatabaseSummary' {tags} -> tags) (\s@DatabaseSummary' {} a -> s {tags = a} :: DatabaseSummary) Prelude.. Lens.mapping Lens.coerced++instance Data.FromJSON DatabaseSummary where+ parseJSON =+ Data.withObject+ "DatabaseSummary"+ ( \x ->+ DatabaseSummary'+ Prelude.<$> (x Data..:? "ApplicationId")+ Prelude.<*> (x Data..:? "Arn")+ Prelude.<*> (x Data..:? "ComponentId")+ Prelude.<*> (x Data..:? "DatabaseId")+ Prelude.<*> (x Data..:? "DatabaseType")+ Prelude.<*> (x Data..:? "Tags" Data..!= Prelude.mempty)+ )++instance Prelude.Hashable DatabaseSummary where+ hashWithSalt _salt DatabaseSummary' {..} =+ _salt+ `Prelude.hashWithSalt` applicationId+ `Prelude.hashWithSalt` arn+ `Prelude.hashWithSalt` componentId+ `Prelude.hashWithSalt` databaseId+ `Prelude.hashWithSalt` databaseType+ `Prelude.hashWithSalt` tags++instance Prelude.NFData DatabaseSummary where+ rnf DatabaseSummary' {..} =+ Prelude.rnf applicationId+ `Prelude.seq` Prelude.rnf arn+ `Prelude.seq` Prelude.rnf componentId+ `Prelude.seq` Prelude.rnf databaseId+ `Prelude.seq` Prelude.rnf databaseType+ `Prelude.seq` Prelude.rnf tags
+ gen/Amazonka/SSMSAP/Types/DatabaseType.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.SSMSAP.Types.DatabaseType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.SSMSAP.Types.DatabaseType+ ( DatabaseType+ ( ..,+ DatabaseType_SYSTEM,+ DatabaseType_TENANT+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype DatabaseType = DatabaseType'+ { fromDatabaseType ::+ 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 DatabaseType_SYSTEM :: DatabaseType+pattern DatabaseType_SYSTEM = DatabaseType' "SYSTEM"++pattern DatabaseType_TENANT :: DatabaseType+pattern DatabaseType_TENANT = DatabaseType' "TENANT"++{-# COMPLETE+ DatabaseType_SYSTEM,+ DatabaseType_TENANT,+ DatabaseType'+ #-}
+ gen/Amazonka/SSMSAP/Types/Host.hs view
@@ -0,0 +1,101 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.SSMSAP.Types.Host+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.SSMSAP.Types.Host 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.SSMSAP.Types.HostRole++-- |+--+-- /See:/ 'newHost' smart constructor.+data Host = Host'+ { hostIp :: Prelude.Maybe Prelude.Text,+ hostName :: Prelude.Maybe Prelude.Text,+ hostRole :: Prelude.Maybe HostRole,+ instanceId :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Host' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'hostIp', 'host_hostIp' -+--+-- 'hostName', 'host_hostName' -+--+-- 'hostRole', 'host_hostRole' -+--+-- 'instanceId', 'host_instanceId' -+newHost ::+ Host+newHost =+ Host'+ { hostIp = Prelude.Nothing,+ hostName = Prelude.Nothing,+ hostRole = Prelude.Nothing,+ instanceId = Prelude.Nothing+ }++host_hostIp :: Lens.Lens' Host (Prelude.Maybe Prelude.Text)+host_hostIp = Lens.lens (\Host' {hostIp} -> hostIp) (\s@Host' {} a -> s {hostIp = a} :: Host)++host_hostName :: Lens.Lens' Host (Prelude.Maybe Prelude.Text)+host_hostName = Lens.lens (\Host' {hostName} -> hostName) (\s@Host' {} a -> s {hostName = a} :: Host)++host_hostRole :: Lens.Lens' Host (Prelude.Maybe HostRole)+host_hostRole = Lens.lens (\Host' {hostRole} -> hostRole) (\s@Host' {} a -> s {hostRole = a} :: Host)++host_instanceId :: Lens.Lens' Host (Prelude.Maybe Prelude.Text)+host_instanceId = Lens.lens (\Host' {instanceId} -> instanceId) (\s@Host' {} a -> s {instanceId = a} :: Host)++instance Data.FromJSON Host where+ parseJSON =+ Data.withObject+ "Host"+ ( \x ->+ Host'+ Prelude.<$> (x Data..:? "HostIp")+ Prelude.<*> (x Data..:? "HostName")+ Prelude.<*> (x Data..:? "HostRole")+ Prelude.<*> (x Data..:? "InstanceId")+ )++instance Prelude.Hashable Host where+ hashWithSalt _salt Host' {..} =+ _salt+ `Prelude.hashWithSalt` hostIp+ `Prelude.hashWithSalt` hostName+ `Prelude.hashWithSalt` hostRole+ `Prelude.hashWithSalt` instanceId++instance Prelude.NFData Host where+ rnf Host' {..} =+ Prelude.rnf hostIp+ `Prelude.seq` Prelude.rnf hostName+ `Prelude.seq` Prelude.rnf hostRole+ `Prelude.seq` Prelude.rnf instanceId
+ gen/Amazonka/SSMSAP/Types/HostRole.hs view
@@ -0,0 +1,81 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.SSMSAP.Types.HostRole+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.SSMSAP.Types.HostRole+ ( HostRole+ ( ..,+ HostRole_LEADER,+ HostRole_STANDBY,+ HostRole_UNKNOWN,+ HostRole_WORKER+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype HostRole = HostRole'+ { fromHostRole ::+ 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 HostRole_LEADER :: HostRole+pattern HostRole_LEADER = HostRole' "LEADER"++pattern HostRole_STANDBY :: HostRole+pattern HostRole_STANDBY = HostRole' "STANDBY"++pattern HostRole_UNKNOWN :: HostRole+pattern HostRole_UNKNOWN = HostRole' "UNKNOWN"++pattern HostRole_WORKER :: HostRole+pattern HostRole_WORKER = HostRole' "WORKER"++{-# COMPLETE+ HostRole_LEADER,+ HostRole_STANDBY,+ HostRole_UNKNOWN,+ HostRole_WORKER,+ HostRole'+ #-}
+ gen/Amazonka/SSMSAP/Types/Operation.hs view
@@ -0,0 +1,171 @@+{-# 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.SSMSAP.Types.Operation+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.SSMSAP.Types.Operation 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.SSMSAP.Types.OperationStatus++-- |+--+-- /See:/ 'newOperation' smart constructor.+data Operation = Operation'+ { endTime :: Prelude.Maybe Data.POSIX,+ id :: Prelude.Maybe Prelude.Text,+ lastUpdatedTime :: Prelude.Maybe Data.POSIX,+ properties :: Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text),+ resourceArn :: Prelude.Maybe Prelude.Text,+ resourceId :: Prelude.Maybe Prelude.Text,+ resourceType :: Prelude.Maybe Prelude.Text,+ startTime :: Prelude.Maybe Data.POSIX,+ status :: Prelude.Maybe OperationStatus,+ statusMessage :: Prelude.Maybe Prelude.Text,+ type' :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Operation' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'endTime', 'operation_endTime' -+--+-- 'id', 'operation_id' -+--+-- 'lastUpdatedTime', 'operation_lastUpdatedTime' -+--+-- 'properties', 'operation_properties' -+--+-- 'resourceArn', 'operation_resourceArn' -+--+-- 'resourceId', 'operation_resourceId' -+--+-- 'resourceType', 'operation_resourceType' -+--+-- 'startTime', 'operation_startTime' -+--+-- 'status', 'operation_status' -+--+-- 'statusMessage', 'operation_statusMessage' -+--+-- 'type'', 'operation_type' -+newOperation ::+ Operation+newOperation =+ Operation'+ { endTime = Prelude.Nothing,+ id = Prelude.Nothing,+ lastUpdatedTime = Prelude.Nothing,+ properties = Prelude.Nothing,+ resourceArn = Prelude.Nothing,+ resourceId = Prelude.Nothing,+ resourceType = Prelude.Nothing,+ startTime = Prelude.Nothing,+ status = Prelude.Nothing,+ statusMessage = Prelude.Nothing,+ type' = Prelude.Nothing+ }++operation_endTime :: Lens.Lens' Operation (Prelude.Maybe Prelude.UTCTime)+operation_endTime = Lens.lens (\Operation' {endTime} -> endTime) (\s@Operation' {} a -> s {endTime = a} :: Operation) Prelude.. Lens.mapping Data._Time++operation_id :: Lens.Lens' Operation (Prelude.Maybe Prelude.Text)+operation_id = Lens.lens (\Operation' {id} -> id) (\s@Operation' {} a -> s {id = a} :: Operation)++operation_lastUpdatedTime :: Lens.Lens' Operation (Prelude.Maybe Prelude.UTCTime)+operation_lastUpdatedTime = Lens.lens (\Operation' {lastUpdatedTime} -> lastUpdatedTime) (\s@Operation' {} a -> s {lastUpdatedTime = a} :: Operation) Prelude.. Lens.mapping Data._Time++operation_properties :: Lens.Lens' Operation (Prelude.Maybe (Prelude.HashMap Prelude.Text Prelude.Text))+operation_properties = Lens.lens (\Operation' {properties} -> properties) (\s@Operation' {} a -> s {properties = a} :: Operation) Prelude.. Lens.mapping Lens.coerced++operation_resourceArn :: Lens.Lens' Operation (Prelude.Maybe Prelude.Text)+operation_resourceArn = Lens.lens (\Operation' {resourceArn} -> resourceArn) (\s@Operation' {} a -> s {resourceArn = a} :: Operation)++operation_resourceId :: Lens.Lens' Operation (Prelude.Maybe Prelude.Text)+operation_resourceId = Lens.lens (\Operation' {resourceId} -> resourceId) (\s@Operation' {} a -> s {resourceId = a} :: Operation)++operation_resourceType :: Lens.Lens' Operation (Prelude.Maybe Prelude.Text)+operation_resourceType = Lens.lens (\Operation' {resourceType} -> resourceType) (\s@Operation' {} a -> s {resourceType = a} :: Operation)++operation_startTime :: Lens.Lens' Operation (Prelude.Maybe Prelude.UTCTime)+operation_startTime = Lens.lens (\Operation' {startTime} -> startTime) (\s@Operation' {} a -> s {startTime = a} :: Operation) Prelude.. Lens.mapping Data._Time++operation_status :: Lens.Lens' Operation (Prelude.Maybe OperationStatus)+operation_status = Lens.lens (\Operation' {status} -> status) (\s@Operation' {} a -> s {status = a} :: Operation)++operation_statusMessage :: Lens.Lens' Operation (Prelude.Maybe Prelude.Text)+operation_statusMessage = Lens.lens (\Operation' {statusMessage} -> statusMessage) (\s@Operation' {} a -> s {statusMessage = a} :: Operation)++operation_type :: Lens.Lens' Operation (Prelude.Maybe Prelude.Text)+operation_type = Lens.lens (\Operation' {type'} -> type') (\s@Operation' {} a -> s {type' = a} :: Operation)++instance Data.FromJSON Operation where+ parseJSON =+ Data.withObject+ "Operation"+ ( \x ->+ Operation'+ Prelude.<$> (x Data..:? "EndTime")+ Prelude.<*> (x Data..:? "Id")+ Prelude.<*> (x Data..:? "LastUpdatedTime")+ Prelude.<*> (x Data..:? "Properties" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..:? "ResourceArn")+ Prelude.<*> (x Data..:? "ResourceId")+ Prelude.<*> (x Data..:? "ResourceType")+ Prelude.<*> (x Data..:? "StartTime")+ Prelude.<*> (x Data..:? "Status")+ Prelude.<*> (x Data..:? "StatusMessage")+ Prelude.<*> (x Data..:? "Type")+ )++instance Prelude.Hashable Operation where+ hashWithSalt _salt Operation' {..} =+ _salt+ `Prelude.hashWithSalt` endTime+ `Prelude.hashWithSalt` id+ `Prelude.hashWithSalt` lastUpdatedTime+ `Prelude.hashWithSalt` properties+ `Prelude.hashWithSalt` resourceArn+ `Prelude.hashWithSalt` resourceId+ `Prelude.hashWithSalt` resourceType+ `Prelude.hashWithSalt` startTime+ `Prelude.hashWithSalt` status+ `Prelude.hashWithSalt` statusMessage+ `Prelude.hashWithSalt` type'++instance Prelude.NFData Operation where+ rnf Operation' {..} =+ Prelude.rnf endTime+ `Prelude.seq` Prelude.rnf id+ `Prelude.seq` Prelude.rnf lastUpdatedTime+ `Prelude.seq` Prelude.rnf properties+ `Prelude.seq` Prelude.rnf resourceArn+ `Prelude.seq` Prelude.rnf resourceId+ `Prelude.seq` Prelude.rnf resourceType+ `Prelude.seq` Prelude.rnf startTime+ `Prelude.seq` Prelude.rnf status+ `Prelude.seq` Prelude.rnf statusMessage+ `Prelude.seq` Prelude.rnf type'
+ gen/Amazonka/SSMSAP/Types/OperationStatus.hs view
@@ -0,0 +1,76 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.SSMSAP.Types.OperationStatus+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.SSMSAP.Types.OperationStatus+ ( OperationStatus+ ( ..,+ OperationStatus_ERROR,+ OperationStatus_INPROGRESS,+ OperationStatus_SUCCESS+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype OperationStatus = OperationStatus'+ { fromOperationStatus ::+ 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 OperationStatus_ERROR :: OperationStatus+pattern OperationStatus_ERROR = OperationStatus' "ERROR"++pattern OperationStatus_INPROGRESS :: OperationStatus+pattern OperationStatus_INPROGRESS = OperationStatus' "INPROGRESS"++pattern OperationStatus_SUCCESS :: OperationStatus+pattern OperationStatus_SUCCESS = OperationStatus' "SUCCESS"++{-# COMPLETE+ OperationStatus_ERROR,+ OperationStatus_INPROGRESS,+ OperationStatus_SUCCESS,+ OperationStatus'+ #-}
+ gen/Amazonka/SSMSAP/Types/PermissionActionType.hs view
@@ -0,0 +1,66 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.SSMSAP.Types.PermissionActionType+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.SSMSAP.Types.PermissionActionType+ ( PermissionActionType+ ( ..,+ PermissionActionType_RESTORE+ ),+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++newtype PermissionActionType = PermissionActionType'+ { fromPermissionActionType ::+ 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 PermissionActionType_RESTORE :: PermissionActionType+pattern PermissionActionType_RESTORE = PermissionActionType' "RESTORE"++{-# COMPLETE+ PermissionActionType_RESTORE,+ PermissionActionType'+ #-}
+ gen/Amazonka/SSMSAP/UntagResource.hs view
@@ -0,0 +1,162 @@+{-# 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.SSMSAP.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)+--+-- Delete the tags for a resource.+module Amazonka.SSMSAP.UntagResource+ ( -- * Creating a Request+ UntagResource (..),+ newUntagResource,++ -- * Request Lenses+ untagResource_resourceArn,+ untagResource_tagKeys,++ -- * Destructuring the Response+ UntagResourceResponse (..),+ newUntagResourceResponse,++ -- * Response Lenses+ untagResourceResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSMSAP.Types++-- | /See:/ 'newUntagResource' smart constructor.+data UntagResource = UntagResource'+ { resourceArn :: Prelude.Text,+ -- | Adds\/updates or removes credentials for applications registered with+ -- AWS Systems Manager for SAP.+ 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' -+--+-- 'tagKeys', 'untagResource_tagKeys' - Adds\/updates or removes credentials for applications registered with+-- AWS Systems Manager for SAP.+newUntagResource ::+ -- | 'resourceArn'+ Prelude.Text ->+ UntagResource+newUntagResource pResourceArn_ =+ UntagResource'+ { resourceArn = pResourceArn_,+ tagKeys = Prelude.mempty+ }++untagResource_resourceArn :: Lens.Lens' UntagResource Prelude.Text+untagResource_resourceArn = Lens.lens (\UntagResource' {resourceArn} -> resourceArn) (\s@UntagResource' {} a -> s {resourceArn = a} :: UntagResource)++-- | Adds\/updates or removes credentials for applications registered with+-- AWS Systems Manager for SAP.+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/SSMSAP/UpdateApplicationSettings.hs view
@@ -0,0 +1,202 @@+{-# 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.SSMSAP.UpdateApplicationSettings+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.SSMSAP.UpdateApplicationSettings+ ( -- * Creating a Request+ UpdateApplicationSettings (..),+ newUpdateApplicationSettings,++ -- * Request Lenses+ updateApplicationSettings_credentialsToAddOrUpdate,+ updateApplicationSettings_credentialsToRemove,+ updateApplicationSettings_applicationId,++ -- * Destructuring the Response+ UpdateApplicationSettingsResponse (..),+ newUpdateApplicationSettingsResponse,++ -- * Response Lenses+ updateApplicationSettingsResponse_message,+ updateApplicationSettingsResponse_operationIds,+ updateApplicationSettingsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response+import Amazonka.SSMSAP.Types++-- | /See:/ 'newUpdateApplicationSettings' smart constructor.+data UpdateApplicationSettings = UpdateApplicationSettings'+ { credentialsToAddOrUpdate :: Prelude.Maybe (Prelude.NonEmpty ApplicationCredential),+ credentialsToRemove :: Prelude.Maybe (Prelude.NonEmpty ApplicationCredential),+ applicationId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateApplicationSettings' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'credentialsToAddOrUpdate', 'updateApplicationSettings_credentialsToAddOrUpdate' -+--+-- 'credentialsToRemove', 'updateApplicationSettings_credentialsToRemove' -+--+-- 'applicationId', 'updateApplicationSettings_applicationId' -+newUpdateApplicationSettings ::+ -- | 'applicationId'+ Prelude.Text ->+ UpdateApplicationSettings+newUpdateApplicationSettings pApplicationId_ =+ UpdateApplicationSettings'+ { credentialsToAddOrUpdate =+ Prelude.Nothing,+ credentialsToRemove = Prelude.Nothing,+ applicationId = pApplicationId_+ }++updateApplicationSettings_credentialsToAddOrUpdate :: Lens.Lens' UpdateApplicationSettings (Prelude.Maybe (Prelude.NonEmpty ApplicationCredential))+updateApplicationSettings_credentialsToAddOrUpdate = Lens.lens (\UpdateApplicationSettings' {credentialsToAddOrUpdate} -> credentialsToAddOrUpdate) (\s@UpdateApplicationSettings' {} a -> s {credentialsToAddOrUpdate = a} :: UpdateApplicationSettings) Prelude.. Lens.mapping Lens.coerced++updateApplicationSettings_credentialsToRemove :: Lens.Lens' UpdateApplicationSettings (Prelude.Maybe (Prelude.NonEmpty ApplicationCredential))+updateApplicationSettings_credentialsToRemove = Lens.lens (\UpdateApplicationSettings' {credentialsToRemove} -> credentialsToRemove) (\s@UpdateApplicationSettings' {} a -> s {credentialsToRemove = a} :: UpdateApplicationSettings) Prelude.. Lens.mapping Lens.coerced++updateApplicationSettings_applicationId :: Lens.Lens' UpdateApplicationSettings Prelude.Text+updateApplicationSettings_applicationId = Lens.lens (\UpdateApplicationSettings' {applicationId} -> applicationId) (\s@UpdateApplicationSettings' {} a -> s {applicationId = a} :: UpdateApplicationSettings)++instance Core.AWSRequest UpdateApplicationSettings where+ type+ AWSResponse UpdateApplicationSettings =+ UpdateApplicationSettingsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ UpdateApplicationSettingsResponse'+ Prelude.<$> (x Data..?> "Message")+ Prelude.<*> (x Data..?> "OperationIds" Core..!@ Prelude.mempty)+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable UpdateApplicationSettings where+ hashWithSalt _salt UpdateApplicationSettings' {..} =+ _salt+ `Prelude.hashWithSalt` credentialsToAddOrUpdate+ `Prelude.hashWithSalt` credentialsToRemove+ `Prelude.hashWithSalt` applicationId++instance Prelude.NFData UpdateApplicationSettings where+ rnf UpdateApplicationSettings' {..} =+ Prelude.rnf credentialsToAddOrUpdate+ `Prelude.seq` Prelude.rnf credentialsToRemove+ `Prelude.seq` Prelude.rnf applicationId++instance Data.ToHeaders UpdateApplicationSettings where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON UpdateApplicationSettings where+ toJSON UpdateApplicationSettings' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("CredentialsToAddOrUpdate" Data..=)+ Prelude.<$> credentialsToAddOrUpdate,+ ("CredentialsToRemove" Data..=)+ Prelude.<$> credentialsToRemove,+ Prelude.Just+ ("ApplicationId" Data..= applicationId)+ ]+ )++instance Data.ToPath UpdateApplicationSettings where+ toPath = Prelude.const "/update-application-settings"++instance Data.ToQuery UpdateApplicationSettings where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newUpdateApplicationSettingsResponse' smart constructor.+data UpdateApplicationSettingsResponse = UpdateApplicationSettingsResponse'+ { message :: Prelude.Maybe Prelude.Text,+ operationIds :: 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 'UpdateApplicationSettingsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'message', 'updateApplicationSettingsResponse_message' -+--+-- 'operationIds', 'updateApplicationSettingsResponse_operationIds' -+--+-- 'httpStatus', 'updateApplicationSettingsResponse_httpStatus' - The response's http status code.+newUpdateApplicationSettingsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ UpdateApplicationSettingsResponse+newUpdateApplicationSettingsResponse pHttpStatus_ =+ UpdateApplicationSettingsResponse'+ { message =+ Prelude.Nothing,+ operationIds = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++updateApplicationSettingsResponse_message :: Lens.Lens' UpdateApplicationSettingsResponse (Prelude.Maybe Prelude.Text)+updateApplicationSettingsResponse_message = Lens.lens (\UpdateApplicationSettingsResponse' {message} -> message) (\s@UpdateApplicationSettingsResponse' {} a -> s {message = a} :: UpdateApplicationSettingsResponse)++updateApplicationSettingsResponse_operationIds :: Lens.Lens' UpdateApplicationSettingsResponse (Prelude.Maybe [Prelude.Text])+updateApplicationSettingsResponse_operationIds = Lens.lens (\UpdateApplicationSettingsResponse' {operationIds} -> operationIds) (\s@UpdateApplicationSettingsResponse' {} a -> s {operationIds = a} :: UpdateApplicationSettingsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+updateApplicationSettingsResponse_httpStatus :: Lens.Lens' UpdateApplicationSettingsResponse Prelude.Int+updateApplicationSettingsResponse_httpStatus = Lens.lens (\UpdateApplicationSettingsResponse' {httpStatus} -> httpStatus) (\s@UpdateApplicationSettingsResponse' {} a -> s {httpStatus = a} :: UpdateApplicationSettingsResponse)++instance+ Prelude.NFData+ UpdateApplicationSettingsResponse+ where+ rnf UpdateApplicationSettingsResponse' {..} =+ Prelude.rnf message+ `Prelude.seq` Prelude.rnf operationIds+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/SSMSAP/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.SSMSAP.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.SSMSAP.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.SSMSAP.Lens+import Amazonka.SSMSAP.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.SSMSAP+import Test.Amazonka.SSMSAP.Internal+import Test.Tasty++main :: IO ()+main =+ defaultMain $+ testGroup+ "SSMSAP"+ [ testGroup "tests" tests,+ testGroup "fixtures" fixtures+ ]
+ test/Test/Amazonka/Gen/SSMSAP.hs view
@@ -0,0 +1,358 @@+{-# 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.SSMSAP+-- Copyright : (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.SSMSAP where++import Amazonka.SSMSAP+import qualified Data.Proxy as Proxy+import Test.Amazonka.Fixture+import Test.Amazonka.Prelude+import Test.Amazonka.SSMSAP.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"+-- [ requestDeleteResourcePermission $+-- newDeleteResourcePermission+--+-- , requestDeregisterApplication $+-- newDeregisterApplication+--+-- , requestGetApplication $+-- newGetApplication+--+-- , requestGetComponent $+-- newGetComponent+--+-- , requestGetDatabase $+-- newGetDatabase+--+-- , requestGetOperation $+-- newGetOperation+--+-- , requestGetResourcePermission $+-- newGetResourcePermission+--+-- , requestListApplications $+-- newListApplications+--+-- , requestListComponents $+-- newListComponents+--+-- , requestListDatabases $+-- newListDatabases+--+-- , requestListTagsForResource $+-- newListTagsForResource+--+-- , requestPutResourcePermission $+-- newPutResourcePermission+--+-- , requestRegisterApplication $+-- newRegisterApplication+--+-- , requestTagResource $+-- newTagResource+--+-- , requestUntagResource $+-- newUntagResource+--+-- , requestUpdateApplicationSettings $+-- newUpdateApplicationSettings+--+-- ]++-- , testGroup "response"+-- [ responseDeleteResourcePermission $+-- newDeleteResourcePermissionResponse+--+-- , responseDeregisterApplication $+-- newDeregisterApplicationResponse+--+-- , responseGetApplication $+-- newGetApplicationResponse+--+-- , responseGetComponent $+-- newGetComponentResponse+--+-- , responseGetDatabase $+-- newGetDatabaseResponse+--+-- , responseGetOperation $+-- newGetOperationResponse+--+-- , responseGetResourcePermission $+-- newGetResourcePermissionResponse+--+-- , responseListApplications $+-- newListApplicationsResponse+--+-- , responseListComponents $+-- newListComponentsResponse+--+-- , responseListDatabases $+-- newListDatabasesResponse+--+-- , responseListTagsForResource $+-- newListTagsForResourceResponse+--+-- , responsePutResourcePermission $+-- newPutResourcePermissionResponse+--+-- , responseRegisterApplication $+-- newRegisterApplicationResponse+--+-- , responseTagResource $+-- newTagResourceResponse+--+-- , responseUntagResource $+-- newUntagResourceResponse+--+-- , responseUpdateApplicationSettings $+-- newUpdateApplicationSettingsResponse+--+-- ]+-- ]++-- Requests++requestDeleteResourcePermission :: DeleteResourcePermission -> TestTree+requestDeleteResourcePermission =+ req+ "DeleteResourcePermission"+ "fixture/DeleteResourcePermission.yaml"++requestDeregisterApplication :: DeregisterApplication -> TestTree+requestDeregisterApplication =+ req+ "DeregisterApplication"+ "fixture/DeregisterApplication.yaml"++requestGetApplication :: GetApplication -> TestTree+requestGetApplication =+ req+ "GetApplication"+ "fixture/GetApplication.yaml"++requestGetComponent :: GetComponent -> TestTree+requestGetComponent =+ req+ "GetComponent"+ "fixture/GetComponent.yaml"++requestGetDatabase :: GetDatabase -> TestTree+requestGetDatabase =+ req+ "GetDatabase"+ "fixture/GetDatabase.yaml"++requestGetOperation :: GetOperation -> TestTree+requestGetOperation =+ req+ "GetOperation"+ "fixture/GetOperation.yaml"++requestGetResourcePermission :: GetResourcePermission -> TestTree+requestGetResourcePermission =+ req+ "GetResourcePermission"+ "fixture/GetResourcePermission.yaml"++requestListApplications :: ListApplications -> TestTree+requestListApplications =+ req+ "ListApplications"+ "fixture/ListApplications.yaml"++requestListComponents :: ListComponents -> TestTree+requestListComponents =+ req+ "ListComponents"+ "fixture/ListComponents.yaml"++requestListDatabases :: ListDatabases -> TestTree+requestListDatabases =+ req+ "ListDatabases"+ "fixture/ListDatabases.yaml"++requestListTagsForResource :: ListTagsForResource -> TestTree+requestListTagsForResource =+ req+ "ListTagsForResource"+ "fixture/ListTagsForResource.yaml"++requestPutResourcePermission :: PutResourcePermission -> TestTree+requestPutResourcePermission =+ req+ "PutResourcePermission"+ "fixture/PutResourcePermission.yaml"++requestRegisterApplication :: RegisterApplication -> TestTree+requestRegisterApplication =+ req+ "RegisterApplication"+ "fixture/RegisterApplication.yaml"++requestTagResource :: TagResource -> TestTree+requestTagResource =+ req+ "TagResource"+ "fixture/TagResource.yaml"++requestUntagResource :: UntagResource -> TestTree+requestUntagResource =+ req+ "UntagResource"+ "fixture/UntagResource.yaml"++requestUpdateApplicationSettings :: UpdateApplicationSettings -> TestTree+requestUpdateApplicationSettings =+ req+ "UpdateApplicationSettings"+ "fixture/UpdateApplicationSettings.yaml"++-- Responses++responseDeleteResourcePermission :: DeleteResourcePermissionResponse -> TestTree+responseDeleteResourcePermission =+ res+ "DeleteResourcePermissionResponse"+ "fixture/DeleteResourcePermissionResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeleteResourcePermission)++responseDeregisterApplication :: DeregisterApplicationResponse -> TestTree+responseDeregisterApplication =+ res+ "DeregisterApplicationResponse"+ "fixture/DeregisterApplicationResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeregisterApplication)++responseGetApplication :: GetApplicationResponse -> TestTree+responseGetApplication =+ res+ "GetApplicationResponse"+ "fixture/GetApplicationResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetApplication)++responseGetComponent :: GetComponentResponse -> TestTree+responseGetComponent =+ res+ "GetComponentResponse"+ "fixture/GetComponentResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetComponent)++responseGetDatabase :: GetDatabaseResponse -> TestTree+responseGetDatabase =+ res+ "GetDatabaseResponse"+ "fixture/GetDatabaseResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetDatabase)++responseGetOperation :: GetOperationResponse -> TestTree+responseGetOperation =+ res+ "GetOperationResponse"+ "fixture/GetOperationResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetOperation)++responseGetResourcePermission :: GetResourcePermissionResponse -> TestTree+responseGetResourcePermission =+ res+ "GetResourcePermissionResponse"+ "fixture/GetResourcePermissionResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy GetResourcePermission)++responseListApplications :: ListApplicationsResponse -> TestTree+responseListApplications =+ res+ "ListApplicationsResponse"+ "fixture/ListApplicationsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListApplications)++responseListComponents :: ListComponentsResponse -> TestTree+responseListComponents =+ res+ "ListComponentsResponse"+ "fixture/ListComponentsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListComponents)++responseListDatabases :: ListDatabasesResponse -> TestTree+responseListDatabases =+ res+ "ListDatabasesResponse"+ "fixture/ListDatabasesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListDatabases)++responseListTagsForResource :: ListTagsForResourceResponse -> TestTree+responseListTagsForResource =+ res+ "ListTagsForResourceResponse"+ "fixture/ListTagsForResourceResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListTagsForResource)++responsePutResourcePermission :: PutResourcePermissionResponse -> TestTree+responsePutResourcePermission =+ res+ "PutResourcePermissionResponse"+ "fixture/PutResourcePermissionResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy PutResourcePermission)++responseRegisterApplication :: RegisterApplicationResponse -> TestTree+responseRegisterApplication =+ res+ "RegisterApplicationResponse"+ "fixture/RegisterApplicationResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy RegisterApplication)++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)++responseUpdateApplicationSettings :: UpdateApplicationSettingsResponse -> TestTree+responseUpdateApplicationSettings =+ res+ "UpdateApplicationSettingsResponse"+ "fixture/UpdateApplicationSettingsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateApplicationSettings)
+ test/Test/Amazonka/SSMSAP.hs view
@@ -0,0 +1,20 @@+-- |+-- Module : Test.Amazonka.SSMSAP+-- Copyright : (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.SSMSAP+ ( tests,+ fixtures,+ )+where++import Test.Tasty (TestTree)++tests :: [TestTree]+tests = []++fixtures :: [TestTree]+fixtures = []
+ test/Test/Amazonka/SSMSAP/Internal.hs view
@@ -0,0 +1,8 @@+-- |+-- Module : Test.Amazonka.SSMSAP.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.SSMSAP.Internal where