amazonka-license-manager-user-subscriptions (empty) → 2.0
raw patch · 54 files changed
+5234/−0 lines, 54 filesdep +amazonka-coredep +amazonka-license-manager-user-subscriptionsdep +amazonka-test
Dependencies added: amazonka-core, amazonka-license-manager-user-subscriptions, amazonka-test, base, bytestring, case-insensitive, tasty, tasty-hunit, text, time, unordered-containers
Files
- LICENSE +367/−0
- README.md +44/−0
- amazonka-license-manager-user-subscriptions.cabal +103/−0
- fixture/AssociateUser.yaml +10/−0
- fixture/AssociateUserResponse.proto +0/−0
- fixture/DeregisterIdentityProvider.yaml +10/−0
- fixture/DeregisterIdentityProviderResponse.proto +0/−0
- fixture/DisassociateUser.yaml +10/−0
- fixture/DisassociateUserResponse.proto +0/−0
- fixture/ListIdentityProviders.yaml +10/−0
- fixture/ListIdentityProvidersResponse.proto +0/−0
- fixture/ListInstances.yaml +10/−0
- fixture/ListInstancesResponse.proto +0/−0
- fixture/ListProductSubscriptions.yaml +10/−0
- fixture/ListProductSubscriptionsResponse.proto +0/−0
- fixture/ListUserAssociations.yaml +10/−0
- fixture/ListUserAssociationsResponse.proto +0/−0
- fixture/RegisterIdentityProvider.yaml +10/−0
- fixture/RegisterIdentityProviderResponse.proto +0/−0
- fixture/StartProductSubscription.yaml +10/−0
- fixture/StartProductSubscriptionResponse.proto +0/−0
- fixture/StopProductSubscription.yaml +10/−0
- fixture/StopProductSubscriptionResponse.proto +0/−0
- fixture/UpdateIdentityProviderSettings.yaml +10/−0
- fixture/UpdateIdentityProviderSettingsResponse.proto +0/−0
- gen/Amazonka/LicenseManagerUserSubscriptions.hs +197/−0
- gen/Amazonka/LicenseManagerUserSubscriptions/AssociateUser.hs +227/−0
- gen/Amazonka/LicenseManagerUserSubscriptions/DeregisterIdentityProvider.hs +199/−0
- gen/Amazonka/LicenseManagerUserSubscriptions/DisassociateUser.hs +221/−0
- gen/Amazonka/LicenseManagerUserSubscriptions/Lens.hs +181/−0
- gen/Amazonka/LicenseManagerUserSubscriptions/ListIdentityProviders.hs +221/−0
- gen/Amazonka/LicenseManagerUserSubscriptions/ListInstances.hs +235/−0
- gen/Amazonka/LicenseManagerUserSubscriptions/ListProductSubscriptions.hs +274/−0
- gen/Amazonka/LicenseManagerUserSubscriptions/ListUserAssociations.hs +268/−0
- gen/Amazonka/LicenseManagerUserSubscriptions/RegisterIdentityProvider.hs +214/−0
- gen/Amazonka/LicenseManagerUserSubscriptions/StartProductSubscription.hs +232/−0
- gen/Amazonka/LicenseManagerUserSubscriptions/StopProductSubscription.hs +225/−0
- gen/Amazonka/LicenseManagerUserSubscriptions/Types.hs +241/−0
- gen/Amazonka/LicenseManagerUserSubscriptions/Types/ActiveDirectoryIdentityProvider.hs +90/−0
- gen/Amazonka/LicenseManagerUserSubscriptions/Types/Filter.hs +97/−0
- gen/Amazonka/LicenseManagerUserSubscriptions/Types/IdentityProvider.hs +83/−0
- gen/Amazonka/LicenseManagerUserSubscriptions/Types/IdentityProviderSummary.hs +141/−0
- gen/Amazonka/LicenseManagerUserSubscriptions/Types/InstanceSummary.hs +125/−0
- gen/Amazonka/LicenseManagerUserSubscriptions/Types/InstanceUserSummary.hs +170/−0
- gen/Amazonka/LicenseManagerUserSubscriptions/Types/ProductUserSummary.hs +169/−0
- gen/Amazonka/LicenseManagerUserSubscriptions/Types/Settings.hs +108/−0
- gen/Amazonka/LicenseManagerUserSubscriptions/Types/UpdateSettings.hs +107/−0
- gen/Amazonka/LicenseManagerUserSubscriptions/UpdateIdentityProviderSettings.hs +252/−0
- gen/Amazonka/LicenseManagerUserSubscriptions/Waiters.hs +24/−0
- src/.gitkeep +0/−0
- test/Main.hs +23/−0
- test/Test/Amazonka/Gen/LicenseManagerUserSubscriptions.hs +258/−0
- test/Test/Amazonka/LicenseManagerUserSubscriptions.hs +20/−0
- test/Test/Amazonka/LicenseManagerUserSubscriptions/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 License Manager User Subscriptions 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-license-manager-user-subscriptions)+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.LicenseManagerUserSubscriptions](http://hackage.haskell.org/package/amazonka-license-manager-user-subscriptions/docs/Amazonka-LicenseManagerUserSubscriptions.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-license-manager-user-subscriptions` 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-license-manager-user-subscriptions.cabal view
@@ -0,0 +1,103 @@+cabal-version: 2.2+name: amazonka-license-manager-user-subscriptions+version: 2.0+synopsis: Amazon License Manager User Subscriptions 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.LicenseManagerUserSubscriptions.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.LicenseManagerUserSubscriptions" 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-license-manager-user-subscriptions++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.LicenseManagerUserSubscriptions+ Amazonka.LicenseManagerUserSubscriptions.AssociateUser+ Amazonka.LicenseManagerUserSubscriptions.DeregisterIdentityProvider+ Amazonka.LicenseManagerUserSubscriptions.DisassociateUser+ Amazonka.LicenseManagerUserSubscriptions.Lens+ Amazonka.LicenseManagerUserSubscriptions.ListIdentityProviders+ Amazonka.LicenseManagerUserSubscriptions.ListInstances+ Amazonka.LicenseManagerUserSubscriptions.ListProductSubscriptions+ Amazonka.LicenseManagerUserSubscriptions.ListUserAssociations+ Amazonka.LicenseManagerUserSubscriptions.RegisterIdentityProvider+ Amazonka.LicenseManagerUserSubscriptions.StartProductSubscription+ Amazonka.LicenseManagerUserSubscriptions.StopProductSubscription+ Amazonka.LicenseManagerUserSubscriptions.Types+ Amazonka.LicenseManagerUserSubscriptions.Types.ActiveDirectoryIdentityProvider+ Amazonka.LicenseManagerUserSubscriptions.Types.Filter+ Amazonka.LicenseManagerUserSubscriptions.Types.IdentityProvider+ Amazonka.LicenseManagerUserSubscriptions.Types.IdentityProviderSummary+ Amazonka.LicenseManagerUserSubscriptions.Types.InstanceSummary+ Amazonka.LicenseManagerUserSubscriptions.Types.InstanceUserSummary+ Amazonka.LicenseManagerUserSubscriptions.Types.ProductUserSummary+ Amazonka.LicenseManagerUserSubscriptions.Types.Settings+ Amazonka.LicenseManagerUserSubscriptions.Types.UpdateSettings+ Amazonka.LicenseManagerUserSubscriptions.UpdateIdentityProviderSettings+ Amazonka.LicenseManagerUserSubscriptions.Waiters++ build-depends:+ , amazonka-core >=2.0 && <2.1+ , base >=4.12 && <5++test-suite amazonka-license-manager-user-subscriptions-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.LicenseManagerUserSubscriptions+ Test.Amazonka.LicenseManagerUserSubscriptions+ Test.Amazonka.LicenseManagerUserSubscriptions.Internal++ build-depends:+ , amazonka-core >=2.0 && <2.1+ , amazonka-license-manager-user-subscriptions+ , amazonka-test >=2.0 && <2.1+ , base+ , bytestring+ , case-insensitive+ , tasty+ , tasty-hunit+ , text+ , time+ , unordered-containers
+ fixture/AssociateUser.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/license-manager-user-subscriptions/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: license-manager-user-subscriptions.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/AssociateUserResponse.proto view
+ fixture/DeregisterIdentityProvider.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/license-manager-user-subscriptions/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: license-manager-user-subscriptions.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/DeregisterIdentityProviderResponse.proto view
+ fixture/DisassociateUser.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/license-manager-user-subscriptions/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: license-manager-user-subscriptions.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/DisassociateUserResponse.proto view
+ fixture/ListIdentityProviders.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/license-manager-user-subscriptions/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: license-manager-user-subscriptions.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/ListIdentityProvidersResponse.proto view
+ fixture/ListInstances.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/license-manager-user-subscriptions/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: license-manager-user-subscriptions.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/ListInstancesResponse.proto view
+ fixture/ListProductSubscriptions.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/license-manager-user-subscriptions/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: license-manager-user-subscriptions.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/ListProductSubscriptionsResponse.proto view
+ fixture/ListUserAssociations.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/license-manager-user-subscriptions/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: license-manager-user-subscriptions.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/ListUserAssociationsResponse.proto view
+ fixture/RegisterIdentityProvider.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/license-manager-user-subscriptions/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: license-manager-user-subscriptions.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/RegisterIdentityProviderResponse.proto view
+ fixture/StartProductSubscription.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/license-manager-user-subscriptions/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: license-manager-user-subscriptions.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/StartProductSubscriptionResponse.proto view
+ fixture/StopProductSubscription.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/license-manager-user-subscriptions/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: license-manager-user-subscriptions.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/StopProductSubscriptionResponse.proto view
+ fixture/UpdateIdentityProviderSettings.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/license-manager-user-subscriptions/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+ Host: license-manager-user-subscriptions.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/UpdateIdentityProviderSettingsResponse.proto view
+ gen/Amazonka/LicenseManagerUserSubscriptions.hs view
@@ -0,0 +1,197 @@+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Amazonka.LicenseManagerUserSubscriptions+-- 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.+--+-- With License Manager, you can create user-based subscriptions to utilize+-- licensed software with a per user subscription fee on Amazon EC2+-- instances.+module Amazonka.LicenseManagerUserSubscriptions+ ( -- * Service Configuration+ defaultService,++ -- * Errors+ -- $errors++ -- ** AccessDeniedException+ _AccessDeniedException,++ -- ** ConflictException+ _ConflictException,++ -- ** InternalServerException+ _InternalServerException,++ -- ** ResourceNotFoundException+ _ResourceNotFoundException,++ -- ** ServiceQuotaExceededException+ _ServiceQuotaExceededException,++ -- ** ThrottlingException+ _ThrottlingException,++ -- ** ValidationException+ _ValidationException,++ -- * Waiters+ -- $waiters++ -- * Operations+ -- $operations++ -- ** AssociateUser+ AssociateUser (AssociateUser'),+ newAssociateUser,+ AssociateUserResponse (AssociateUserResponse'),+ newAssociateUserResponse,++ -- ** DeregisterIdentityProvider+ DeregisterIdentityProvider (DeregisterIdentityProvider'),+ newDeregisterIdentityProvider,+ DeregisterIdentityProviderResponse (DeregisterIdentityProviderResponse'),+ newDeregisterIdentityProviderResponse,++ -- ** DisassociateUser+ DisassociateUser (DisassociateUser'),+ newDisassociateUser,+ DisassociateUserResponse (DisassociateUserResponse'),+ newDisassociateUserResponse,++ -- ** ListIdentityProviders (Paginated)+ ListIdentityProviders (ListIdentityProviders'),+ newListIdentityProviders,+ ListIdentityProvidersResponse (ListIdentityProvidersResponse'),+ newListIdentityProvidersResponse,++ -- ** ListInstances (Paginated)+ ListInstances (ListInstances'),+ newListInstances,+ ListInstancesResponse (ListInstancesResponse'),+ newListInstancesResponse,++ -- ** ListProductSubscriptions (Paginated)+ ListProductSubscriptions (ListProductSubscriptions'),+ newListProductSubscriptions,+ ListProductSubscriptionsResponse (ListProductSubscriptionsResponse'),+ newListProductSubscriptionsResponse,++ -- ** ListUserAssociations (Paginated)+ ListUserAssociations (ListUserAssociations'),+ newListUserAssociations,+ ListUserAssociationsResponse (ListUserAssociationsResponse'),+ newListUserAssociationsResponse,++ -- ** RegisterIdentityProvider+ RegisterIdentityProvider (RegisterIdentityProvider'),+ newRegisterIdentityProvider,+ RegisterIdentityProviderResponse (RegisterIdentityProviderResponse'),+ newRegisterIdentityProviderResponse,++ -- ** StartProductSubscription+ StartProductSubscription (StartProductSubscription'),+ newStartProductSubscription,+ StartProductSubscriptionResponse (StartProductSubscriptionResponse'),+ newStartProductSubscriptionResponse,++ -- ** StopProductSubscription+ StopProductSubscription (StopProductSubscription'),+ newStopProductSubscription,+ StopProductSubscriptionResponse (StopProductSubscriptionResponse'),+ newStopProductSubscriptionResponse,++ -- ** UpdateIdentityProviderSettings+ UpdateIdentityProviderSettings (UpdateIdentityProviderSettings'),+ newUpdateIdentityProviderSettings,+ UpdateIdentityProviderSettingsResponse (UpdateIdentityProviderSettingsResponse'),+ newUpdateIdentityProviderSettingsResponse,++ -- * Types++ -- ** ActiveDirectoryIdentityProvider+ ActiveDirectoryIdentityProvider (ActiveDirectoryIdentityProvider'),+ newActiveDirectoryIdentityProvider,++ -- ** Filter+ Filter (Filter'),+ newFilter,++ -- ** IdentityProvider+ IdentityProvider (IdentityProvider'),+ newIdentityProvider,++ -- ** IdentityProviderSummary+ IdentityProviderSummary (IdentityProviderSummary'),+ newIdentityProviderSummary,++ -- ** InstanceSummary+ InstanceSummary (InstanceSummary'),+ newInstanceSummary,++ -- ** InstanceUserSummary+ InstanceUserSummary (InstanceUserSummary'),+ newInstanceUserSummary,++ -- ** ProductUserSummary+ ProductUserSummary (ProductUserSummary'),+ newProductUserSummary,++ -- ** Settings+ Settings (Settings'),+ newSettings,++ -- ** UpdateSettings+ UpdateSettings (UpdateSettings'),+ newUpdateSettings,+ )+where++import Amazonka.LicenseManagerUserSubscriptions.AssociateUser+import Amazonka.LicenseManagerUserSubscriptions.DeregisterIdentityProvider+import Amazonka.LicenseManagerUserSubscriptions.DisassociateUser+import Amazonka.LicenseManagerUserSubscriptions.Lens+import Amazonka.LicenseManagerUserSubscriptions.ListIdentityProviders+import Amazonka.LicenseManagerUserSubscriptions.ListInstances+import Amazonka.LicenseManagerUserSubscriptions.ListProductSubscriptions+import Amazonka.LicenseManagerUserSubscriptions.ListUserAssociations+import Amazonka.LicenseManagerUserSubscriptions.RegisterIdentityProvider+import Amazonka.LicenseManagerUserSubscriptions.StartProductSubscription+import Amazonka.LicenseManagerUserSubscriptions.StopProductSubscription+import Amazonka.LicenseManagerUserSubscriptions.Types+import Amazonka.LicenseManagerUserSubscriptions.UpdateIdentityProviderSettings+import Amazonka.LicenseManagerUserSubscriptions.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 'LicenseManagerUserSubscriptions'.++-- $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/LicenseManagerUserSubscriptions/AssociateUser.hs view
@@ -0,0 +1,227 @@+{-# 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.LicenseManagerUserSubscriptions.AssociateUser+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Associates the user to an EC2 instance to utilize user-based+-- subscriptions.+--+-- Your estimated bill for charges on the number of users and related costs+-- will take 48 hours to appear for billing periods that haven\'t closed+-- (marked as __Pending__ billing status) in Amazon Web Services Billing.+-- For more information, see+-- <https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/invoice.html Viewing your monthly charges>+-- in the /Amazon Web Services Billing User Guide/.+module Amazonka.LicenseManagerUserSubscriptions.AssociateUser+ ( -- * Creating a Request+ AssociateUser (..),+ newAssociateUser,++ -- * Request Lenses+ associateUser_domain,+ associateUser_identityProvider,+ associateUser_instanceId,+ associateUser_username,++ -- * Destructuring the Response+ AssociateUserResponse (..),+ newAssociateUserResponse,++ -- * Response Lenses+ associateUserResponse_httpStatus,+ associateUserResponse_instanceUserSummary,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LicenseManagerUserSubscriptions.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newAssociateUser' smart constructor.+data AssociateUser = AssociateUser'+ { -- | The domain name of the user.+ domain :: Prelude.Maybe Prelude.Text,+ -- | The identity provider of the user.+ identityProvider :: IdentityProvider,+ -- | The ID of the EC2 instance, which provides user-based subscriptions.+ instanceId :: Prelude.Text,+ -- | The user name from the identity provider for the user.+ username :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AssociateUser' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domain', 'associateUser_domain' - The domain name of the user.+--+-- 'identityProvider', 'associateUser_identityProvider' - The identity provider of the user.+--+-- 'instanceId', 'associateUser_instanceId' - The ID of the EC2 instance, which provides user-based subscriptions.+--+-- 'username', 'associateUser_username' - The user name from the identity provider for the user.+newAssociateUser ::+ -- | 'identityProvider'+ IdentityProvider ->+ -- | 'instanceId'+ Prelude.Text ->+ -- | 'username'+ Prelude.Text ->+ AssociateUser+newAssociateUser+ pIdentityProvider_+ pInstanceId_+ pUsername_ =+ AssociateUser'+ { domain = Prelude.Nothing,+ identityProvider = pIdentityProvider_,+ instanceId = pInstanceId_,+ username = pUsername_+ }++-- | The domain name of the user.+associateUser_domain :: Lens.Lens' AssociateUser (Prelude.Maybe Prelude.Text)+associateUser_domain = Lens.lens (\AssociateUser' {domain} -> domain) (\s@AssociateUser' {} a -> s {domain = a} :: AssociateUser)++-- | The identity provider of the user.+associateUser_identityProvider :: Lens.Lens' AssociateUser IdentityProvider+associateUser_identityProvider = Lens.lens (\AssociateUser' {identityProvider} -> identityProvider) (\s@AssociateUser' {} a -> s {identityProvider = a} :: AssociateUser)++-- | The ID of the EC2 instance, which provides user-based subscriptions.+associateUser_instanceId :: Lens.Lens' AssociateUser Prelude.Text+associateUser_instanceId = Lens.lens (\AssociateUser' {instanceId} -> instanceId) (\s@AssociateUser' {} a -> s {instanceId = a} :: AssociateUser)++-- | The user name from the identity provider for the user.+associateUser_username :: Lens.Lens' AssociateUser Prelude.Text+associateUser_username = Lens.lens (\AssociateUser' {username} -> username) (\s@AssociateUser' {} a -> s {username = a} :: AssociateUser)++instance Core.AWSRequest AssociateUser where+ type+ AWSResponse AssociateUser =+ AssociateUserResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ AssociateUserResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..:> "InstanceUserSummary")+ )++instance Prelude.Hashable AssociateUser where+ hashWithSalt _salt AssociateUser' {..} =+ _salt+ `Prelude.hashWithSalt` domain+ `Prelude.hashWithSalt` identityProvider+ `Prelude.hashWithSalt` instanceId+ `Prelude.hashWithSalt` username++instance Prelude.NFData AssociateUser where+ rnf AssociateUser' {..} =+ Prelude.rnf domain+ `Prelude.seq` Prelude.rnf identityProvider+ `Prelude.seq` Prelude.rnf instanceId+ `Prelude.seq` Prelude.rnf username++instance Data.ToHeaders AssociateUser where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON AssociateUser where+ toJSON AssociateUser' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("Domain" Data..=) Prelude.<$> domain,+ Prelude.Just+ ("IdentityProvider" Data..= identityProvider),+ Prelude.Just ("InstanceId" Data..= instanceId),+ Prelude.Just ("Username" Data..= username)+ ]+ )++instance Data.ToPath AssociateUser where+ toPath = Prelude.const "/user/AssociateUser"++instance Data.ToQuery AssociateUser where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newAssociateUserResponse' smart constructor.+data AssociateUserResponse = AssociateUserResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | Metadata that describes the associate user operation.+ instanceUserSummary :: InstanceUserSummary+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'AssociateUserResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'associateUserResponse_httpStatus' - The response's http status code.+--+-- 'instanceUserSummary', 'associateUserResponse_instanceUserSummary' - Metadata that describes the associate user operation.+newAssociateUserResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'instanceUserSummary'+ InstanceUserSummary ->+ AssociateUserResponse+newAssociateUserResponse+ pHttpStatus_+ pInstanceUserSummary_ =+ AssociateUserResponse'+ { httpStatus = pHttpStatus_,+ instanceUserSummary = pInstanceUserSummary_+ }++-- | The response's http status code.+associateUserResponse_httpStatus :: Lens.Lens' AssociateUserResponse Prelude.Int+associateUserResponse_httpStatus = Lens.lens (\AssociateUserResponse' {httpStatus} -> httpStatus) (\s@AssociateUserResponse' {} a -> s {httpStatus = a} :: AssociateUserResponse)++-- | Metadata that describes the associate user operation.+associateUserResponse_instanceUserSummary :: Lens.Lens' AssociateUserResponse InstanceUserSummary+associateUserResponse_instanceUserSummary = Lens.lens (\AssociateUserResponse' {instanceUserSummary} -> instanceUserSummary) (\s@AssociateUserResponse' {} a -> s {instanceUserSummary = a} :: AssociateUserResponse)++instance Prelude.NFData AssociateUserResponse where+ rnf AssociateUserResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf instanceUserSummary
+ gen/Amazonka/LicenseManagerUserSubscriptions/DeregisterIdentityProvider.hs view
@@ -0,0 +1,199 @@+{-# 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.LicenseManagerUserSubscriptions.DeregisterIdentityProvider+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deregisters the identity provider from providing user-based+-- subscriptions.+module Amazonka.LicenseManagerUserSubscriptions.DeregisterIdentityProvider+ ( -- * Creating a Request+ DeregisterIdentityProvider (..),+ newDeregisterIdentityProvider,++ -- * Request Lenses+ deregisterIdentityProvider_identityProvider,+ deregisterIdentityProvider_product,++ -- * Destructuring the Response+ DeregisterIdentityProviderResponse (..),+ newDeregisterIdentityProviderResponse,++ -- * Response Lenses+ deregisterIdentityProviderResponse_httpStatus,+ deregisterIdentityProviderResponse_identityProviderSummary,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LicenseManagerUserSubscriptions.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeregisterIdentityProvider' smart constructor.+data DeregisterIdentityProvider = DeregisterIdentityProvider'+ { -- | An object that specifies details for the identity provider.+ identityProvider :: IdentityProvider,+ -- | The name of the user-based subscription product.+ product :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeregisterIdentityProvider' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'identityProvider', 'deregisterIdentityProvider_identityProvider' - An object that specifies details for the identity provider.+--+-- 'product', 'deregisterIdentityProvider_product' - The name of the user-based subscription product.+newDeregisterIdentityProvider ::+ -- | 'identityProvider'+ IdentityProvider ->+ -- | 'product'+ Prelude.Text ->+ DeregisterIdentityProvider+newDeregisterIdentityProvider+ pIdentityProvider_+ pProduct_ =+ DeregisterIdentityProvider'+ { identityProvider =+ pIdentityProvider_,+ product = pProduct_+ }++-- | An object that specifies details for the identity provider.+deregisterIdentityProvider_identityProvider :: Lens.Lens' DeregisterIdentityProvider IdentityProvider+deregisterIdentityProvider_identityProvider = Lens.lens (\DeregisterIdentityProvider' {identityProvider} -> identityProvider) (\s@DeregisterIdentityProvider' {} a -> s {identityProvider = a} :: DeregisterIdentityProvider)++-- | The name of the user-based subscription product.+deregisterIdentityProvider_product :: Lens.Lens' DeregisterIdentityProvider Prelude.Text+deregisterIdentityProvider_product = Lens.lens (\DeregisterIdentityProvider' {product} -> product) (\s@DeregisterIdentityProvider' {} a -> s {product = a} :: DeregisterIdentityProvider)++instance Core.AWSRequest DeregisterIdentityProvider where+ type+ AWSResponse DeregisterIdentityProvider =+ DeregisterIdentityProviderResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DeregisterIdentityProviderResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..:> "IdentityProviderSummary")+ )++instance Prelude.Hashable DeregisterIdentityProvider where+ hashWithSalt _salt DeregisterIdentityProvider' {..} =+ _salt+ `Prelude.hashWithSalt` identityProvider+ `Prelude.hashWithSalt` product++instance Prelude.NFData DeregisterIdentityProvider where+ rnf DeregisterIdentityProvider' {..} =+ Prelude.rnf identityProvider+ `Prelude.seq` Prelude.rnf product++instance Data.ToHeaders DeregisterIdentityProvider where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON DeregisterIdentityProvider where+ toJSON DeregisterIdentityProvider' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("IdentityProvider" Data..= identityProvider),+ Prelude.Just ("Product" Data..= product)+ ]+ )++instance Data.ToPath DeregisterIdentityProvider where+ toPath =+ Prelude.const+ "/identity-provider/DeregisterIdentityProvider"++instance Data.ToQuery DeregisterIdentityProvider where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeregisterIdentityProviderResponse' smart constructor.+data DeregisterIdentityProviderResponse = DeregisterIdentityProviderResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | Metadata that describes the results of an identity provider operation.+ identityProviderSummary :: IdentityProviderSummary+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeregisterIdentityProviderResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'deregisterIdentityProviderResponse_httpStatus' - The response's http status code.+--+-- 'identityProviderSummary', 'deregisterIdentityProviderResponse_identityProviderSummary' - Metadata that describes the results of an identity provider operation.+newDeregisterIdentityProviderResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'identityProviderSummary'+ IdentityProviderSummary ->+ DeregisterIdentityProviderResponse+newDeregisterIdentityProviderResponse+ pHttpStatus_+ pIdentityProviderSummary_ =+ DeregisterIdentityProviderResponse'+ { httpStatus =+ pHttpStatus_,+ identityProviderSummary =+ pIdentityProviderSummary_+ }++-- | The response's http status code.+deregisterIdentityProviderResponse_httpStatus :: Lens.Lens' DeregisterIdentityProviderResponse Prelude.Int+deregisterIdentityProviderResponse_httpStatus = Lens.lens (\DeregisterIdentityProviderResponse' {httpStatus} -> httpStatus) (\s@DeregisterIdentityProviderResponse' {} a -> s {httpStatus = a} :: DeregisterIdentityProviderResponse)++-- | Metadata that describes the results of an identity provider operation.+deregisterIdentityProviderResponse_identityProviderSummary :: Lens.Lens' DeregisterIdentityProviderResponse IdentityProviderSummary+deregisterIdentityProviderResponse_identityProviderSummary = Lens.lens (\DeregisterIdentityProviderResponse' {identityProviderSummary} -> identityProviderSummary) (\s@DeregisterIdentityProviderResponse' {} a -> s {identityProviderSummary = a} :: DeregisterIdentityProviderResponse)++instance+ Prelude.NFData+ DeregisterIdentityProviderResponse+ where+ rnf DeregisterIdentityProviderResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf identityProviderSummary
+ gen/Amazonka/LicenseManagerUserSubscriptions/DisassociateUser.hs view
@@ -0,0 +1,221 @@+{-# 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.LicenseManagerUserSubscriptions.DisassociateUser+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Disassociates the user from an EC2 instance providing user-based+-- subscriptions.+module Amazonka.LicenseManagerUserSubscriptions.DisassociateUser+ ( -- * Creating a Request+ DisassociateUser (..),+ newDisassociateUser,++ -- * Request Lenses+ disassociateUser_domain,+ disassociateUser_identityProvider,+ disassociateUser_instanceId,+ disassociateUser_username,++ -- * Destructuring the Response+ DisassociateUserResponse (..),+ newDisassociateUserResponse,++ -- * Response Lenses+ disassociateUserResponse_httpStatus,+ disassociateUserResponse_instanceUserSummary,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LicenseManagerUserSubscriptions.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDisassociateUser' smart constructor.+data DisassociateUser = DisassociateUser'+ { -- | The domain name of the user.+ domain :: Prelude.Maybe Prelude.Text,+ -- | An object that specifies details for the identity provider.+ identityProvider :: IdentityProvider,+ -- | The ID of the EC2 instance, which provides user-based subscriptions.+ instanceId :: Prelude.Text,+ -- | The user name from the identity provider for the user.+ username :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DisassociateUser' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domain', 'disassociateUser_domain' - The domain name of the user.+--+-- 'identityProvider', 'disassociateUser_identityProvider' - An object that specifies details for the identity provider.+--+-- 'instanceId', 'disassociateUser_instanceId' - The ID of the EC2 instance, which provides user-based subscriptions.+--+-- 'username', 'disassociateUser_username' - The user name from the identity provider for the user.+newDisassociateUser ::+ -- | 'identityProvider'+ IdentityProvider ->+ -- | 'instanceId'+ Prelude.Text ->+ -- | 'username'+ Prelude.Text ->+ DisassociateUser+newDisassociateUser+ pIdentityProvider_+ pInstanceId_+ pUsername_ =+ DisassociateUser'+ { domain = Prelude.Nothing,+ identityProvider = pIdentityProvider_,+ instanceId = pInstanceId_,+ username = pUsername_+ }++-- | The domain name of the user.+disassociateUser_domain :: Lens.Lens' DisassociateUser (Prelude.Maybe Prelude.Text)+disassociateUser_domain = Lens.lens (\DisassociateUser' {domain} -> domain) (\s@DisassociateUser' {} a -> s {domain = a} :: DisassociateUser)++-- | An object that specifies details for the identity provider.+disassociateUser_identityProvider :: Lens.Lens' DisassociateUser IdentityProvider+disassociateUser_identityProvider = Lens.lens (\DisassociateUser' {identityProvider} -> identityProvider) (\s@DisassociateUser' {} a -> s {identityProvider = a} :: DisassociateUser)++-- | The ID of the EC2 instance, which provides user-based subscriptions.+disassociateUser_instanceId :: Lens.Lens' DisassociateUser Prelude.Text+disassociateUser_instanceId = Lens.lens (\DisassociateUser' {instanceId} -> instanceId) (\s@DisassociateUser' {} a -> s {instanceId = a} :: DisassociateUser)++-- | The user name from the identity provider for the user.+disassociateUser_username :: Lens.Lens' DisassociateUser Prelude.Text+disassociateUser_username = Lens.lens (\DisassociateUser' {username} -> username) (\s@DisassociateUser' {} a -> s {username = a} :: DisassociateUser)++instance Core.AWSRequest DisassociateUser where+ type+ AWSResponse DisassociateUser =+ DisassociateUserResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ DisassociateUserResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..:> "InstanceUserSummary")+ )++instance Prelude.Hashable DisassociateUser where+ hashWithSalt _salt DisassociateUser' {..} =+ _salt+ `Prelude.hashWithSalt` domain+ `Prelude.hashWithSalt` identityProvider+ `Prelude.hashWithSalt` instanceId+ `Prelude.hashWithSalt` username++instance Prelude.NFData DisassociateUser where+ rnf DisassociateUser' {..} =+ Prelude.rnf domain+ `Prelude.seq` Prelude.rnf identityProvider+ `Prelude.seq` Prelude.rnf instanceId+ `Prelude.seq` Prelude.rnf username++instance Data.ToHeaders DisassociateUser where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON DisassociateUser where+ toJSON DisassociateUser' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("Domain" Data..=) Prelude.<$> domain,+ Prelude.Just+ ("IdentityProvider" Data..= identityProvider),+ Prelude.Just ("InstanceId" Data..= instanceId),+ Prelude.Just ("Username" Data..= username)+ ]+ )++instance Data.ToPath DisassociateUser where+ toPath = Prelude.const "/user/DisassociateUser"++instance Data.ToQuery DisassociateUser where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDisassociateUserResponse' smart constructor.+data DisassociateUserResponse = DisassociateUserResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | Metadata that describes the associate user operation.+ instanceUserSummary :: InstanceUserSummary+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DisassociateUserResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'disassociateUserResponse_httpStatus' - The response's http status code.+--+-- 'instanceUserSummary', 'disassociateUserResponse_instanceUserSummary' - Metadata that describes the associate user operation.+newDisassociateUserResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'instanceUserSummary'+ InstanceUserSummary ->+ DisassociateUserResponse+newDisassociateUserResponse+ pHttpStatus_+ pInstanceUserSummary_ =+ DisassociateUserResponse'+ { httpStatus =+ pHttpStatus_,+ instanceUserSummary = pInstanceUserSummary_+ }++-- | The response's http status code.+disassociateUserResponse_httpStatus :: Lens.Lens' DisassociateUserResponse Prelude.Int+disassociateUserResponse_httpStatus = Lens.lens (\DisassociateUserResponse' {httpStatus} -> httpStatus) (\s@DisassociateUserResponse' {} a -> s {httpStatus = a} :: DisassociateUserResponse)++-- | Metadata that describes the associate user operation.+disassociateUserResponse_instanceUserSummary :: Lens.Lens' DisassociateUserResponse InstanceUserSummary+disassociateUserResponse_instanceUserSummary = Lens.lens (\DisassociateUserResponse' {instanceUserSummary} -> instanceUserSummary) (\s@DisassociateUserResponse' {} a -> s {instanceUserSummary = a} :: DisassociateUserResponse)++instance Prelude.NFData DisassociateUserResponse where+ rnf DisassociateUserResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf instanceUserSummary
+ gen/Amazonka/LicenseManagerUserSubscriptions/Lens.hs view
@@ -0,0 +1,181 @@+{-# 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.LicenseManagerUserSubscriptions.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.LicenseManagerUserSubscriptions.Lens+ ( -- * Operations++ -- ** AssociateUser+ associateUser_domain,+ associateUser_identityProvider,+ associateUser_instanceId,+ associateUser_username,+ associateUserResponse_httpStatus,+ associateUserResponse_instanceUserSummary,++ -- ** DeregisterIdentityProvider+ deregisterIdentityProvider_identityProvider,+ deregisterIdentityProvider_product,+ deregisterIdentityProviderResponse_httpStatus,+ deregisterIdentityProviderResponse_identityProviderSummary,++ -- ** DisassociateUser+ disassociateUser_domain,+ disassociateUser_identityProvider,+ disassociateUser_instanceId,+ disassociateUser_username,+ disassociateUserResponse_httpStatus,+ disassociateUserResponse_instanceUserSummary,++ -- ** ListIdentityProviders+ listIdentityProviders_maxResults,+ listIdentityProviders_nextToken,+ listIdentityProvidersResponse_nextToken,+ listIdentityProvidersResponse_httpStatus,+ listIdentityProvidersResponse_identityProviderSummaries,++ -- ** ListInstances+ listInstances_filters,+ listInstances_maxResults,+ listInstances_nextToken,+ listInstancesResponse_instanceSummaries,+ listInstancesResponse_nextToken,+ listInstancesResponse_httpStatus,++ -- ** ListProductSubscriptions+ listProductSubscriptions_filters,+ listProductSubscriptions_maxResults,+ listProductSubscriptions_nextToken,+ listProductSubscriptions_identityProvider,+ listProductSubscriptions_product,+ listProductSubscriptionsResponse_nextToken,+ listProductSubscriptionsResponse_productUserSummaries,+ listProductSubscriptionsResponse_httpStatus,++ -- ** ListUserAssociations+ listUserAssociations_filters,+ listUserAssociations_maxResults,+ listUserAssociations_nextToken,+ listUserAssociations_identityProvider,+ listUserAssociations_instanceId,+ listUserAssociationsResponse_instanceUserSummaries,+ listUserAssociationsResponse_nextToken,+ listUserAssociationsResponse_httpStatus,++ -- ** RegisterIdentityProvider+ registerIdentityProvider_settings,+ registerIdentityProvider_identityProvider,+ registerIdentityProvider_product,+ registerIdentityProviderResponse_httpStatus,+ registerIdentityProviderResponse_identityProviderSummary,++ -- ** StartProductSubscription+ startProductSubscription_domain,+ startProductSubscription_identityProvider,+ startProductSubscription_product,+ startProductSubscription_username,+ startProductSubscriptionResponse_httpStatus,+ startProductSubscriptionResponse_productUserSummary,++ -- ** StopProductSubscription+ stopProductSubscription_domain,+ stopProductSubscription_identityProvider,+ stopProductSubscription_product,+ stopProductSubscription_username,+ stopProductSubscriptionResponse_httpStatus,+ stopProductSubscriptionResponse_productUserSummary,++ -- ** UpdateIdentityProviderSettings+ updateIdentityProviderSettings_identityProvider,+ updateIdentityProviderSettings_product,+ updateIdentityProviderSettings_updateSettings,+ updateIdentityProviderSettingsResponse_httpStatus,+ updateIdentityProviderSettingsResponse_identityProviderSummary,++ -- * Types++ -- ** ActiveDirectoryIdentityProvider+ activeDirectoryIdentityProvider_directoryId,++ -- ** Filter+ filter_attribute,+ filter_operation,+ filter_value,++ -- ** IdentityProvider+ identityProvider_activeDirectoryIdentityProvider,++ -- ** IdentityProviderSummary+ identityProviderSummary_failureMessage,+ identityProviderSummary_identityProvider,+ identityProviderSummary_product,+ identityProviderSummary_settings,+ identityProviderSummary_status,++ -- ** InstanceSummary+ instanceSummary_lastStatusCheckDate,+ instanceSummary_statusMessage,+ instanceSummary_instanceId,+ instanceSummary_products,+ instanceSummary_status,++ -- ** InstanceUserSummary+ instanceUserSummary_associationDate,+ instanceUserSummary_disassociationDate,+ instanceUserSummary_domain,+ instanceUserSummary_statusMessage,+ instanceUserSummary_identityProvider,+ instanceUserSummary_instanceId,+ instanceUserSummary_status,+ instanceUserSummary_username,++ -- ** ProductUserSummary+ productUserSummary_domain,+ productUserSummary_statusMessage,+ productUserSummary_subscriptionEndDate,+ productUserSummary_subscriptionStartDate,+ productUserSummary_identityProvider,+ productUserSummary_product,+ productUserSummary_status,+ productUserSummary_username,++ -- ** Settings+ settings_securityGroupId,+ settings_subnets,++ -- ** UpdateSettings+ updateSettings_securityGroupId,+ updateSettings_addSubnets,+ updateSettings_removeSubnets,+ )+where++import Amazonka.LicenseManagerUserSubscriptions.AssociateUser+import Amazonka.LicenseManagerUserSubscriptions.DeregisterIdentityProvider+import Amazonka.LicenseManagerUserSubscriptions.DisassociateUser+import Amazonka.LicenseManagerUserSubscriptions.ListIdentityProviders+import Amazonka.LicenseManagerUserSubscriptions.ListInstances+import Amazonka.LicenseManagerUserSubscriptions.ListProductSubscriptions+import Amazonka.LicenseManagerUserSubscriptions.ListUserAssociations+import Amazonka.LicenseManagerUserSubscriptions.RegisterIdentityProvider+import Amazonka.LicenseManagerUserSubscriptions.StartProductSubscription+import Amazonka.LicenseManagerUserSubscriptions.StopProductSubscription+import Amazonka.LicenseManagerUserSubscriptions.Types.ActiveDirectoryIdentityProvider+import Amazonka.LicenseManagerUserSubscriptions.Types.Filter+import Amazonka.LicenseManagerUserSubscriptions.Types.IdentityProvider+import Amazonka.LicenseManagerUserSubscriptions.Types.IdentityProviderSummary+import Amazonka.LicenseManagerUserSubscriptions.Types.InstanceSummary+import Amazonka.LicenseManagerUserSubscriptions.Types.InstanceUserSummary+import Amazonka.LicenseManagerUserSubscriptions.Types.ProductUserSummary+import Amazonka.LicenseManagerUserSubscriptions.Types.Settings+import Amazonka.LicenseManagerUserSubscriptions.Types.UpdateSettings+import Amazonka.LicenseManagerUserSubscriptions.UpdateIdentityProviderSettings
+ gen/Amazonka/LicenseManagerUserSubscriptions/ListIdentityProviders.hs view
@@ -0,0 +1,221 @@+{-# 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.LicenseManagerUserSubscriptions.ListIdentityProviders+-- 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 identity providers for user-based subscriptions.+--+-- This operation returns paginated results.+module Amazonka.LicenseManagerUserSubscriptions.ListIdentityProviders+ ( -- * Creating a Request+ ListIdentityProviders (..),+ newListIdentityProviders,++ -- * Request Lenses+ listIdentityProviders_maxResults,+ listIdentityProviders_nextToken,++ -- * Destructuring the Response+ ListIdentityProvidersResponse (..),+ newListIdentityProvidersResponse,++ -- * Response Lenses+ listIdentityProvidersResponse_nextToken,+ listIdentityProvidersResponse_httpStatus,+ listIdentityProvidersResponse_identityProviderSummaries,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LicenseManagerUserSubscriptions.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListIdentityProviders' smart constructor.+data ListIdentityProviders = ListIdentityProviders'+ { -- | Maximum number of results to return in a single call.+ maxResults :: Prelude.Maybe Prelude.Int,+ -- | Token for the next set of results.+ nextToken :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListIdentityProviders' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'listIdentityProviders_maxResults' - Maximum number of results to return in a single call.+--+-- 'nextToken', 'listIdentityProviders_nextToken' - Token for the next set of results.+newListIdentityProviders ::+ ListIdentityProviders+newListIdentityProviders =+ ListIdentityProviders'+ { maxResults =+ Prelude.Nothing,+ nextToken = Prelude.Nothing+ }++-- | Maximum number of results to return in a single call.+listIdentityProviders_maxResults :: Lens.Lens' ListIdentityProviders (Prelude.Maybe Prelude.Int)+listIdentityProviders_maxResults = Lens.lens (\ListIdentityProviders' {maxResults} -> maxResults) (\s@ListIdentityProviders' {} a -> s {maxResults = a} :: ListIdentityProviders)++-- | Token for the next set of results.+listIdentityProviders_nextToken :: Lens.Lens' ListIdentityProviders (Prelude.Maybe Prelude.Text)+listIdentityProviders_nextToken = Lens.lens (\ListIdentityProviders' {nextToken} -> nextToken) (\s@ListIdentityProviders' {} a -> s {nextToken = a} :: ListIdentityProviders)++instance Core.AWSPager ListIdentityProviders where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listIdentityProvidersResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^. listIdentityProvidersResponse_identityProviderSummaries+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listIdentityProviders_nextToken+ Lens..~ rs+ Lens.^? listIdentityProvidersResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ListIdentityProviders where+ type+ AWSResponse ListIdentityProviders =+ ListIdentityProvidersResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListIdentityProvidersResponse'+ Prelude.<$> (x Data..?> "NextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> ( x+ Data..?> "IdentityProviderSummaries"+ Core..!@ Prelude.mempty+ )+ )++instance Prelude.Hashable ListIdentityProviders where+ hashWithSalt _salt ListIdentityProviders' {..} =+ _salt+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken++instance Prelude.NFData ListIdentityProviders where+ rnf ListIdentityProviders' {..} =+ Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken++instance Data.ToHeaders ListIdentityProviders where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListIdentityProviders where+ toJSON ListIdentityProviders' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("MaxResults" Data..=) Prelude.<$> maxResults,+ ("NextToken" Data..=) Prelude.<$> nextToken+ ]+ )++instance Data.ToPath ListIdentityProviders where+ toPath =+ Prelude.const+ "/identity-provider/ListIdentityProviders"++instance Data.ToQuery ListIdentityProviders where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListIdentityProvidersResponse' smart constructor.+data ListIdentityProvidersResponse = ListIdentityProvidersResponse'+ { -- | Token for the next set of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | Metadata that describes the list identity providers operation.+ identityProviderSummaries :: [IdentityProviderSummary]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListIdentityProvidersResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'nextToken', 'listIdentityProvidersResponse_nextToken' - Token for the next set of results.+--+-- 'httpStatus', 'listIdentityProvidersResponse_httpStatus' - The response's http status code.+--+-- 'identityProviderSummaries', 'listIdentityProvidersResponse_identityProviderSummaries' - Metadata that describes the list identity providers operation.+newListIdentityProvidersResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListIdentityProvidersResponse+newListIdentityProvidersResponse pHttpStatus_ =+ ListIdentityProvidersResponse'+ { nextToken =+ Prelude.Nothing,+ httpStatus = pHttpStatus_,+ identityProviderSummaries = Prelude.mempty+ }++-- | Token for the next set of results.+listIdentityProvidersResponse_nextToken :: Lens.Lens' ListIdentityProvidersResponse (Prelude.Maybe Prelude.Text)+listIdentityProvidersResponse_nextToken = Lens.lens (\ListIdentityProvidersResponse' {nextToken} -> nextToken) (\s@ListIdentityProvidersResponse' {} a -> s {nextToken = a} :: ListIdentityProvidersResponse)++-- | The response's http status code.+listIdentityProvidersResponse_httpStatus :: Lens.Lens' ListIdentityProvidersResponse Prelude.Int+listIdentityProvidersResponse_httpStatus = Lens.lens (\ListIdentityProvidersResponse' {httpStatus} -> httpStatus) (\s@ListIdentityProvidersResponse' {} a -> s {httpStatus = a} :: ListIdentityProvidersResponse)++-- | Metadata that describes the list identity providers operation.+listIdentityProvidersResponse_identityProviderSummaries :: Lens.Lens' ListIdentityProvidersResponse [IdentityProviderSummary]+listIdentityProvidersResponse_identityProviderSummaries = Lens.lens (\ListIdentityProvidersResponse' {identityProviderSummaries} -> identityProviderSummaries) (\s@ListIdentityProvidersResponse' {} a -> s {identityProviderSummaries = a} :: ListIdentityProvidersResponse) Prelude.. Lens.coerced++instance Prelude.NFData ListIdentityProvidersResponse where+ rnf ListIdentityProvidersResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf identityProviderSummaries
+ gen/Amazonka/LicenseManagerUserSubscriptions/ListInstances.hs view
@@ -0,0 +1,235 @@+{-# 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.LicenseManagerUserSubscriptions.ListInstances+-- 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 EC2 instances providing user-based subscriptions.+--+-- This operation returns paginated results.+module Amazonka.LicenseManagerUserSubscriptions.ListInstances+ ( -- * Creating a Request+ ListInstances (..),+ newListInstances,++ -- * Request Lenses+ listInstances_filters,+ listInstances_maxResults,+ listInstances_nextToken,++ -- * Destructuring the Response+ ListInstancesResponse (..),+ newListInstancesResponse,++ -- * Response Lenses+ listInstancesResponse_instanceSummaries,+ listInstancesResponse_nextToken,+ listInstancesResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LicenseManagerUserSubscriptions.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListInstances' smart constructor.+data ListInstances = ListInstances'+ { -- | An array of structures that you can use to filter the results to those+ -- that match one or more sets of key-value pairs that you specify.+ filters :: Prelude.Maybe [Filter],+ -- | Maximum number of results to return in a single call.+ maxResults :: Prelude.Maybe Prelude.Int,+ -- | Token for the next set of results.+ nextToken :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListInstances' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'filters', 'listInstances_filters' - An array of structures that you can use to filter the results to those+-- that match one or more sets of key-value pairs that you specify.+--+-- 'maxResults', 'listInstances_maxResults' - Maximum number of results to return in a single call.+--+-- 'nextToken', 'listInstances_nextToken' - Token for the next set of results.+newListInstances ::+ ListInstances+newListInstances =+ ListInstances'+ { filters = Prelude.Nothing,+ maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing+ }++-- | An array of structures that you can use to filter the results to those+-- that match one or more sets of key-value pairs that you specify.+listInstances_filters :: Lens.Lens' ListInstances (Prelude.Maybe [Filter])+listInstances_filters = Lens.lens (\ListInstances' {filters} -> filters) (\s@ListInstances' {} a -> s {filters = a} :: ListInstances) Prelude.. Lens.mapping Lens.coerced++-- | Maximum number of results to return in a single call.+listInstances_maxResults :: Lens.Lens' ListInstances (Prelude.Maybe Prelude.Int)+listInstances_maxResults = Lens.lens (\ListInstances' {maxResults} -> maxResults) (\s@ListInstances' {} a -> s {maxResults = a} :: ListInstances)++-- | Token for the next set of results.+listInstances_nextToken :: Lens.Lens' ListInstances (Prelude.Maybe Prelude.Text)+listInstances_nextToken = Lens.lens (\ListInstances' {nextToken} -> nextToken) (\s@ListInstances' {} a -> s {nextToken = a} :: ListInstances)++instance Core.AWSPager ListInstances where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listInstancesResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? listInstancesResponse_instanceSummaries+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listInstances_nextToken+ Lens..~ rs+ Lens.^? listInstancesResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ListInstances where+ type+ AWSResponse ListInstances =+ ListInstancesResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListInstancesResponse'+ Prelude.<$> ( x+ Data..?> "InstanceSummaries"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "NextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListInstances where+ hashWithSalt _salt ListInstances' {..} =+ _salt+ `Prelude.hashWithSalt` filters+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken++instance Prelude.NFData ListInstances where+ rnf ListInstances' {..} =+ Prelude.rnf filters+ `Prelude.seq` Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken++instance Data.ToHeaders ListInstances where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListInstances where+ toJSON ListInstances' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("Filters" Data..=) Prelude.<$> filters,+ ("MaxResults" Data..=) Prelude.<$> maxResults,+ ("NextToken" Data..=) Prelude.<$> nextToken+ ]+ )++instance Data.ToPath ListInstances where+ toPath = Prelude.const "/instance/ListInstances"++instance Data.ToQuery ListInstances where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListInstancesResponse' smart constructor.+data ListInstancesResponse = ListInstancesResponse'+ { -- | Metadata that describes the list instances operation.+ instanceSummaries :: Prelude.Maybe [InstanceSummary],+ -- | Token for the next set of results.+ 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 'ListInstancesResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'instanceSummaries', 'listInstancesResponse_instanceSummaries' - Metadata that describes the list instances operation.+--+-- 'nextToken', 'listInstancesResponse_nextToken' - Token for the next set of results.+--+-- 'httpStatus', 'listInstancesResponse_httpStatus' - The response's http status code.+newListInstancesResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListInstancesResponse+newListInstancesResponse pHttpStatus_ =+ ListInstancesResponse'+ { instanceSummaries =+ Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Metadata that describes the list instances operation.+listInstancesResponse_instanceSummaries :: Lens.Lens' ListInstancesResponse (Prelude.Maybe [InstanceSummary])+listInstancesResponse_instanceSummaries = Lens.lens (\ListInstancesResponse' {instanceSummaries} -> instanceSummaries) (\s@ListInstancesResponse' {} a -> s {instanceSummaries = a} :: ListInstancesResponse) Prelude.. Lens.mapping Lens.coerced++-- | Token for the next set of results.+listInstancesResponse_nextToken :: Lens.Lens' ListInstancesResponse (Prelude.Maybe Prelude.Text)+listInstancesResponse_nextToken = Lens.lens (\ListInstancesResponse' {nextToken} -> nextToken) (\s@ListInstancesResponse' {} a -> s {nextToken = a} :: ListInstancesResponse)++-- | The response's http status code.+listInstancesResponse_httpStatus :: Lens.Lens' ListInstancesResponse Prelude.Int+listInstancesResponse_httpStatus = Lens.lens (\ListInstancesResponse' {httpStatus} -> httpStatus) (\s@ListInstancesResponse' {} a -> s {httpStatus = a} :: ListInstancesResponse)++instance Prelude.NFData ListInstancesResponse where+ rnf ListInstancesResponse' {..} =+ Prelude.rnf instanceSummaries+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LicenseManagerUserSubscriptions/ListProductSubscriptions.hs view
@@ -0,0 +1,274 @@+{-# 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.LicenseManagerUserSubscriptions.ListProductSubscriptions+-- 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 user-based subscription products available from an identity+-- provider.+--+-- This operation returns paginated results.+module Amazonka.LicenseManagerUserSubscriptions.ListProductSubscriptions+ ( -- * Creating a Request+ ListProductSubscriptions (..),+ newListProductSubscriptions,++ -- * Request Lenses+ listProductSubscriptions_filters,+ listProductSubscriptions_maxResults,+ listProductSubscriptions_nextToken,+ listProductSubscriptions_identityProvider,+ listProductSubscriptions_product,++ -- * Destructuring the Response+ ListProductSubscriptionsResponse (..),+ newListProductSubscriptionsResponse,++ -- * Response Lenses+ listProductSubscriptionsResponse_nextToken,+ listProductSubscriptionsResponse_productUserSummaries,+ listProductSubscriptionsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LicenseManagerUserSubscriptions.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListProductSubscriptions' smart constructor.+data ListProductSubscriptions = ListProductSubscriptions'+ { -- | An array of structures that you can use to filter the results to those+ -- that match one or more sets of key-value pairs that you specify.+ filters :: Prelude.Maybe [Filter],+ -- | Maximum number of results to return in a single call.+ maxResults :: Prelude.Maybe Prelude.Int,+ -- | Token for the next set of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | An object that specifies details for the identity provider.+ identityProvider :: IdentityProvider,+ -- | The name of the user-based subscription product.+ product :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListProductSubscriptions' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'filters', 'listProductSubscriptions_filters' - An array of structures that you can use to filter the results to those+-- that match one or more sets of key-value pairs that you specify.+--+-- 'maxResults', 'listProductSubscriptions_maxResults' - Maximum number of results to return in a single call.+--+-- 'nextToken', 'listProductSubscriptions_nextToken' - Token for the next set of results.+--+-- 'identityProvider', 'listProductSubscriptions_identityProvider' - An object that specifies details for the identity provider.+--+-- 'product', 'listProductSubscriptions_product' - The name of the user-based subscription product.+newListProductSubscriptions ::+ -- | 'identityProvider'+ IdentityProvider ->+ -- | 'product'+ Prelude.Text ->+ ListProductSubscriptions+newListProductSubscriptions+ pIdentityProvider_+ pProduct_ =+ ListProductSubscriptions'+ { filters =+ Prelude.Nothing,+ maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ identityProvider = pIdentityProvider_,+ product = pProduct_+ }++-- | An array of structures that you can use to filter the results to those+-- that match one or more sets of key-value pairs that you specify.+listProductSubscriptions_filters :: Lens.Lens' ListProductSubscriptions (Prelude.Maybe [Filter])+listProductSubscriptions_filters = Lens.lens (\ListProductSubscriptions' {filters} -> filters) (\s@ListProductSubscriptions' {} a -> s {filters = a} :: ListProductSubscriptions) Prelude.. Lens.mapping Lens.coerced++-- | Maximum number of results to return in a single call.+listProductSubscriptions_maxResults :: Lens.Lens' ListProductSubscriptions (Prelude.Maybe Prelude.Int)+listProductSubscriptions_maxResults = Lens.lens (\ListProductSubscriptions' {maxResults} -> maxResults) (\s@ListProductSubscriptions' {} a -> s {maxResults = a} :: ListProductSubscriptions)++-- | Token for the next set of results.+listProductSubscriptions_nextToken :: Lens.Lens' ListProductSubscriptions (Prelude.Maybe Prelude.Text)+listProductSubscriptions_nextToken = Lens.lens (\ListProductSubscriptions' {nextToken} -> nextToken) (\s@ListProductSubscriptions' {} a -> s {nextToken = a} :: ListProductSubscriptions)++-- | An object that specifies details for the identity provider.+listProductSubscriptions_identityProvider :: Lens.Lens' ListProductSubscriptions IdentityProvider+listProductSubscriptions_identityProvider = Lens.lens (\ListProductSubscriptions' {identityProvider} -> identityProvider) (\s@ListProductSubscriptions' {} a -> s {identityProvider = a} :: ListProductSubscriptions)++-- | The name of the user-based subscription product.+listProductSubscriptions_product :: Lens.Lens' ListProductSubscriptions Prelude.Text+listProductSubscriptions_product = Lens.lens (\ListProductSubscriptions' {product} -> product) (\s@ListProductSubscriptions' {} a -> s {product = a} :: ListProductSubscriptions)++instance Core.AWSPager ListProductSubscriptions where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listProductSubscriptionsResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? listProductSubscriptionsResponse_productUserSummaries+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listProductSubscriptions_nextToken+ Lens..~ rs+ Lens.^? listProductSubscriptionsResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ListProductSubscriptions where+ type+ AWSResponse ListProductSubscriptions =+ ListProductSubscriptionsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListProductSubscriptionsResponse'+ Prelude.<$> (x Data..?> "NextToken")+ Prelude.<*> ( x+ Data..?> "ProductUserSummaries"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListProductSubscriptions where+ hashWithSalt _salt ListProductSubscriptions' {..} =+ _salt+ `Prelude.hashWithSalt` filters+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` identityProvider+ `Prelude.hashWithSalt` product++instance Prelude.NFData ListProductSubscriptions where+ rnf ListProductSubscriptions' {..} =+ Prelude.rnf filters+ `Prelude.seq` Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf identityProvider+ `Prelude.seq` Prelude.rnf product++instance Data.ToHeaders ListProductSubscriptions where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListProductSubscriptions where+ toJSON ListProductSubscriptions' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("Filters" Data..=) Prelude.<$> filters,+ ("MaxResults" Data..=) Prelude.<$> maxResults,+ ("NextToken" Data..=) Prelude.<$> nextToken,+ Prelude.Just+ ("IdentityProvider" Data..= identityProvider),+ Prelude.Just ("Product" Data..= product)+ ]+ )++instance Data.ToPath ListProductSubscriptions where+ toPath =+ Prelude.const "/user/ListProductSubscriptions"++instance Data.ToQuery ListProductSubscriptions where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListProductSubscriptionsResponse' smart constructor.+data ListProductSubscriptionsResponse = ListProductSubscriptionsResponse'+ { -- | Token for the next set of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | Metadata that describes the list product subscriptions operation.+ productUserSummaries :: Prelude.Maybe [ProductUserSummary],+ -- | The response's http status code.+ httpStatus :: Prelude.Int+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListProductSubscriptionsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'nextToken', 'listProductSubscriptionsResponse_nextToken' - Token for the next set of results.+--+-- 'productUserSummaries', 'listProductSubscriptionsResponse_productUserSummaries' - Metadata that describes the list product subscriptions operation.+--+-- 'httpStatus', 'listProductSubscriptionsResponse_httpStatus' - The response's http status code.+newListProductSubscriptionsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListProductSubscriptionsResponse+newListProductSubscriptionsResponse pHttpStatus_ =+ ListProductSubscriptionsResponse'+ { nextToken =+ Prelude.Nothing,+ productUserSummaries = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Token for the next set of results.+listProductSubscriptionsResponse_nextToken :: Lens.Lens' ListProductSubscriptionsResponse (Prelude.Maybe Prelude.Text)+listProductSubscriptionsResponse_nextToken = Lens.lens (\ListProductSubscriptionsResponse' {nextToken} -> nextToken) (\s@ListProductSubscriptionsResponse' {} a -> s {nextToken = a} :: ListProductSubscriptionsResponse)++-- | Metadata that describes the list product subscriptions operation.+listProductSubscriptionsResponse_productUserSummaries :: Lens.Lens' ListProductSubscriptionsResponse (Prelude.Maybe [ProductUserSummary])+listProductSubscriptionsResponse_productUserSummaries = Lens.lens (\ListProductSubscriptionsResponse' {productUserSummaries} -> productUserSummaries) (\s@ListProductSubscriptionsResponse' {} a -> s {productUserSummaries = a} :: ListProductSubscriptionsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listProductSubscriptionsResponse_httpStatus :: Lens.Lens' ListProductSubscriptionsResponse Prelude.Int+listProductSubscriptionsResponse_httpStatus = Lens.lens (\ListProductSubscriptionsResponse' {httpStatus} -> httpStatus) (\s@ListProductSubscriptionsResponse' {} a -> s {httpStatus = a} :: ListProductSubscriptionsResponse)++instance+ Prelude.NFData+ ListProductSubscriptionsResponse+ where+ rnf ListProductSubscriptionsResponse' {..} =+ Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf productUserSummaries+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LicenseManagerUserSubscriptions/ListUserAssociations.hs view
@@ -0,0 +1,268 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LicenseManagerUserSubscriptions.ListUserAssociations+-- 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 user associations for an identity provider.+--+-- This operation returns paginated results.+module Amazonka.LicenseManagerUserSubscriptions.ListUserAssociations+ ( -- * Creating a Request+ ListUserAssociations (..),+ newListUserAssociations,++ -- * Request Lenses+ listUserAssociations_filters,+ listUserAssociations_maxResults,+ listUserAssociations_nextToken,+ listUserAssociations_identityProvider,+ listUserAssociations_instanceId,++ -- * Destructuring the Response+ ListUserAssociationsResponse (..),+ newListUserAssociationsResponse,++ -- * Response Lenses+ listUserAssociationsResponse_instanceUserSummaries,+ listUserAssociationsResponse_nextToken,+ listUserAssociationsResponse_httpStatus,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LicenseManagerUserSubscriptions.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListUserAssociations' smart constructor.+data ListUserAssociations = ListUserAssociations'+ { -- | An array of structures that you can use to filter the results to those+ -- that match one or more sets of key-value pairs that you specify.+ filters :: Prelude.Maybe [Filter],+ -- | Maximum number of results to return in a single call.+ maxResults :: Prelude.Maybe Prelude.Int,+ -- | Token for the next set of results.+ nextToken :: Prelude.Maybe Prelude.Text,+ -- | An object that specifies details for the identity provider.+ identityProvider :: IdentityProvider,+ -- | The ID of the EC2 instance, which provides user-based subscriptions.+ instanceId :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListUserAssociations' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'filters', 'listUserAssociations_filters' - An array of structures that you can use to filter the results to those+-- that match one or more sets of key-value pairs that you specify.+--+-- 'maxResults', 'listUserAssociations_maxResults' - Maximum number of results to return in a single call.+--+-- 'nextToken', 'listUserAssociations_nextToken' - Token for the next set of results.+--+-- 'identityProvider', 'listUserAssociations_identityProvider' - An object that specifies details for the identity provider.+--+-- 'instanceId', 'listUserAssociations_instanceId' - The ID of the EC2 instance, which provides user-based subscriptions.+newListUserAssociations ::+ -- | 'identityProvider'+ IdentityProvider ->+ -- | 'instanceId'+ Prelude.Text ->+ ListUserAssociations+newListUserAssociations+ pIdentityProvider_+ pInstanceId_ =+ ListUserAssociations'+ { filters = Prelude.Nothing,+ maxResults = Prelude.Nothing,+ nextToken = Prelude.Nothing,+ identityProvider = pIdentityProvider_,+ instanceId = pInstanceId_+ }++-- | An array of structures that you can use to filter the results to those+-- that match one or more sets of key-value pairs that you specify.+listUserAssociations_filters :: Lens.Lens' ListUserAssociations (Prelude.Maybe [Filter])+listUserAssociations_filters = Lens.lens (\ListUserAssociations' {filters} -> filters) (\s@ListUserAssociations' {} a -> s {filters = a} :: ListUserAssociations) Prelude.. Lens.mapping Lens.coerced++-- | Maximum number of results to return in a single call.+listUserAssociations_maxResults :: Lens.Lens' ListUserAssociations (Prelude.Maybe Prelude.Int)+listUserAssociations_maxResults = Lens.lens (\ListUserAssociations' {maxResults} -> maxResults) (\s@ListUserAssociations' {} a -> s {maxResults = a} :: ListUserAssociations)++-- | Token for the next set of results.+listUserAssociations_nextToken :: Lens.Lens' ListUserAssociations (Prelude.Maybe Prelude.Text)+listUserAssociations_nextToken = Lens.lens (\ListUserAssociations' {nextToken} -> nextToken) (\s@ListUserAssociations' {} a -> s {nextToken = a} :: ListUserAssociations)++-- | An object that specifies details for the identity provider.+listUserAssociations_identityProvider :: Lens.Lens' ListUserAssociations IdentityProvider+listUserAssociations_identityProvider = Lens.lens (\ListUserAssociations' {identityProvider} -> identityProvider) (\s@ListUserAssociations' {} a -> s {identityProvider = a} :: ListUserAssociations)++-- | The ID of the EC2 instance, which provides user-based subscriptions.+listUserAssociations_instanceId :: Lens.Lens' ListUserAssociations Prelude.Text+listUserAssociations_instanceId = Lens.lens (\ListUserAssociations' {instanceId} -> instanceId) (\s@ListUserAssociations' {} a -> s {instanceId = a} :: ListUserAssociations)++instance Core.AWSPager ListUserAssociations where+ page rq rs+ | Core.stop+ ( rs+ Lens.^? listUserAssociationsResponse_nextToken+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Core.stop+ ( rs+ Lens.^? listUserAssociationsResponse_instanceUserSummaries+ Prelude.. Lens._Just+ ) =+ Prelude.Nothing+ | Prelude.otherwise =+ Prelude.Just+ Prelude.$ rq+ Prelude.& listUserAssociations_nextToken+ Lens..~ rs+ Lens.^? listUserAssociationsResponse_nextToken+ Prelude.. Lens._Just++instance Core.AWSRequest ListUserAssociations where+ type+ AWSResponse ListUserAssociations =+ ListUserAssociationsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ ListUserAssociationsResponse'+ Prelude.<$> ( x+ Data..?> "InstanceUserSummaries"+ Core..!@ Prelude.mempty+ )+ Prelude.<*> (x Data..?> "NextToken")+ Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+ )++instance Prelude.Hashable ListUserAssociations where+ hashWithSalt _salt ListUserAssociations' {..} =+ _salt+ `Prelude.hashWithSalt` filters+ `Prelude.hashWithSalt` maxResults+ `Prelude.hashWithSalt` nextToken+ `Prelude.hashWithSalt` identityProvider+ `Prelude.hashWithSalt` instanceId++instance Prelude.NFData ListUserAssociations where+ rnf ListUserAssociations' {..} =+ Prelude.rnf filters+ `Prelude.seq` Prelude.rnf maxResults+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf identityProvider+ `Prelude.seq` Prelude.rnf instanceId++instance Data.ToHeaders ListUserAssociations where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON ListUserAssociations where+ toJSON ListUserAssociations' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("Filters" Data..=) Prelude.<$> filters,+ ("MaxResults" Data..=) Prelude.<$> maxResults,+ ("NextToken" Data..=) Prelude.<$> nextToken,+ Prelude.Just+ ("IdentityProvider" Data..= identityProvider),+ Prelude.Just ("InstanceId" Data..= instanceId)+ ]+ )++instance Data.ToPath ListUserAssociations where+ toPath = Prelude.const "/user/ListUserAssociations"++instance Data.ToQuery ListUserAssociations where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newListUserAssociationsResponse' smart constructor.+data ListUserAssociationsResponse = ListUserAssociationsResponse'+ { -- | Metadata that describes the list user association operation.+ instanceUserSummaries :: Prelude.Maybe [InstanceUserSummary],+ -- | Token for the next set of results.+ 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 'ListUserAssociationsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'instanceUserSummaries', 'listUserAssociationsResponse_instanceUserSummaries' - Metadata that describes the list user association operation.+--+-- 'nextToken', 'listUserAssociationsResponse_nextToken' - Token for the next set of results.+--+-- 'httpStatus', 'listUserAssociationsResponse_httpStatus' - The response's http status code.+newListUserAssociationsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ ListUserAssociationsResponse+newListUserAssociationsResponse pHttpStatus_ =+ ListUserAssociationsResponse'+ { instanceUserSummaries =+ Prelude.Nothing,+ nextToken = Prelude.Nothing,+ httpStatus = pHttpStatus_+ }++-- | Metadata that describes the list user association operation.+listUserAssociationsResponse_instanceUserSummaries :: Lens.Lens' ListUserAssociationsResponse (Prelude.Maybe [InstanceUserSummary])+listUserAssociationsResponse_instanceUserSummaries = Lens.lens (\ListUserAssociationsResponse' {instanceUserSummaries} -> instanceUserSummaries) (\s@ListUserAssociationsResponse' {} a -> s {instanceUserSummaries = a} :: ListUserAssociationsResponse) Prelude.. Lens.mapping Lens.coerced++-- | Token for the next set of results.+listUserAssociationsResponse_nextToken :: Lens.Lens' ListUserAssociationsResponse (Prelude.Maybe Prelude.Text)+listUserAssociationsResponse_nextToken = Lens.lens (\ListUserAssociationsResponse' {nextToken} -> nextToken) (\s@ListUserAssociationsResponse' {} a -> s {nextToken = a} :: ListUserAssociationsResponse)++-- | The response's http status code.+listUserAssociationsResponse_httpStatus :: Lens.Lens' ListUserAssociationsResponse Prelude.Int+listUserAssociationsResponse_httpStatus = Lens.lens (\ListUserAssociationsResponse' {httpStatus} -> httpStatus) (\s@ListUserAssociationsResponse' {} a -> s {httpStatus = a} :: ListUserAssociationsResponse)++instance Prelude.NFData ListUserAssociationsResponse where+ rnf ListUserAssociationsResponse' {..} =+ Prelude.rnf instanceUserSummaries+ `Prelude.seq` Prelude.rnf nextToken+ `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/LicenseManagerUserSubscriptions/RegisterIdentityProvider.hs view
@@ -0,0 +1,214 @@+{-# 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.LicenseManagerUserSubscriptions.RegisterIdentityProvider+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Registers an identity provider for user-based subscriptions.+module Amazonka.LicenseManagerUserSubscriptions.RegisterIdentityProvider+ ( -- * Creating a Request+ RegisterIdentityProvider (..),+ newRegisterIdentityProvider,++ -- * Request Lenses+ registerIdentityProvider_settings,+ registerIdentityProvider_identityProvider,+ registerIdentityProvider_product,++ -- * Destructuring the Response+ RegisterIdentityProviderResponse (..),+ newRegisterIdentityProviderResponse,++ -- * Response Lenses+ registerIdentityProviderResponse_httpStatus,+ registerIdentityProviderResponse_identityProviderSummary,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LicenseManagerUserSubscriptions.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newRegisterIdentityProvider' smart constructor.+data RegisterIdentityProvider = RegisterIdentityProvider'+ { -- | The registered identity provider’s product related configuration+ -- settings such as the subnets to provision VPC endpoints.+ settings :: Prelude.Maybe Settings,+ -- | An object that specifies details for the identity provider.+ identityProvider :: IdentityProvider,+ -- | The name of the user-based subscription product.+ product :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RegisterIdentityProvider' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'settings', 'registerIdentityProvider_settings' - The registered identity provider’s product related configuration+-- settings such as the subnets to provision VPC endpoints.+--+-- 'identityProvider', 'registerIdentityProvider_identityProvider' - An object that specifies details for the identity provider.+--+-- 'product', 'registerIdentityProvider_product' - The name of the user-based subscription product.+newRegisterIdentityProvider ::+ -- | 'identityProvider'+ IdentityProvider ->+ -- | 'product'+ Prelude.Text ->+ RegisterIdentityProvider+newRegisterIdentityProvider+ pIdentityProvider_+ pProduct_ =+ RegisterIdentityProvider'+ { settings =+ Prelude.Nothing,+ identityProvider = pIdentityProvider_,+ product = pProduct_+ }++-- | The registered identity provider’s product related configuration+-- settings such as the subnets to provision VPC endpoints.+registerIdentityProvider_settings :: Lens.Lens' RegisterIdentityProvider (Prelude.Maybe Settings)+registerIdentityProvider_settings = Lens.lens (\RegisterIdentityProvider' {settings} -> settings) (\s@RegisterIdentityProvider' {} a -> s {settings = a} :: RegisterIdentityProvider)++-- | An object that specifies details for the identity provider.+registerIdentityProvider_identityProvider :: Lens.Lens' RegisterIdentityProvider IdentityProvider+registerIdentityProvider_identityProvider = Lens.lens (\RegisterIdentityProvider' {identityProvider} -> identityProvider) (\s@RegisterIdentityProvider' {} a -> s {identityProvider = a} :: RegisterIdentityProvider)++-- | The name of the user-based subscription product.+registerIdentityProvider_product :: Lens.Lens' RegisterIdentityProvider Prelude.Text+registerIdentityProvider_product = Lens.lens (\RegisterIdentityProvider' {product} -> product) (\s@RegisterIdentityProvider' {} a -> s {product = a} :: RegisterIdentityProvider)++instance Core.AWSRequest RegisterIdentityProvider where+ type+ AWSResponse RegisterIdentityProvider =+ RegisterIdentityProviderResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ RegisterIdentityProviderResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..:> "IdentityProviderSummary")+ )++instance Prelude.Hashable RegisterIdentityProvider where+ hashWithSalt _salt RegisterIdentityProvider' {..} =+ _salt+ `Prelude.hashWithSalt` settings+ `Prelude.hashWithSalt` identityProvider+ `Prelude.hashWithSalt` product++instance Prelude.NFData RegisterIdentityProvider where+ rnf RegisterIdentityProvider' {..} =+ Prelude.rnf settings+ `Prelude.seq` Prelude.rnf identityProvider+ `Prelude.seq` Prelude.rnf product++instance Data.ToHeaders RegisterIdentityProvider where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON RegisterIdentityProvider where+ toJSON RegisterIdentityProvider' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("Settings" Data..=) Prelude.<$> settings,+ Prelude.Just+ ("IdentityProvider" Data..= identityProvider),+ Prelude.Just ("Product" Data..= product)+ ]+ )++instance Data.ToPath RegisterIdentityProvider where+ toPath =+ Prelude.const+ "/identity-provider/RegisterIdentityProvider"++instance Data.ToQuery RegisterIdentityProvider where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newRegisterIdentityProviderResponse' smart constructor.+data RegisterIdentityProviderResponse = RegisterIdentityProviderResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | Metadata that describes the results of an identity provider operation.+ identityProviderSummary :: IdentityProviderSummary+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'RegisterIdentityProviderResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'registerIdentityProviderResponse_httpStatus' - The response's http status code.+--+-- 'identityProviderSummary', 'registerIdentityProviderResponse_identityProviderSummary' - Metadata that describes the results of an identity provider operation.+newRegisterIdentityProviderResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'identityProviderSummary'+ IdentityProviderSummary ->+ RegisterIdentityProviderResponse+newRegisterIdentityProviderResponse+ pHttpStatus_+ pIdentityProviderSummary_ =+ RegisterIdentityProviderResponse'+ { httpStatus =+ pHttpStatus_,+ identityProviderSummary =+ pIdentityProviderSummary_+ }++-- | The response's http status code.+registerIdentityProviderResponse_httpStatus :: Lens.Lens' RegisterIdentityProviderResponse Prelude.Int+registerIdentityProviderResponse_httpStatus = Lens.lens (\RegisterIdentityProviderResponse' {httpStatus} -> httpStatus) (\s@RegisterIdentityProviderResponse' {} a -> s {httpStatus = a} :: RegisterIdentityProviderResponse)++-- | Metadata that describes the results of an identity provider operation.+registerIdentityProviderResponse_identityProviderSummary :: Lens.Lens' RegisterIdentityProviderResponse IdentityProviderSummary+registerIdentityProviderResponse_identityProviderSummary = Lens.lens (\RegisterIdentityProviderResponse' {identityProviderSummary} -> identityProviderSummary) (\s@RegisterIdentityProviderResponse' {} a -> s {identityProviderSummary = a} :: RegisterIdentityProviderResponse)++instance+ Prelude.NFData+ RegisterIdentityProviderResponse+ where+ rnf RegisterIdentityProviderResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf identityProviderSummary
+ gen/Amazonka/LicenseManagerUserSubscriptions/StartProductSubscription.hs view
@@ -0,0 +1,232 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LicenseManagerUserSubscriptions.StartProductSubscription+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Starts a product subscription for a user with the specified identity+-- provider.+--+-- Your estimated bill for charges on the number of users and related costs+-- will take 48 hours to appear for billing periods that haven\'t closed+-- (marked as __Pending__ billing status) in Amazon Web Services Billing.+-- For more information, see+-- <https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/invoice.html Viewing your monthly charges>+-- in the /Amazon Web Services Billing User Guide/.+module Amazonka.LicenseManagerUserSubscriptions.StartProductSubscription+ ( -- * Creating a Request+ StartProductSubscription (..),+ newStartProductSubscription,++ -- * Request Lenses+ startProductSubscription_domain,+ startProductSubscription_identityProvider,+ startProductSubscription_product,+ startProductSubscription_username,++ -- * Destructuring the Response+ StartProductSubscriptionResponse (..),+ newStartProductSubscriptionResponse,++ -- * Response Lenses+ startProductSubscriptionResponse_httpStatus,+ startProductSubscriptionResponse_productUserSummary,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LicenseManagerUserSubscriptions.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newStartProductSubscription' smart constructor.+data StartProductSubscription = StartProductSubscription'+ { -- | The domain name of the user.+ domain :: Prelude.Maybe Prelude.Text,+ -- | An object that specifies details for the identity provider.+ identityProvider :: IdentityProvider,+ -- | The name of the user-based subscription product.+ product :: Prelude.Text,+ -- | The user name from the identity provider of the user.+ username :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'StartProductSubscription' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domain', 'startProductSubscription_domain' - The domain name of the user.+--+-- 'identityProvider', 'startProductSubscription_identityProvider' - An object that specifies details for the identity provider.+--+-- 'product', 'startProductSubscription_product' - The name of the user-based subscription product.+--+-- 'username', 'startProductSubscription_username' - The user name from the identity provider of the user.+newStartProductSubscription ::+ -- | 'identityProvider'+ IdentityProvider ->+ -- | 'product'+ Prelude.Text ->+ -- | 'username'+ Prelude.Text ->+ StartProductSubscription+newStartProductSubscription+ pIdentityProvider_+ pProduct_+ pUsername_ =+ StartProductSubscription'+ { domain = Prelude.Nothing,+ identityProvider = pIdentityProvider_,+ product = pProduct_,+ username = pUsername_+ }++-- | The domain name of the user.+startProductSubscription_domain :: Lens.Lens' StartProductSubscription (Prelude.Maybe Prelude.Text)+startProductSubscription_domain = Lens.lens (\StartProductSubscription' {domain} -> domain) (\s@StartProductSubscription' {} a -> s {domain = a} :: StartProductSubscription)++-- | An object that specifies details for the identity provider.+startProductSubscription_identityProvider :: Lens.Lens' StartProductSubscription IdentityProvider+startProductSubscription_identityProvider = Lens.lens (\StartProductSubscription' {identityProvider} -> identityProvider) (\s@StartProductSubscription' {} a -> s {identityProvider = a} :: StartProductSubscription)++-- | The name of the user-based subscription product.+startProductSubscription_product :: Lens.Lens' StartProductSubscription Prelude.Text+startProductSubscription_product = Lens.lens (\StartProductSubscription' {product} -> product) (\s@StartProductSubscription' {} a -> s {product = a} :: StartProductSubscription)++-- | The user name from the identity provider of the user.+startProductSubscription_username :: Lens.Lens' StartProductSubscription Prelude.Text+startProductSubscription_username = Lens.lens (\StartProductSubscription' {username} -> username) (\s@StartProductSubscription' {} a -> s {username = a} :: StartProductSubscription)++instance Core.AWSRequest StartProductSubscription where+ type+ AWSResponse StartProductSubscription =+ StartProductSubscriptionResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ StartProductSubscriptionResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..:> "ProductUserSummary")+ )++instance Prelude.Hashable StartProductSubscription where+ hashWithSalt _salt StartProductSubscription' {..} =+ _salt+ `Prelude.hashWithSalt` domain+ `Prelude.hashWithSalt` identityProvider+ `Prelude.hashWithSalt` product+ `Prelude.hashWithSalt` username++instance Prelude.NFData StartProductSubscription where+ rnf StartProductSubscription' {..} =+ Prelude.rnf domain+ `Prelude.seq` Prelude.rnf identityProvider+ `Prelude.seq` Prelude.rnf product+ `Prelude.seq` Prelude.rnf username++instance Data.ToHeaders StartProductSubscription where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON StartProductSubscription where+ toJSON StartProductSubscription' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("Domain" Data..=) Prelude.<$> domain,+ Prelude.Just+ ("IdentityProvider" Data..= identityProvider),+ Prelude.Just ("Product" Data..= product),+ Prelude.Just ("Username" Data..= username)+ ]+ )++instance Data.ToPath StartProductSubscription where+ toPath =+ Prelude.const "/user/StartProductSubscription"++instance Data.ToQuery StartProductSubscription where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newStartProductSubscriptionResponse' smart constructor.+data StartProductSubscriptionResponse = StartProductSubscriptionResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | Metadata that describes the start product subscription operation.+ productUserSummary :: ProductUserSummary+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'StartProductSubscriptionResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'startProductSubscriptionResponse_httpStatus' - The response's http status code.+--+-- 'productUserSummary', 'startProductSubscriptionResponse_productUserSummary' - Metadata that describes the start product subscription operation.+newStartProductSubscriptionResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'productUserSummary'+ ProductUserSummary ->+ StartProductSubscriptionResponse+newStartProductSubscriptionResponse+ pHttpStatus_+ pProductUserSummary_ =+ StartProductSubscriptionResponse'+ { httpStatus =+ pHttpStatus_,+ productUserSummary = pProductUserSummary_+ }++-- | The response's http status code.+startProductSubscriptionResponse_httpStatus :: Lens.Lens' StartProductSubscriptionResponse Prelude.Int+startProductSubscriptionResponse_httpStatus = Lens.lens (\StartProductSubscriptionResponse' {httpStatus} -> httpStatus) (\s@StartProductSubscriptionResponse' {} a -> s {httpStatus = a} :: StartProductSubscriptionResponse)++-- | Metadata that describes the start product subscription operation.+startProductSubscriptionResponse_productUserSummary :: Lens.Lens' StartProductSubscriptionResponse ProductUserSummary+startProductSubscriptionResponse_productUserSummary = Lens.lens (\StartProductSubscriptionResponse' {productUserSummary} -> productUserSummary) (\s@StartProductSubscriptionResponse' {} a -> s {productUserSummary = a} :: StartProductSubscriptionResponse)++instance+ Prelude.NFData+ StartProductSubscriptionResponse+ where+ rnf StartProductSubscriptionResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf productUserSummary
+ gen/Amazonka/LicenseManagerUserSubscriptions/StopProductSubscription.hs view
@@ -0,0 +1,225 @@+{-# 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.LicenseManagerUserSubscriptions.StopProductSubscription+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Stops a product subscription for a user with the specified identity+-- provider.+module Amazonka.LicenseManagerUserSubscriptions.StopProductSubscription+ ( -- * Creating a Request+ StopProductSubscription (..),+ newStopProductSubscription,++ -- * Request Lenses+ stopProductSubscription_domain,+ stopProductSubscription_identityProvider,+ stopProductSubscription_product,+ stopProductSubscription_username,++ -- * Destructuring the Response+ StopProductSubscriptionResponse (..),+ newStopProductSubscriptionResponse,++ -- * Response Lenses+ stopProductSubscriptionResponse_httpStatus,+ stopProductSubscriptionResponse_productUserSummary,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LicenseManagerUserSubscriptions.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newStopProductSubscription' smart constructor.+data StopProductSubscription = StopProductSubscription'+ { -- | The domain name of the user.+ domain :: Prelude.Maybe Prelude.Text,+ -- | An object that specifies details for the identity provider.+ identityProvider :: IdentityProvider,+ -- | The name of the user-based subscription product.+ product :: Prelude.Text,+ -- | The user name from the identity provider for the user.+ username :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'StopProductSubscription' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domain', 'stopProductSubscription_domain' - The domain name of the user.+--+-- 'identityProvider', 'stopProductSubscription_identityProvider' - An object that specifies details for the identity provider.+--+-- 'product', 'stopProductSubscription_product' - The name of the user-based subscription product.+--+-- 'username', 'stopProductSubscription_username' - The user name from the identity provider for the user.+newStopProductSubscription ::+ -- | 'identityProvider'+ IdentityProvider ->+ -- | 'product'+ Prelude.Text ->+ -- | 'username'+ Prelude.Text ->+ StopProductSubscription+newStopProductSubscription+ pIdentityProvider_+ pProduct_+ pUsername_ =+ StopProductSubscription'+ { domain = Prelude.Nothing,+ identityProvider = pIdentityProvider_,+ product = pProduct_,+ username = pUsername_+ }++-- | The domain name of the user.+stopProductSubscription_domain :: Lens.Lens' StopProductSubscription (Prelude.Maybe Prelude.Text)+stopProductSubscription_domain = Lens.lens (\StopProductSubscription' {domain} -> domain) (\s@StopProductSubscription' {} a -> s {domain = a} :: StopProductSubscription)++-- | An object that specifies details for the identity provider.+stopProductSubscription_identityProvider :: Lens.Lens' StopProductSubscription IdentityProvider+stopProductSubscription_identityProvider = Lens.lens (\StopProductSubscription' {identityProvider} -> identityProvider) (\s@StopProductSubscription' {} a -> s {identityProvider = a} :: StopProductSubscription)++-- | The name of the user-based subscription product.+stopProductSubscription_product :: Lens.Lens' StopProductSubscription Prelude.Text+stopProductSubscription_product = Lens.lens (\StopProductSubscription' {product} -> product) (\s@StopProductSubscription' {} a -> s {product = a} :: StopProductSubscription)++-- | The user name from the identity provider for the user.+stopProductSubscription_username :: Lens.Lens' StopProductSubscription Prelude.Text+stopProductSubscription_username = Lens.lens (\StopProductSubscription' {username} -> username) (\s@StopProductSubscription' {} a -> s {username = a} :: StopProductSubscription)++instance Core.AWSRequest StopProductSubscription where+ type+ AWSResponse StopProductSubscription =+ StopProductSubscriptionResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ StopProductSubscriptionResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..:> "ProductUserSummary")+ )++instance Prelude.Hashable StopProductSubscription where+ hashWithSalt _salt StopProductSubscription' {..} =+ _salt+ `Prelude.hashWithSalt` domain+ `Prelude.hashWithSalt` identityProvider+ `Prelude.hashWithSalt` product+ `Prelude.hashWithSalt` username++instance Prelude.NFData StopProductSubscription where+ rnf StopProductSubscription' {..} =+ Prelude.rnf domain+ `Prelude.seq` Prelude.rnf identityProvider+ `Prelude.seq` Prelude.rnf product+ `Prelude.seq` Prelude.rnf username++instance Data.ToHeaders StopProductSubscription where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON StopProductSubscription where+ toJSON StopProductSubscription' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("Domain" Data..=) Prelude.<$> domain,+ Prelude.Just+ ("IdentityProvider" Data..= identityProvider),+ Prelude.Just ("Product" Data..= product),+ Prelude.Just ("Username" Data..= username)+ ]+ )++instance Data.ToPath StopProductSubscription where+ toPath =+ Prelude.const "/user/StopProductSubscription"++instance Data.ToQuery StopProductSubscription where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newStopProductSubscriptionResponse' smart constructor.+data StopProductSubscriptionResponse = StopProductSubscriptionResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ -- | Metadata that describes the start product subscription operation.+ productUserSummary :: ProductUserSummary+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'StopProductSubscriptionResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'stopProductSubscriptionResponse_httpStatus' - The response's http status code.+--+-- 'productUserSummary', 'stopProductSubscriptionResponse_productUserSummary' - Metadata that describes the start product subscription operation.+newStopProductSubscriptionResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'productUserSummary'+ ProductUserSummary ->+ StopProductSubscriptionResponse+newStopProductSubscriptionResponse+ pHttpStatus_+ pProductUserSummary_ =+ StopProductSubscriptionResponse'+ { httpStatus =+ pHttpStatus_,+ productUserSummary = pProductUserSummary_+ }++-- | The response's http status code.+stopProductSubscriptionResponse_httpStatus :: Lens.Lens' StopProductSubscriptionResponse Prelude.Int+stopProductSubscriptionResponse_httpStatus = Lens.lens (\StopProductSubscriptionResponse' {httpStatus} -> httpStatus) (\s@StopProductSubscriptionResponse' {} a -> s {httpStatus = a} :: StopProductSubscriptionResponse)++-- | Metadata that describes the start product subscription operation.+stopProductSubscriptionResponse_productUserSummary :: Lens.Lens' StopProductSubscriptionResponse ProductUserSummary+stopProductSubscriptionResponse_productUserSummary = Lens.lens (\StopProductSubscriptionResponse' {productUserSummary} -> productUserSummary) (\s@StopProductSubscriptionResponse' {} a -> s {productUserSummary = a} :: StopProductSubscriptionResponse)++instance+ Prelude.NFData+ StopProductSubscriptionResponse+ where+ rnf StopProductSubscriptionResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf productUserSummary
+ gen/Amazonka/LicenseManagerUserSubscriptions/Types.hs view
@@ -0,0 +1,241 @@+{-# 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.LicenseManagerUserSubscriptions.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.LicenseManagerUserSubscriptions.Types+ ( -- * Service Configuration+ defaultService,++ -- * Errors+ _AccessDeniedException,+ _ConflictException,+ _InternalServerException,+ _ResourceNotFoundException,+ _ServiceQuotaExceededException,+ _ThrottlingException,+ _ValidationException,++ -- * ActiveDirectoryIdentityProvider+ ActiveDirectoryIdentityProvider (..),+ newActiveDirectoryIdentityProvider,+ activeDirectoryIdentityProvider_directoryId,++ -- * Filter+ Filter (..),+ newFilter,+ filter_attribute,+ filter_operation,+ filter_value,++ -- * IdentityProvider+ IdentityProvider (..),+ newIdentityProvider,+ identityProvider_activeDirectoryIdentityProvider,++ -- * IdentityProviderSummary+ IdentityProviderSummary (..),+ newIdentityProviderSummary,+ identityProviderSummary_failureMessage,+ identityProviderSummary_identityProvider,+ identityProviderSummary_product,+ identityProviderSummary_settings,+ identityProviderSummary_status,++ -- * InstanceSummary+ InstanceSummary (..),+ newInstanceSummary,+ instanceSummary_lastStatusCheckDate,+ instanceSummary_statusMessage,+ instanceSummary_instanceId,+ instanceSummary_products,+ instanceSummary_status,++ -- * InstanceUserSummary+ InstanceUserSummary (..),+ newInstanceUserSummary,+ instanceUserSummary_associationDate,+ instanceUserSummary_disassociationDate,+ instanceUserSummary_domain,+ instanceUserSummary_statusMessage,+ instanceUserSummary_identityProvider,+ instanceUserSummary_instanceId,+ instanceUserSummary_status,+ instanceUserSummary_username,++ -- * ProductUserSummary+ ProductUserSummary (..),+ newProductUserSummary,+ productUserSummary_domain,+ productUserSummary_statusMessage,+ productUserSummary_subscriptionEndDate,+ productUserSummary_subscriptionStartDate,+ productUserSummary_identityProvider,+ productUserSummary_product,+ productUserSummary_status,+ productUserSummary_username,++ -- * Settings+ Settings (..),+ newSettings,+ settings_securityGroupId,+ settings_subnets,++ -- * UpdateSettings+ UpdateSettings (..),+ newUpdateSettings,+ updateSettings_securityGroupId,+ updateSettings_addSubnets,+ updateSettings_removeSubnets,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import Amazonka.LicenseManagerUserSubscriptions.Types.ActiveDirectoryIdentityProvider+import Amazonka.LicenseManagerUserSubscriptions.Types.Filter+import Amazonka.LicenseManagerUserSubscriptions.Types.IdentityProvider+import Amazonka.LicenseManagerUserSubscriptions.Types.IdentityProviderSummary+import Amazonka.LicenseManagerUserSubscriptions.Types.InstanceSummary+import Amazonka.LicenseManagerUserSubscriptions.Types.InstanceUserSummary+import Amazonka.LicenseManagerUserSubscriptions.Types.ProductUserSummary+import Amazonka.LicenseManagerUserSubscriptions.Types.Settings+import Amazonka.LicenseManagerUserSubscriptions.Types.UpdateSettings+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Sign.V4 as Sign++-- | API version @2018-05-10@ of the Amazon License Manager User Subscriptions SDK configuration.+defaultService :: Core.Service+defaultService =+ Core.Service+ { Core.abbrev =+ "LicenseManagerUserSubscriptions",+ Core.signer = Sign.v4,+ Core.endpointPrefix =+ "license-manager-user-subscriptions",+ Core.signingName =+ "license-manager-user-subscriptions",+ 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+ "LicenseManagerUserSubscriptions",+ 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++-- | You don\'t have sufficient access to perform this action.+_AccessDeniedException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_AccessDeniedException =+ Core._MatchServiceError+ defaultService+ "AccessDeniedException"++-- | The request couldn\'t be completed because it conflicted with the+-- current state of the resource.+_ConflictException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ConflictException =+ Core._MatchServiceError+ defaultService+ "ConflictException"++-- | An exception occurred with the service.+_InternalServerException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InternalServerException =+ Core._MatchServiceError+ defaultService+ "InternalServerException"++-- | The resource couldn\'t be found.+_ResourceNotFoundException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ResourceNotFoundException =+ Core._MatchServiceError+ defaultService+ "ResourceNotFoundException"+ Prelude.. Core.hasStatus 404++-- | The request failed because a service quota is exceeded.+_ServiceQuotaExceededException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ServiceQuotaExceededException =+ Core._MatchServiceError+ defaultService+ "ServiceQuotaExceededException"++-- | The request was denied because of request throttling. Retry the request.+_ThrottlingException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ThrottlingException =+ Core._MatchServiceError+ defaultService+ "ThrottlingException"++-- | A parameter is not valid.+_ValidationException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ValidationException =+ Core._MatchServiceError+ defaultService+ "ValidationException"
+ gen/Amazonka/LicenseManagerUserSubscriptions/Types/ActiveDirectoryIdentityProvider.hs view
@@ -0,0 +1,90 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LicenseManagerUserSubscriptions.Types.ActiveDirectoryIdentityProvider+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LicenseManagerUserSubscriptions.Types.ActiveDirectoryIdentityProvider where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Details about an Active Directory identity provider.+--+-- /See:/ 'newActiveDirectoryIdentityProvider' smart constructor.+data ActiveDirectoryIdentityProvider = ActiveDirectoryIdentityProvider'+ { -- | The directory ID for an Active Directory identity provider.+ directoryId :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ActiveDirectoryIdentityProvider' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'directoryId', 'activeDirectoryIdentityProvider_directoryId' - The directory ID for an Active Directory identity provider.+newActiveDirectoryIdentityProvider ::+ ActiveDirectoryIdentityProvider+newActiveDirectoryIdentityProvider =+ ActiveDirectoryIdentityProvider'+ { directoryId =+ Prelude.Nothing+ }++-- | The directory ID for an Active Directory identity provider.+activeDirectoryIdentityProvider_directoryId :: Lens.Lens' ActiveDirectoryIdentityProvider (Prelude.Maybe Prelude.Text)+activeDirectoryIdentityProvider_directoryId = Lens.lens (\ActiveDirectoryIdentityProvider' {directoryId} -> directoryId) (\s@ActiveDirectoryIdentityProvider' {} a -> s {directoryId = a} :: ActiveDirectoryIdentityProvider)++instance+ Data.FromJSON+ ActiveDirectoryIdentityProvider+ where+ parseJSON =+ Data.withObject+ "ActiveDirectoryIdentityProvider"+ ( \x ->+ ActiveDirectoryIdentityProvider'+ Prelude.<$> (x Data..:? "DirectoryId")+ )++instance+ Prelude.Hashable+ ActiveDirectoryIdentityProvider+ where+ hashWithSalt+ _salt+ ActiveDirectoryIdentityProvider' {..} =+ _salt `Prelude.hashWithSalt` directoryId++instance+ Prelude.NFData+ ActiveDirectoryIdentityProvider+ where+ rnf ActiveDirectoryIdentityProvider' {..} =+ Prelude.rnf directoryId++instance Data.ToJSON ActiveDirectoryIdentityProvider where+ toJSON ActiveDirectoryIdentityProvider' {..} =+ Data.object+ ( Prelude.catMaybes+ [("DirectoryId" Data..=) Prelude.<$> directoryId]+ )
+ gen/Amazonka/LicenseManagerUserSubscriptions/Types/Filter.hs view
@@ -0,0 +1,97 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LicenseManagerUserSubscriptions.Types.Filter+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LicenseManagerUserSubscriptions.Types.Filter where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | A filter name and value pair that is used to return more specific+-- results from a describe operation. Filters can be used to match a set of+-- resources by specific criteria, such as tags, attributes, or IDs.+--+-- /See:/ 'newFilter' smart constructor.+data Filter = Filter'+ { -- | The name of an attribute to use as a filter.+ attribute :: Prelude.Maybe Prelude.Text,+ -- | The type of search (For example, eq, geq, leq)+ operation :: Prelude.Maybe Prelude.Text,+ -- | Value of the filter.+ value :: Prelude.Maybe Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Filter' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'attribute', 'filter_attribute' - The name of an attribute to use as a filter.+--+-- 'operation', 'filter_operation' - The type of search (For example, eq, geq, leq)+--+-- 'value', 'filter_value' - Value of the filter.+newFilter ::+ Filter+newFilter =+ Filter'+ { attribute = Prelude.Nothing,+ operation = Prelude.Nothing,+ value = Prelude.Nothing+ }++-- | The name of an attribute to use as a filter.+filter_attribute :: Lens.Lens' Filter (Prelude.Maybe Prelude.Text)+filter_attribute = Lens.lens (\Filter' {attribute} -> attribute) (\s@Filter' {} a -> s {attribute = a} :: Filter)++-- | The type of search (For example, eq, geq, leq)+filter_operation :: Lens.Lens' Filter (Prelude.Maybe Prelude.Text)+filter_operation = Lens.lens (\Filter' {operation} -> operation) (\s@Filter' {} a -> s {operation = a} :: Filter)++-- | Value of the filter.+filter_value :: Lens.Lens' Filter (Prelude.Maybe Prelude.Text)+filter_value = Lens.lens (\Filter' {value} -> value) (\s@Filter' {} a -> s {value = a} :: Filter)++instance Prelude.Hashable Filter where+ hashWithSalt _salt Filter' {..} =+ _salt+ `Prelude.hashWithSalt` attribute+ `Prelude.hashWithSalt` operation+ `Prelude.hashWithSalt` value++instance Prelude.NFData Filter where+ rnf Filter' {..} =+ Prelude.rnf attribute+ `Prelude.seq` Prelude.rnf operation+ `Prelude.seq` Prelude.rnf value++instance Data.ToJSON Filter where+ toJSON Filter' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("Attribute" Data..=) Prelude.<$> attribute,+ ("Operation" Data..=) Prelude.<$> operation,+ ("Value" Data..=) Prelude.<$> value+ ]+ )
+ gen/Amazonka/LicenseManagerUserSubscriptions/Types/IdentityProvider.hs view
@@ -0,0 +1,83 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LicenseManagerUserSubscriptions.Types.IdentityProvider+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LicenseManagerUserSubscriptions.Types.IdentityProvider where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LicenseManagerUserSubscriptions.Types.ActiveDirectoryIdentityProvider+import qualified Amazonka.Prelude as Prelude++-- | Details about an identity provider.+--+-- /See:/ 'newIdentityProvider' smart constructor.+data IdentityProvider = IdentityProvider'+ { -- | An object that details an Active Directory identity provider.+ activeDirectoryIdentityProvider :: Prelude.Maybe ActiveDirectoryIdentityProvider+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'IdentityProvider' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'activeDirectoryIdentityProvider', 'identityProvider_activeDirectoryIdentityProvider' - An object that details an Active Directory identity provider.+newIdentityProvider ::+ IdentityProvider+newIdentityProvider =+ IdentityProvider'+ { activeDirectoryIdentityProvider =+ Prelude.Nothing+ }++-- | An object that details an Active Directory identity provider.+identityProvider_activeDirectoryIdentityProvider :: Lens.Lens' IdentityProvider (Prelude.Maybe ActiveDirectoryIdentityProvider)+identityProvider_activeDirectoryIdentityProvider = Lens.lens (\IdentityProvider' {activeDirectoryIdentityProvider} -> activeDirectoryIdentityProvider) (\s@IdentityProvider' {} a -> s {activeDirectoryIdentityProvider = a} :: IdentityProvider)++instance Data.FromJSON IdentityProvider where+ parseJSON =+ Data.withObject+ "IdentityProvider"+ ( \x ->+ IdentityProvider'+ Prelude.<$> (x Data..:? "ActiveDirectoryIdentityProvider")+ )++instance Prelude.Hashable IdentityProvider where+ hashWithSalt _salt IdentityProvider' {..} =+ _salt+ `Prelude.hashWithSalt` activeDirectoryIdentityProvider++instance Prelude.NFData IdentityProvider where+ rnf IdentityProvider' {..} =+ Prelude.rnf activeDirectoryIdentityProvider++instance Data.ToJSON IdentityProvider where+ toJSON IdentityProvider' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("ActiveDirectoryIdentityProvider" Data..=)+ Prelude.<$> activeDirectoryIdentityProvider+ ]+ )
+ gen/Amazonka/LicenseManagerUserSubscriptions/Types/IdentityProviderSummary.hs view
@@ -0,0 +1,141 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LicenseManagerUserSubscriptions.Types.IdentityProviderSummary+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LicenseManagerUserSubscriptions.Types.IdentityProviderSummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LicenseManagerUserSubscriptions.Types.IdentityProvider+import Amazonka.LicenseManagerUserSubscriptions.Types.Settings+import qualified Amazonka.Prelude as Prelude++-- | Describes an identity provider.+--+-- /See:/ 'newIdentityProviderSummary' smart constructor.+data IdentityProviderSummary = IdentityProviderSummary'+ { -- | The failure message associated with an identity provider.+ failureMessage :: Prelude.Maybe Prelude.Text,+ -- | An object that specifies details for the identity provider.+ identityProvider :: IdentityProvider,+ -- | The name of the user-based subscription product.+ product :: Prelude.Text,+ -- | An object that details the registered identity provider’s product+ -- related configuration settings such as the subnets to provision VPC+ -- endpoints.+ settings :: Settings,+ -- | The status of an identity provider.+ status :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'IdentityProviderSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'failureMessage', 'identityProviderSummary_failureMessage' - The failure message associated with an identity provider.+--+-- 'identityProvider', 'identityProviderSummary_identityProvider' - An object that specifies details for the identity provider.+--+-- 'product', 'identityProviderSummary_product' - The name of the user-based subscription product.+--+-- 'settings', 'identityProviderSummary_settings' - An object that details the registered identity provider’s product+-- related configuration settings such as the subnets to provision VPC+-- endpoints.+--+-- 'status', 'identityProviderSummary_status' - The status of an identity provider.+newIdentityProviderSummary ::+ -- | 'identityProvider'+ IdentityProvider ->+ -- | 'product'+ Prelude.Text ->+ -- | 'settings'+ Settings ->+ -- | 'status'+ Prelude.Text ->+ IdentityProviderSummary+newIdentityProviderSummary+ pIdentityProvider_+ pProduct_+ pSettings_+ pStatus_ =+ IdentityProviderSummary'+ { failureMessage =+ Prelude.Nothing,+ identityProvider = pIdentityProvider_,+ product = pProduct_,+ settings = pSettings_,+ status = pStatus_+ }++-- | The failure message associated with an identity provider.+identityProviderSummary_failureMessage :: Lens.Lens' IdentityProviderSummary (Prelude.Maybe Prelude.Text)+identityProviderSummary_failureMessage = Lens.lens (\IdentityProviderSummary' {failureMessage} -> failureMessage) (\s@IdentityProviderSummary' {} a -> s {failureMessage = a} :: IdentityProviderSummary)++-- | An object that specifies details for the identity provider.+identityProviderSummary_identityProvider :: Lens.Lens' IdentityProviderSummary IdentityProvider+identityProviderSummary_identityProvider = Lens.lens (\IdentityProviderSummary' {identityProvider} -> identityProvider) (\s@IdentityProviderSummary' {} a -> s {identityProvider = a} :: IdentityProviderSummary)++-- | The name of the user-based subscription product.+identityProviderSummary_product :: Lens.Lens' IdentityProviderSummary Prelude.Text+identityProviderSummary_product = Lens.lens (\IdentityProviderSummary' {product} -> product) (\s@IdentityProviderSummary' {} a -> s {product = a} :: IdentityProviderSummary)++-- | An object that details the registered identity provider’s product+-- related configuration settings such as the subnets to provision VPC+-- endpoints.+identityProviderSummary_settings :: Lens.Lens' IdentityProviderSummary Settings+identityProviderSummary_settings = Lens.lens (\IdentityProviderSummary' {settings} -> settings) (\s@IdentityProviderSummary' {} a -> s {settings = a} :: IdentityProviderSummary)++-- | The status of an identity provider.+identityProviderSummary_status :: Lens.Lens' IdentityProviderSummary Prelude.Text+identityProviderSummary_status = Lens.lens (\IdentityProviderSummary' {status} -> status) (\s@IdentityProviderSummary' {} a -> s {status = a} :: IdentityProviderSummary)++instance Data.FromJSON IdentityProviderSummary where+ parseJSON =+ Data.withObject+ "IdentityProviderSummary"+ ( \x ->+ IdentityProviderSummary'+ Prelude.<$> (x Data..:? "FailureMessage")+ Prelude.<*> (x Data..: "IdentityProvider")+ Prelude.<*> (x Data..: "Product")+ Prelude.<*> (x Data..: "Settings")+ Prelude.<*> (x Data..: "Status")+ )++instance Prelude.Hashable IdentityProviderSummary where+ hashWithSalt _salt IdentityProviderSummary' {..} =+ _salt+ `Prelude.hashWithSalt` failureMessage+ `Prelude.hashWithSalt` identityProvider+ `Prelude.hashWithSalt` product+ `Prelude.hashWithSalt` settings+ `Prelude.hashWithSalt` status++instance Prelude.NFData IdentityProviderSummary where+ rnf IdentityProviderSummary' {..} =+ Prelude.rnf failureMessage+ `Prelude.seq` Prelude.rnf identityProvider+ `Prelude.seq` Prelude.rnf product+ `Prelude.seq` Prelude.rnf settings+ `Prelude.seq` Prelude.rnf status
+ gen/Amazonka/LicenseManagerUserSubscriptions/Types/InstanceSummary.hs view
@@ -0,0 +1,125 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LicenseManagerUserSubscriptions.Types.InstanceSummary+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LicenseManagerUserSubscriptions.Types.InstanceSummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Describes an EC2 instance providing user-based subscriptions.+--+-- /See:/ 'newInstanceSummary' smart constructor.+data InstanceSummary = InstanceSummary'+ { -- | The date of the last status check.+ lastStatusCheckDate :: Prelude.Maybe Prelude.Text,+ -- | The status message for an EC2 instance.+ statusMessage :: Prelude.Maybe Prelude.Text,+ -- | The ID of the EC2 instance, which provides user-based subscriptions.+ instanceId :: Prelude.Text,+ -- | A list of provided user-based subscription products.+ products :: [Prelude.Text],+ -- | The status of an EC2 instance resource.+ status :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'InstanceSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'lastStatusCheckDate', 'instanceSummary_lastStatusCheckDate' - The date of the last status check.+--+-- 'statusMessage', 'instanceSummary_statusMessage' - The status message for an EC2 instance.+--+-- 'instanceId', 'instanceSummary_instanceId' - The ID of the EC2 instance, which provides user-based subscriptions.+--+-- 'products', 'instanceSummary_products' - A list of provided user-based subscription products.+--+-- 'status', 'instanceSummary_status' - The status of an EC2 instance resource.+newInstanceSummary ::+ -- | 'instanceId'+ Prelude.Text ->+ -- | 'status'+ Prelude.Text ->+ InstanceSummary+newInstanceSummary pInstanceId_ pStatus_ =+ InstanceSummary'+ { lastStatusCheckDate =+ Prelude.Nothing,+ statusMessage = Prelude.Nothing,+ instanceId = pInstanceId_,+ products = Prelude.mempty,+ status = pStatus_+ }++-- | The date of the last status check.+instanceSummary_lastStatusCheckDate :: Lens.Lens' InstanceSummary (Prelude.Maybe Prelude.Text)+instanceSummary_lastStatusCheckDate = Lens.lens (\InstanceSummary' {lastStatusCheckDate} -> lastStatusCheckDate) (\s@InstanceSummary' {} a -> s {lastStatusCheckDate = a} :: InstanceSummary)++-- | The status message for an EC2 instance.+instanceSummary_statusMessage :: Lens.Lens' InstanceSummary (Prelude.Maybe Prelude.Text)+instanceSummary_statusMessage = Lens.lens (\InstanceSummary' {statusMessage} -> statusMessage) (\s@InstanceSummary' {} a -> s {statusMessage = a} :: InstanceSummary)++-- | The ID of the EC2 instance, which provides user-based subscriptions.+instanceSummary_instanceId :: Lens.Lens' InstanceSummary Prelude.Text+instanceSummary_instanceId = Lens.lens (\InstanceSummary' {instanceId} -> instanceId) (\s@InstanceSummary' {} a -> s {instanceId = a} :: InstanceSummary)++-- | A list of provided user-based subscription products.+instanceSummary_products :: Lens.Lens' InstanceSummary [Prelude.Text]+instanceSummary_products = Lens.lens (\InstanceSummary' {products} -> products) (\s@InstanceSummary' {} a -> s {products = a} :: InstanceSummary) Prelude.. Lens.coerced++-- | The status of an EC2 instance resource.+instanceSummary_status :: Lens.Lens' InstanceSummary Prelude.Text+instanceSummary_status = Lens.lens (\InstanceSummary' {status} -> status) (\s@InstanceSummary' {} a -> s {status = a} :: InstanceSummary)++instance Data.FromJSON InstanceSummary where+ parseJSON =+ Data.withObject+ "InstanceSummary"+ ( \x ->+ InstanceSummary'+ Prelude.<$> (x Data..:? "LastStatusCheckDate")+ Prelude.<*> (x Data..:? "StatusMessage")+ Prelude.<*> (x Data..: "InstanceId")+ Prelude.<*> (x Data..:? "Products" Data..!= Prelude.mempty)+ Prelude.<*> (x Data..: "Status")+ )++instance Prelude.Hashable InstanceSummary where+ hashWithSalt _salt InstanceSummary' {..} =+ _salt+ `Prelude.hashWithSalt` lastStatusCheckDate+ `Prelude.hashWithSalt` statusMessage+ `Prelude.hashWithSalt` instanceId+ `Prelude.hashWithSalt` products+ `Prelude.hashWithSalt` status++instance Prelude.NFData InstanceSummary where+ rnf InstanceSummary' {..} =+ Prelude.rnf lastStatusCheckDate+ `Prelude.seq` Prelude.rnf statusMessage+ `Prelude.seq` Prelude.rnf instanceId+ `Prelude.seq` Prelude.rnf products+ `Prelude.seq` Prelude.rnf status
+ gen/Amazonka/LicenseManagerUserSubscriptions/Types/InstanceUserSummary.hs view
@@ -0,0 +1,170 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LicenseManagerUserSubscriptions.Types.InstanceUserSummary+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LicenseManagerUserSubscriptions.Types.InstanceUserSummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LicenseManagerUserSubscriptions.Types.IdentityProvider+import qualified Amazonka.Prelude as Prelude++-- | Describes users of an EC2 instance providing user-based subscriptions.+--+-- /See:/ 'newInstanceUserSummary' smart constructor.+data InstanceUserSummary = InstanceUserSummary'+ { -- | The date a user was associated with an EC2 instance.+ associationDate :: Prelude.Maybe Prelude.Text,+ -- | The date a user was disassociated from an EC2 instance.+ disassociationDate :: Prelude.Maybe Prelude.Text,+ -- | The domain name of the user.+ domain :: Prelude.Maybe Prelude.Text,+ -- | The status message for users of an EC2 instance.+ statusMessage :: Prelude.Maybe Prelude.Text,+ -- | An object that specifies details for the identity provider.+ identityProvider :: IdentityProvider,+ -- | The ID of the EC2 instance, which provides user-based subscriptions.+ instanceId :: Prelude.Text,+ -- | The status of a user associated with an EC2 instance.+ status :: Prelude.Text,+ -- | The user name from the identity provider for the user.+ username :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'InstanceUserSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'associationDate', 'instanceUserSummary_associationDate' - The date a user was associated with an EC2 instance.+--+-- 'disassociationDate', 'instanceUserSummary_disassociationDate' - The date a user was disassociated from an EC2 instance.+--+-- 'domain', 'instanceUserSummary_domain' - The domain name of the user.+--+-- 'statusMessage', 'instanceUserSummary_statusMessage' - The status message for users of an EC2 instance.+--+-- 'identityProvider', 'instanceUserSummary_identityProvider' - An object that specifies details for the identity provider.+--+-- 'instanceId', 'instanceUserSummary_instanceId' - The ID of the EC2 instance, which provides user-based subscriptions.+--+-- 'status', 'instanceUserSummary_status' - The status of a user associated with an EC2 instance.+--+-- 'username', 'instanceUserSummary_username' - The user name from the identity provider for the user.+newInstanceUserSummary ::+ -- | 'identityProvider'+ IdentityProvider ->+ -- | 'instanceId'+ Prelude.Text ->+ -- | 'status'+ Prelude.Text ->+ -- | 'username'+ Prelude.Text ->+ InstanceUserSummary+newInstanceUserSummary+ pIdentityProvider_+ pInstanceId_+ pStatus_+ pUsername_ =+ InstanceUserSummary'+ { associationDate =+ Prelude.Nothing,+ disassociationDate = Prelude.Nothing,+ domain = Prelude.Nothing,+ statusMessage = Prelude.Nothing,+ identityProvider = pIdentityProvider_,+ instanceId = pInstanceId_,+ status = pStatus_,+ username = pUsername_+ }++-- | The date a user was associated with an EC2 instance.+instanceUserSummary_associationDate :: Lens.Lens' InstanceUserSummary (Prelude.Maybe Prelude.Text)+instanceUserSummary_associationDate = Lens.lens (\InstanceUserSummary' {associationDate} -> associationDate) (\s@InstanceUserSummary' {} a -> s {associationDate = a} :: InstanceUserSummary)++-- | The date a user was disassociated from an EC2 instance.+instanceUserSummary_disassociationDate :: Lens.Lens' InstanceUserSummary (Prelude.Maybe Prelude.Text)+instanceUserSummary_disassociationDate = Lens.lens (\InstanceUserSummary' {disassociationDate} -> disassociationDate) (\s@InstanceUserSummary' {} a -> s {disassociationDate = a} :: InstanceUserSummary)++-- | The domain name of the user.+instanceUserSummary_domain :: Lens.Lens' InstanceUserSummary (Prelude.Maybe Prelude.Text)+instanceUserSummary_domain = Lens.lens (\InstanceUserSummary' {domain} -> domain) (\s@InstanceUserSummary' {} a -> s {domain = a} :: InstanceUserSummary)++-- | The status message for users of an EC2 instance.+instanceUserSummary_statusMessage :: Lens.Lens' InstanceUserSummary (Prelude.Maybe Prelude.Text)+instanceUserSummary_statusMessage = Lens.lens (\InstanceUserSummary' {statusMessage} -> statusMessage) (\s@InstanceUserSummary' {} a -> s {statusMessage = a} :: InstanceUserSummary)++-- | An object that specifies details for the identity provider.+instanceUserSummary_identityProvider :: Lens.Lens' InstanceUserSummary IdentityProvider+instanceUserSummary_identityProvider = Lens.lens (\InstanceUserSummary' {identityProvider} -> identityProvider) (\s@InstanceUserSummary' {} a -> s {identityProvider = a} :: InstanceUserSummary)++-- | The ID of the EC2 instance, which provides user-based subscriptions.+instanceUserSummary_instanceId :: Lens.Lens' InstanceUserSummary Prelude.Text+instanceUserSummary_instanceId = Lens.lens (\InstanceUserSummary' {instanceId} -> instanceId) (\s@InstanceUserSummary' {} a -> s {instanceId = a} :: InstanceUserSummary)++-- | The status of a user associated with an EC2 instance.+instanceUserSummary_status :: Lens.Lens' InstanceUserSummary Prelude.Text+instanceUserSummary_status = Lens.lens (\InstanceUserSummary' {status} -> status) (\s@InstanceUserSummary' {} a -> s {status = a} :: InstanceUserSummary)++-- | The user name from the identity provider for the user.+instanceUserSummary_username :: Lens.Lens' InstanceUserSummary Prelude.Text+instanceUserSummary_username = Lens.lens (\InstanceUserSummary' {username} -> username) (\s@InstanceUserSummary' {} a -> s {username = a} :: InstanceUserSummary)++instance Data.FromJSON InstanceUserSummary where+ parseJSON =+ Data.withObject+ "InstanceUserSummary"+ ( \x ->+ InstanceUserSummary'+ Prelude.<$> (x Data..:? "AssociationDate")+ Prelude.<*> (x Data..:? "DisassociationDate")+ Prelude.<*> (x Data..:? "Domain")+ Prelude.<*> (x Data..:? "StatusMessage")+ Prelude.<*> (x Data..: "IdentityProvider")+ Prelude.<*> (x Data..: "InstanceId")+ Prelude.<*> (x Data..: "Status")+ Prelude.<*> (x Data..: "Username")+ )++instance Prelude.Hashable InstanceUserSummary where+ hashWithSalt _salt InstanceUserSummary' {..} =+ _salt+ `Prelude.hashWithSalt` associationDate+ `Prelude.hashWithSalt` disassociationDate+ `Prelude.hashWithSalt` domain+ `Prelude.hashWithSalt` statusMessage+ `Prelude.hashWithSalt` identityProvider+ `Prelude.hashWithSalt` instanceId+ `Prelude.hashWithSalt` status+ `Prelude.hashWithSalt` username++instance Prelude.NFData InstanceUserSummary where+ rnf InstanceUserSummary' {..} =+ Prelude.rnf associationDate+ `Prelude.seq` Prelude.rnf disassociationDate+ `Prelude.seq` Prelude.rnf domain+ `Prelude.seq` Prelude.rnf statusMessage+ `Prelude.seq` Prelude.rnf identityProvider+ `Prelude.seq` Prelude.rnf instanceId+ `Prelude.seq` Prelude.rnf status+ `Prelude.seq` Prelude.rnf username
+ gen/Amazonka/LicenseManagerUserSubscriptions/Types/ProductUserSummary.hs view
@@ -0,0 +1,169 @@+{-# 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.LicenseManagerUserSubscriptions.Types.ProductUserSummary+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LicenseManagerUserSubscriptions.Types.ProductUserSummary where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LicenseManagerUserSubscriptions.Types.IdentityProvider+import qualified Amazonka.Prelude as Prelude++-- | The summary of the user-based subscription products for a user.+--+-- /See:/ 'newProductUserSummary' smart constructor.+data ProductUserSummary = ProductUserSummary'+ { -- | The domain name of the user.+ domain :: Prelude.Maybe Prelude.Text,+ -- | The status message for a product for a user.+ statusMessage :: Prelude.Maybe Prelude.Text,+ -- | The end date of a subscription.+ subscriptionEndDate :: Prelude.Maybe Prelude.Text,+ -- | The start date of a subscription.+ subscriptionStartDate :: Prelude.Maybe Prelude.Text,+ -- | An object that specifies details for the identity provider.+ identityProvider :: IdentityProvider,+ -- | The name of the user-based subscription product.+ product :: Prelude.Text,+ -- | The status of a product for a user.+ status :: Prelude.Text,+ -- | The user name from the identity provider of the user.+ username :: Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ProductUserSummary' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'domain', 'productUserSummary_domain' - The domain name of the user.+--+-- 'statusMessage', 'productUserSummary_statusMessage' - The status message for a product for a user.+--+-- 'subscriptionEndDate', 'productUserSummary_subscriptionEndDate' - The end date of a subscription.+--+-- 'subscriptionStartDate', 'productUserSummary_subscriptionStartDate' - The start date of a subscription.+--+-- 'identityProvider', 'productUserSummary_identityProvider' - An object that specifies details for the identity provider.+--+-- 'product', 'productUserSummary_product' - The name of the user-based subscription product.+--+-- 'status', 'productUserSummary_status' - The status of a product for a user.+--+-- 'username', 'productUserSummary_username' - The user name from the identity provider of the user.+newProductUserSummary ::+ -- | 'identityProvider'+ IdentityProvider ->+ -- | 'product'+ Prelude.Text ->+ -- | 'status'+ Prelude.Text ->+ -- | 'username'+ Prelude.Text ->+ ProductUserSummary+newProductUserSummary+ pIdentityProvider_+ pProduct_+ pStatus_+ pUsername_ =+ ProductUserSummary'+ { domain = Prelude.Nothing,+ statusMessage = Prelude.Nothing,+ subscriptionEndDate = Prelude.Nothing,+ subscriptionStartDate = Prelude.Nothing,+ identityProvider = pIdentityProvider_,+ product = pProduct_,+ status = pStatus_,+ username = pUsername_+ }++-- | The domain name of the user.+productUserSummary_domain :: Lens.Lens' ProductUserSummary (Prelude.Maybe Prelude.Text)+productUserSummary_domain = Lens.lens (\ProductUserSummary' {domain} -> domain) (\s@ProductUserSummary' {} a -> s {domain = a} :: ProductUserSummary)++-- | The status message for a product for a user.+productUserSummary_statusMessage :: Lens.Lens' ProductUserSummary (Prelude.Maybe Prelude.Text)+productUserSummary_statusMessage = Lens.lens (\ProductUserSummary' {statusMessage} -> statusMessage) (\s@ProductUserSummary' {} a -> s {statusMessage = a} :: ProductUserSummary)++-- | The end date of a subscription.+productUserSummary_subscriptionEndDate :: Lens.Lens' ProductUserSummary (Prelude.Maybe Prelude.Text)+productUserSummary_subscriptionEndDate = Lens.lens (\ProductUserSummary' {subscriptionEndDate} -> subscriptionEndDate) (\s@ProductUserSummary' {} a -> s {subscriptionEndDate = a} :: ProductUserSummary)++-- | The start date of a subscription.+productUserSummary_subscriptionStartDate :: Lens.Lens' ProductUserSummary (Prelude.Maybe Prelude.Text)+productUserSummary_subscriptionStartDate = Lens.lens (\ProductUserSummary' {subscriptionStartDate} -> subscriptionStartDate) (\s@ProductUserSummary' {} a -> s {subscriptionStartDate = a} :: ProductUserSummary)++-- | An object that specifies details for the identity provider.+productUserSummary_identityProvider :: Lens.Lens' ProductUserSummary IdentityProvider+productUserSummary_identityProvider = Lens.lens (\ProductUserSummary' {identityProvider} -> identityProvider) (\s@ProductUserSummary' {} a -> s {identityProvider = a} :: ProductUserSummary)++-- | The name of the user-based subscription product.+productUserSummary_product :: Lens.Lens' ProductUserSummary Prelude.Text+productUserSummary_product = Lens.lens (\ProductUserSummary' {product} -> product) (\s@ProductUserSummary' {} a -> s {product = a} :: ProductUserSummary)++-- | The status of a product for a user.+productUserSummary_status :: Lens.Lens' ProductUserSummary Prelude.Text+productUserSummary_status = Lens.lens (\ProductUserSummary' {status} -> status) (\s@ProductUserSummary' {} a -> s {status = a} :: ProductUserSummary)++-- | The user name from the identity provider of the user.+productUserSummary_username :: Lens.Lens' ProductUserSummary Prelude.Text+productUserSummary_username = Lens.lens (\ProductUserSummary' {username} -> username) (\s@ProductUserSummary' {} a -> s {username = a} :: ProductUserSummary)++instance Data.FromJSON ProductUserSummary where+ parseJSON =+ Data.withObject+ "ProductUserSummary"+ ( \x ->+ ProductUserSummary'+ Prelude.<$> (x Data..:? "Domain")+ Prelude.<*> (x Data..:? "StatusMessage")+ Prelude.<*> (x Data..:? "SubscriptionEndDate")+ Prelude.<*> (x Data..:? "SubscriptionStartDate")+ Prelude.<*> (x Data..: "IdentityProvider")+ Prelude.<*> (x Data..: "Product")+ Prelude.<*> (x Data..: "Status")+ Prelude.<*> (x Data..: "Username")+ )++instance Prelude.Hashable ProductUserSummary where+ hashWithSalt _salt ProductUserSummary' {..} =+ _salt+ `Prelude.hashWithSalt` domain+ `Prelude.hashWithSalt` statusMessage+ `Prelude.hashWithSalt` subscriptionEndDate+ `Prelude.hashWithSalt` subscriptionStartDate+ `Prelude.hashWithSalt` identityProvider+ `Prelude.hashWithSalt` product+ `Prelude.hashWithSalt` status+ `Prelude.hashWithSalt` username++instance Prelude.NFData ProductUserSummary where+ rnf ProductUserSummary' {..} =+ Prelude.rnf domain+ `Prelude.seq` Prelude.rnf statusMessage+ `Prelude.seq` Prelude.rnf subscriptionEndDate+ `Prelude.seq` Prelude.rnf subscriptionStartDate+ `Prelude.seq` Prelude.rnf identityProvider+ `Prelude.seq` Prelude.rnf product+ `Prelude.seq` Prelude.rnf status+ `Prelude.seq` Prelude.rnf username
+ gen/Amazonka/LicenseManagerUserSubscriptions/Types/Settings.hs view
@@ -0,0 +1,108 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LicenseManagerUserSubscriptions.Types.Settings+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LicenseManagerUserSubscriptions.Types.Settings where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | The registered identity provider’s product related configuration+-- settings such as the subnets to provision VPC endpoints, and the+-- security group ID that is associated with the VPC endpoints. The+-- security group should permit inbound TCP port 1688 communication from+-- resources in the VPC.+--+-- /See:/ 'newSettings' smart constructor.+data Settings = Settings'+ { -- | A security group ID that allows inbound TCP port 1688 communication+ -- between resources in your VPC and the VPC endpoint for activation+ -- servers.+ securityGroupId :: Prelude.Text,+ -- | The subnets defined for the registered identity provider.+ subnets :: Prelude.NonEmpty Prelude.Text+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Settings' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'securityGroupId', 'settings_securityGroupId' - A security group ID that allows inbound TCP port 1688 communication+-- between resources in your VPC and the VPC endpoint for activation+-- servers.+--+-- 'subnets', 'settings_subnets' - The subnets defined for the registered identity provider.+newSettings ::+ -- | 'securityGroupId'+ Prelude.Text ->+ -- | 'subnets'+ Prelude.NonEmpty Prelude.Text ->+ Settings+newSettings pSecurityGroupId_ pSubnets_ =+ Settings'+ { securityGroupId = pSecurityGroupId_,+ subnets = Lens.coerced Lens.# pSubnets_+ }++-- | A security group ID that allows inbound TCP port 1688 communication+-- between resources in your VPC and the VPC endpoint for activation+-- servers.+settings_securityGroupId :: Lens.Lens' Settings Prelude.Text+settings_securityGroupId = Lens.lens (\Settings' {securityGroupId} -> securityGroupId) (\s@Settings' {} a -> s {securityGroupId = a} :: Settings)++-- | The subnets defined for the registered identity provider.+settings_subnets :: Lens.Lens' Settings (Prelude.NonEmpty Prelude.Text)+settings_subnets = Lens.lens (\Settings' {subnets} -> subnets) (\s@Settings' {} a -> s {subnets = a} :: Settings) Prelude.. Lens.coerced++instance Data.FromJSON Settings where+ parseJSON =+ Data.withObject+ "Settings"+ ( \x ->+ Settings'+ Prelude.<$> (x Data..: "SecurityGroupId")+ Prelude.<*> (x Data..: "Subnets")+ )++instance Prelude.Hashable Settings where+ hashWithSalt _salt Settings' {..} =+ _salt+ `Prelude.hashWithSalt` securityGroupId+ `Prelude.hashWithSalt` subnets++instance Prelude.NFData Settings where+ rnf Settings' {..} =+ Prelude.rnf securityGroupId+ `Prelude.seq` Prelude.rnf subnets++instance Data.ToJSON Settings where+ toJSON Settings' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("SecurityGroupId" Data..= securityGroupId),+ Prelude.Just ("Subnets" Data..= subnets)+ ]+ )
+ gen/Amazonka/LicenseManagerUserSubscriptions/Types/UpdateSettings.hs view
@@ -0,0 +1,107 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LicenseManagerUserSubscriptions.Types.UpdateSettings+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.LicenseManagerUserSubscriptions.Types.UpdateSettings 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++-- | Updates the registered identity provider’s product related configuration+-- settings such as the subnets to provision VPC endpoints.+--+-- /See:/ 'newUpdateSettings' smart constructor.+data UpdateSettings = UpdateSettings'+ { -- | A security group ID that allows inbound TCP port 1688 communication+ -- between resources in your VPC and the VPC endpoints for activation+ -- servers.+ securityGroupId :: Prelude.Maybe Prelude.Text,+ -- | The ID of one or more subnets in which License Manager will create a VPC+ -- endpoint for products that require connectivity to activation servers.+ addSubnets :: [Prelude.Text],+ -- | The ID of one or more subnets to remove.+ removeSubnets :: [Prelude.Text]+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateSettings' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'securityGroupId', 'updateSettings_securityGroupId' - A security group ID that allows inbound TCP port 1688 communication+-- between resources in your VPC and the VPC endpoints for activation+-- servers.+--+-- 'addSubnets', 'updateSettings_addSubnets' - The ID of one or more subnets in which License Manager will create a VPC+-- endpoint for products that require connectivity to activation servers.+--+-- 'removeSubnets', 'updateSettings_removeSubnets' - The ID of one or more subnets to remove.+newUpdateSettings ::+ UpdateSettings+newUpdateSettings =+ UpdateSettings'+ { securityGroupId = Prelude.Nothing,+ addSubnets = Prelude.mempty,+ removeSubnets = Prelude.mempty+ }++-- | A security group ID that allows inbound TCP port 1688 communication+-- between resources in your VPC and the VPC endpoints for activation+-- servers.+updateSettings_securityGroupId :: Lens.Lens' UpdateSettings (Prelude.Maybe Prelude.Text)+updateSettings_securityGroupId = Lens.lens (\UpdateSettings' {securityGroupId} -> securityGroupId) (\s@UpdateSettings' {} a -> s {securityGroupId = a} :: UpdateSettings)++-- | The ID of one or more subnets in which License Manager will create a VPC+-- endpoint for products that require connectivity to activation servers.+updateSettings_addSubnets :: Lens.Lens' UpdateSettings [Prelude.Text]+updateSettings_addSubnets = Lens.lens (\UpdateSettings' {addSubnets} -> addSubnets) (\s@UpdateSettings' {} a -> s {addSubnets = a} :: UpdateSettings) Prelude.. Lens.coerced++-- | The ID of one or more subnets to remove.+updateSettings_removeSubnets :: Lens.Lens' UpdateSettings [Prelude.Text]+updateSettings_removeSubnets = Lens.lens (\UpdateSettings' {removeSubnets} -> removeSubnets) (\s@UpdateSettings' {} a -> s {removeSubnets = a} :: UpdateSettings) Prelude.. Lens.coerced++instance Prelude.Hashable UpdateSettings where+ hashWithSalt _salt UpdateSettings' {..} =+ _salt+ `Prelude.hashWithSalt` securityGroupId+ `Prelude.hashWithSalt` addSubnets+ `Prelude.hashWithSalt` removeSubnets++instance Prelude.NFData UpdateSettings where+ rnf UpdateSettings' {..} =+ Prelude.rnf securityGroupId+ `Prelude.seq` Prelude.rnf addSubnets+ `Prelude.seq` Prelude.rnf removeSubnets++instance Data.ToJSON UpdateSettings where+ toJSON UpdateSettings' {..} =+ Data.object+ ( Prelude.catMaybes+ [ ("SecurityGroupId" Data..=)+ Prelude.<$> securityGroupId,+ Prelude.Just ("AddSubnets" Data..= addSubnets),+ Prelude.Just+ ("RemoveSubnets" Data..= removeSubnets)+ ]+ )
+ gen/Amazonka/LicenseManagerUserSubscriptions/UpdateIdentityProviderSettings.hs view
@@ -0,0 +1,252 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Amazonka.LicenseManagerUserSubscriptions.UpdateIdentityProviderSettings+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Updates additional product configuration settings for the registered+-- identity provider.+module Amazonka.LicenseManagerUserSubscriptions.UpdateIdentityProviderSettings+ ( -- * Creating a Request+ UpdateIdentityProviderSettings (..),+ newUpdateIdentityProviderSettings,++ -- * Request Lenses+ updateIdentityProviderSettings_identityProvider,+ updateIdentityProviderSettings_product,+ updateIdentityProviderSettings_updateSettings,++ -- * Destructuring the Response+ UpdateIdentityProviderSettingsResponse (..),+ newUpdateIdentityProviderSettingsResponse,++ -- * Response Lenses+ updateIdentityProviderSettingsResponse_httpStatus,+ updateIdentityProviderSettingsResponse_identityProviderSummary,+ )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LicenseManagerUserSubscriptions.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateIdentityProviderSettings' smart constructor.+data UpdateIdentityProviderSettings = UpdateIdentityProviderSettings'+ { identityProvider :: IdentityProvider,+ -- | The name of the user-based subscription product.+ product :: Prelude.Text,+ -- | Updates the registered identity provider’s product related configuration+ -- settings. You can update any combination of settings in a single+ -- operation such as the:+ --+ -- - Subnets which you want to add to provision VPC endpoints.+ --+ -- - Subnets which you want to remove the VPC endpoints from.+ --+ -- - Security group ID which permits traffic to the VPC endpoints.+ updateSettings :: UpdateSettings+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateIdentityProviderSettings' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'identityProvider', 'updateIdentityProviderSettings_identityProvider' - Undocumented member.+--+-- 'product', 'updateIdentityProviderSettings_product' - The name of the user-based subscription product.+--+-- 'updateSettings', 'updateIdentityProviderSettings_updateSettings' - Updates the registered identity provider’s product related configuration+-- settings. You can update any combination of settings in a single+-- operation such as the:+--+-- - Subnets which you want to add to provision VPC endpoints.+--+-- - Subnets which you want to remove the VPC endpoints from.+--+-- - Security group ID which permits traffic to the VPC endpoints.+newUpdateIdentityProviderSettings ::+ -- | 'identityProvider'+ IdentityProvider ->+ -- | 'product'+ Prelude.Text ->+ -- | 'updateSettings'+ UpdateSettings ->+ UpdateIdentityProviderSettings+newUpdateIdentityProviderSettings+ pIdentityProvider_+ pProduct_+ pUpdateSettings_ =+ UpdateIdentityProviderSettings'+ { identityProvider =+ pIdentityProvider_,+ product = pProduct_,+ updateSettings = pUpdateSettings_+ }++-- | Undocumented member.+updateIdentityProviderSettings_identityProvider :: Lens.Lens' UpdateIdentityProviderSettings IdentityProvider+updateIdentityProviderSettings_identityProvider = Lens.lens (\UpdateIdentityProviderSettings' {identityProvider} -> identityProvider) (\s@UpdateIdentityProviderSettings' {} a -> s {identityProvider = a} :: UpdateIdentityProviderSettings)++-- | The name of the user-based subscription product.+updateIdentityProviderSettings_product :: Lens.Lens' UpdateIdentityProviderSettings Prelude.Text+updateIdentityProviderSettings_product = Lens.lens (\UpdateIdentityProviderSettings' {product} -> product) (\s@UpdateIdentityProviderSettings' {} a -> s {product = a} :: UpdateIdentityProviderSettings)++-- | Updates the registered identity provider’s product related configuration+-- settings. You can update any combination of settings in a single+-- operation such as the:+--+-- - Subnets which you want to add to provision VPC endpoints.+--+-- - Subnets which you want to remove the VPC endpoints from.+--+-- - Security group ID which permits traffic to the VPC endpoints.+updateIdentityProviderSettings_updateSettings :: Lens.Lens' UpdateIdentityProviderSettings UpdateSettings+updateIdentityProviderSettings_updateSettings = Lens.lens (\UpdateIdentityProviderSettings' {updateSettings} -> updateSettings) (\s@UpdateIdentityProviderSettings' {} a -> s {updateSettings = a} :: UpdateIdentityProviderSettings)++instance+ Core.AWSRequest+ UpdateIdentityProviderSettings+ where+ type+ AWSResponse UpdateIdentityProviderSettings =+ UpdateIdentityProviderSettingsResponse+ request overrides =+ Request.postJSON (overrides defaultService)+ response =+ Response.receiveJSON+ ( \s h x ->+ UpdateIdentityProviderSettingsResponse'+ Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+ Prelude.<*> (x Data..:> "IdentityProviderSummary")+ )++instance+ Prelude.Hashable+ UpdateIdentityProviderSettings+ where+ hashWithSalt+ _salt+ UpdateIdentityProviderSettings' {..} =+ _salt+ `Prelude.hashWithSalt` identityProvider+ `Prelude.hashWithSalt` product+ `Prelude.hashWithSalt` updateSettings++instance+ Prelude.NFData+ UpdateIdentityProviderSettings+ where+ rnf UpdateIdentityProviderSettings' {..} =+ Prelude.rnf identityProvider+ `Prelude.seq` Prelude.rnf product+ `Prelude.seq` Prelude.rnf updateSettings++instance+ Data.ToHeaders+ UpdateIdentityProviderSettings+ where+ toHeaders =+ Prelude.const+ ( Prelude.mconcat+ [ "Content-Type"+ Data.=# ( "application/x-amz-json-1.1" ::+ Prelude.ByteString+ )+ ]+ )++instance Data.ToJSON UpdateIdentityProviderSettings where+ toJSON UpdateIdentityProviderSettings' {..} =+ Data.object+ ( Prelude.catMaybes+ [ Prelude.Just+ ("IdentityProvider" Data..= identityProvider),+ Prelude.Just ("Product" Data..= product),+ Prelude.Just+ ("UpdateSettings" Data..= updateSettings)+ ]+ )++instance Data.ToPath UpdateIdentityProviderSettings where+ toPath =+ Prelude.const+ "/identity-provider/UpdateIdentityProviderSettings"++instance Data.ToQuery UpdateIdentityProviderSettings where+ toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newUpdateIdentityProviderSettingsResponse' smart constructor.+data UpdateIdentityProviderSettingsResponse = UpdateIdentityProviderSettingsResponse'+ { -- | The response's http status code.+ httpStatus :: Prelude.Int,+ identityProviderSummary :: IdentityProviderSummary+ }+ deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateIdentityProviderSettingsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.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', 'updateIdentityProviderSettingsResponse_httpStatus' - The response's http status code.+--+-- 'identityProviderSummary', 'updateIdentityProviderSettingsResponse_identityProviderSummary' - Undocumented member.+newUpdateIdentityProviderSettingsResponse ::+ -- | 'httpStatus'+ Prelude.Int ->+ -- | 'identityProviderSummary'+ IdentityProviderSummary ->+ UpdateIdentityProviderSettingsResponse+newUpdateIdentityProviderSettingsResponse+ pHttpStatus_+ pIdentityProviderSummary_ =+ UpdateIdentityProviderSettingsResponse'+ { httpStatus =+ pHttpStatus_,+ identityProviderSummary =+ pIdentityProviderSummary_+ }++-- | The response's http status code.+updateIdentityProviderSettingsResponse_httpStatus :: Lens.Lens' UpdateIdentityProviderSettingsResponse Prelude.Int+updateIdentityProviderSettingsResponse_httpStatus = Lens.lens (\UpdateIdentityProviderSettingsResponse' {httpStatus} -> httpStatus) (\s@UpdateIdentityProviderSettingsResponse' {} a -> s {httpStatus = a} :: UpdateIdentityProviderSettingsResponse)++-- | Undocumented member.+updateIdentityProviderSettingsResponse_identityProviderSummary :: Lens.Lens' UpdateIdentityProviderSettingsResponse IdentityProviderSummary+updateIdentityProviderSettingsResponse_identityProviderSummary = Lens.lens (\UpdateIdentityProviderSettingsResponse' {identityProviderSummary} -> identityProviderSummary) (\s@UpdateIdentityProviderSettingsResponse' {} a -> s {identityProviderSummary = a} :: UpdateIdentityProviderSettingsResponse)++instance+ Prelude.NFData+ UpdateIdentityProviderSettingsResponse+ where+ rnf UpdateIdentityProviderSettingsResponse' {..} =+ Prelude.rnf httpStatus+ `Prelude.seq` Prelude.rnf identityProviderSummary
+ gen/Amazonka/LicenseManagerUserSubscriptions/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.LicenseManagerUserSubscriptions.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.LicenseManagerUserSubscriptions.Waiters where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.LicenseManagerUserSubscriptions.Lens+import Amazonka.LicenseManagerUserSubscriptions.Types+import qualified Amazonka.Prelude as Prelude
+ src/.gitkeep view
+ test/Main.hs view
@@ -0,0 +1,23 @@+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Main+-- Copyright : (c) 2013-2023 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+module Main (main) where++import Test.Amazonka.LicenseManagerUserSubscriptions+import Test.Amazonka.LicenseManagerUserSubscriptions.Internal+import Test.Tasty++main :: IO ()+main =+ defaultMain $+ testGroup+ "LicenseManagerUserSubscriptions"+ [ testGroup "tests" tests,+ testGroup "fixtures" fixtures+ ]
+ test/Test/Amazonka/Gen/LicenseManagerUserSubscriptions.hs view
@@ -0,0 +1,258 @@+{-# 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.LicenseManagerUserSubscriptions+-- Copyright : (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.LicenseManagerUserSubscriptions where++import Amazonka.LicenseManagerUserSubscriptions+import qualified Data.Proxy as Proxy+import Test.Amazonka.Fixture+import Test.Amazonka.LicenseManagerUserSubscriptions.Internal+import Test.Amazonka.Prelude+import Test.Tasty++-- Auto-generated: the actual test selection needs to be manually placed into+-- the top-level so that real test data can be incrementally added.+--+-- This commented snippet is what the entire set should look like:++-- fixtures :: TestTree+-- fixtures =+-- [ testGroup "request"+-- [ requestAssociateUser $+-- newAssociateUser+--+-- , requestDeregisterIdentityProvider $+-- newDeregisterIdentityProvider+--+-- , requestDisassociateUser $+-- newDisassociateUser+--+-- , requestListIdentityProviders $+-- newListIdentityProviders+--+-- , requestListInstances $+-- newListInstances+--+-- , requestListProductSubscriptions $+-- newListProductSubscriptions+--+-- , requestListUserAssociations $+-- newListUserAssociations+--+-- , requestRegisterIdentityProvider $+-- newRegisterIdentityProvider+--+-- , requestStartProductSubscription $+-- newStartProductSubscription+--+-- , requestStopProductSubscription $+-- newStopProductSubscription+--+-- , requestUpdateIdentityProviderSettings $+-- newUpdateIdentityProviderSettings+--+-- ]++-- , testGroup "response"+-- [ responseAssociateUser $+-- newAssociateUserResponse+--+-- , responseDeregisterIdentityProvider $+-- newDeregisterIdentityProviderResponse+--+-- , responseDisassociateUser $+-- newDisassociateUserResponse+--+-- , responseListIdentityProviders $+-- newListIdentityProvidersResponse+--+-- , responseListInstances $+-- newListInstancesResponse+--+-- , responseListProductSubscriptions $+-- newListProductSubscriptionsResponse+--+-- , responseListUserAssociations $+-- newListUserAssociationsResponse+--+-- , responseRegisterIdentityProvider $+-- newRegisterIdentityProviderResponse+--+-- , responseStartProductSubscription $+-- newStartProductSubscriptionResponse+--+-- , responseStopProductSubscription $+-- newStopProductSubscriptionResponse+--+-- , responseUpdateIdentityProviderSettings $+-- newUpdateIdentityProviderSettingsResponse+--+-- ]+-- ]++-- Requests++requestAssociateUser :: AssociateUser -> TestTree+requestAssociateUser =+ req+ "AssociateUser"+ "fixture/AssociateUser.yaml"++requestDeregisterIdentityProvider :: DeregisterIdentityProvider -> TestTree+requestDeregisterIdentityProvider =+ req+ "DeregisterIdentityProvider"+ "fixture/DeregisterIdentityProvider.yaml"++requestDisassociateUser :: DisassociateUser -> TestTree+requestDisassociateUser =+ req+ "DisassociateUser"+ "fixture/DisassociateUser.yaml"++requestListIdentityProviders :: ListIdentityProviders -> TestTree+requestListIdentityProviders =+ req+ "ListIdentityProviders"+ "fixture/ListIdentityProviders.yaml"++requestListInstances :: ListInstances -> TestTree+requestListInstances =+ req+ "ListInstances"+ "fixture/ListInstances.yaml"++requestListProductSubscriptions :: ListProductSubscriptions -> TestTree+requestListProductSubscriptions =+ req+ "ListProductSubscriptions"+ "fixture/ListProductSubscriptions.yaml"++requestListUserAssociations :: ListUserAssociations -> TestTree+requestListUserAssociations =+ req+ "ListUserAssociations"+ "fixture/ListUserAssociations.yaml"++requestRegisterIdentityProvider :: RegisterIdentityProvider -> TestTree+requestRegisterIdentityProvider =+ req+ "RegisterIdentityProvider"+ "fixture/RegisterIdentityProvider.yaml"++requestStartProductSubscription :: StartProductSubscription -> TestTree+requestStartProductSubscription =+ req+ "StartProductSubscription"+ "fixture/StartProductSubscription.yaml"++requestStopProductSubscription :: StopProductSubscription -> TestTree+requestStopProductSubscription =+ req+ "StopProductSubscription"+ "fixture/StopProductSubscription.yaml"++requestUpdateIdentityProviderSettings :: UpdateIdentityProviderSettings -> TestTree+requestUpdateIdentityProviderSettings =+ req+ "UpdateIdentityProviderSettings"+ "fixture/UpdateIdentityProviderSettings.yaml"++-- Responses++responseAssociateUser :: AssociateUserResponse -> TestTree+responseAssociateUser =+ res+ "AssociateUserResponse"+ "fixture/AssociateUserResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy AssociateUser)++responseDeregisterIdentityProvider :: DeregisterIdentityProviderResponse -> TestTree+responseDeregisterIdentityProvider =+ res+ "DeregisterIdentityProviderResponse"+ "fixture/DeregisterIdentityProviderResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DeregisterIdentityProvider)++responseDisassociateUser :: DisassociateUserResponse -> TestTree+responseDisassociateUser =+ res+ "DisassociateUserResponse"+ "fixture/DisassociateUserResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy DisassociateUser)++responseListIdentityProviders :: ListIdentityProvidersResponse -> TestTree+responseListIdentityProviders =+ res+ "ListIdentityProvidersResponse"+ "fixture/ListIdentityProvidersResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListIdentityProviders)++responseListInstances :: ListInstancesResponse -> TestTree+responseListInstances =+ res+ "ListInstancesResponse"+ "fixture/ListInstancesResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListInstances)++responseListProductSubscriptions :: ListProductSubscriptionsResponse -> TestTree+responseListProductSubscriptions =+ res+ "ListProductSubscriptionsResponse"+ "fixture/ListProductSubscriptionsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListProductSubscriptions)++responseListUserAssociations :: ListUserAssociationsResponse -> TestTree+responseListUserAssociations =+ res+ "ListUserAssociationsResponse"+ "fixture/ListUserAssociationsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy ListUserAssociations)++responseRegisterIdentityProvider :: RegisterIdentityProviderResponse -> TestTree+responseRegisterIdentityProvider =+ res+ "RegisterIdentityProviderResponse"+ "fixture/RegisterIdentityProviderResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy RegisterIdentityProvider)++responseStartProductSubscription :: StartProductSubscriptionResponse -> TestTree+responseStartProductSubscription =+ res+ "StartProductSubscriptionResponse"+ "fixture/StartProductSubscriptionResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy StartProductSubscription)++responseStopProductSubscription :: StopProductSubscriptionResponse -> TestTree+responseStopProductSubscription =+ res+ "StopProductSubscriptionResponse"+ "fixture/StopProductSubscriptionResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy StopProductSubscription)++responseUpdateIdentityProviderSettings :: UpdateIdentityProviderSettingsResponse -> TestTree+responseUpdateIdentityProviderSettings =+ res+ "UpdateIdentityProviderSettingsResponse"+ "fixture/UpdateIdentityProviderSettingsResponse.proto"+ defaultService+ (Proxy.Proxy :: Proxy.Proxy UpdateIdentityProviderSettings)
+ test/Test/Amazonka/LicenseManagerUserSubscriptions.hs view
@@ -0,0 +1,20 @@+-- |+-- Module : Test.Amazonka.LicenseManagerUserSubscriptions+-- Copyright : (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.LicenseManagerUserSubscriptions+ ( tests,+ fixtures,+ )+where++import Test.Tasty (TestTree)++tests :: [TestTree]+tests = []++fixtures :: [TestTree]+fixtures = []
+ test/Test/Amazonka/LicenseManagerUserSubscriptions/Internal.hs view
@@ -0,0 +1,8 @@+-- |+-- Module : Test.Amazonka.LicenseManagerUserSubscriptions.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.LicenseManagerUserSubscriptions.Internal where