summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrendanHay <>2018-05-16 15:13:00 (GMT)
committerhdiff <hdiff@hdiff.luite.com>2018-05-16 15:13:00 (GMT)
commit3c36b6359a8dd7b179d76b1bef1b0b679a4f0297 (patch)
tree61b07ef0ccfdf777dd1931edbaba0e88d66eb7d4
version 1.6.0HEAD1.6.0master
-rw-r--r--LICENSE367
-rw-r--r--README.md45
-rw-r--r--Setup.hs2
-rw-r--r--amazonka-mq.cabal102
-rw-r--r--fixture/CreateBroker.yaml10
-rw-r--r--fixture/CreateBrokerResponse.proto0
-rw-r--r--fixture/CreateConfiguration.yaml10
-rw-r--r--fixture/CreateConfigurationResponse.proto0
-rw-r--r--fixture/CreateUser.yaml10
-rw-r--r--fixture/CreateUserResponse.proto0
-rw-r--r--fixture/DeleteBroker.yaml10
-rw-r--r--fixture/DeleteBrokerResponse.proto0
-rw-r--r--fixture/DeleteUser.yaml10
-rw-r--r--fixture/DeleteUserResponse.proto0
-rw-r--r--fixture/DescribeBroker.yaml10
-rw-r--r--fixture/DescribeBrokerResponse.proto0
-rw-r--r--fixture/DescribeConfiguration.yaml10
-rw-r--r--fixture/DescribeConfigurationResponse.proto0
-rw-r--r--fixture/DescribeConfigurationRevision.yaml10
-rw-r--r--fixture/DescribeConfigurationRevisionResponse.proto0
-rw-r--r--fixture/DescribeUser.yaml10
-rw-r--r--fixture/DescribeUserResponse.proto0
-rw-r--r--fixture/ListBrokers.yaml10
-rw-r--r--fixture/ListBrokersResponse.proto0
-rw-r--r--fixture/ListConfigurationRevisions.yaml10
-rw-r--r--fixture/ListConfigurationRevisionsResponse.proto0
-rw-r--r--fixture/ListConfigurations.yaml10
-rw-r--r--fixture/ListConfigurationsResponse.proto0
-rw-r--r--fixture/ListUsers.yaml10
-rw-r--r--fixture/ListUsersResponse.proto0
-rw-r--r--fixture/RebootBroker.yaml10
-rw-r--r--fixture/RebootBrokerResponse.proto0
-rw-r--r--fixture/UpdateBroker.yaml10
-rw-r--r--fixture/UpdateBrokerResponse.proto0
-rw-r--r--fixture/UpdateConfiguration.yaml10
-rw-r--r--fixture/UpdateConfigurationResponse.proto0
-rw-r--r--fixture/UpdateUser.yaml10
-rw-r--r--fixture/UpdateUserResponse.proto0
-rw-r--r--gen/Network/AWS/MQ.hs248
-rw-r--r--gen/Network/AWS/MQ/CreateBroker.hs266
-rw-r--r--gen/Network/AWS/MQ/CreateConfiguration.hs182
-rw-r--r--gen/Network/AWS/MQ/CreateUser.hs165
-rw-r--r--gen/Network/AWS/MQ/DeleteBroker.hs123
-rw-r--r--gen/Network/AWS/MQ/DeleteUser.hs125
-rw-r--r--gen/Network/AWS/MQ/DescribeBroker.hs275
-rw-r--r--gen/Network/AWS/MQ/DescribeConfiguration.hs188
-rw-r--r--gen/Network/AWS/MQ/DescribeConfigurationRevision.hs164
-rw-r--r--gen/Network/AWS/MQ/DescribeUser.hs177
-rw-r--r--gen/Network/AWS/MQ/ListBrokers.hs145
-rw-r--r--gen/Network/AWS/MQ/ListConfigurationRevisions.hs183
-rw-r--r--gen/Network/AWS/MQ/ListConfigurations.hs157
-rw-r--r--gen/Network/AWS/MQ/ListUsers.hs177
-rw-r--r--gen/Network/AWS/MQ/RebootBroker.hs117
-rw-r--r--gen/Network/AWS/MQ/Types.hs202
-rw-r--r--gen/Network/AWS/MQ/Types/Product.hs635
-rw-r--r--gen/Network/AWS/MQ/Types/Sum.hs223
-rw-r--r--gen/Network/AWS/MQ/UpdateBroker.hs152
-rw-r--r--gen/Network/AWS/MQ/UpdateConfiguration.hs197
-rw-r--r--gen/Network/AWS/MQ/UpdateUser.hs165
-rw-r--r--gen/Network/AWS/MQ/Waiters.hs21
-rw-r--r--test/Main.hs21
-rw-r--r--test/Test/AWS/Gen/MQ.hs345
-rw-r--r--test/Test/AWS/MQ.hs20
-rw-r--r--test/Test/AWS/MQ/Internal.hs9
64 files changed, 5368 insertions, 0 deletions
diff --git a/LICENSE b/LICENSE
new file mode 100644
index 0000000..bc8942f
--- /dev/null
+++ b/LICENSE
@@ -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.
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..d0c14e2
--- /dev/null
+++ b/README.md
@@ -0,0 +1,45 @@
+# Amazon MQ SDK
+
+* [Version](#version)
+* [Description](#description)
+* [Contribute](#contribute)
+* [Licence](#licence)
+
+
+## Version
+
+`1.6.0`
+
+
+## Description
+
+Documentation is available via [Hackage](http://hackage.haskell.org/package/amazonka-mq)
+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 [Network.AWS.MQ](http://hackage.haskell.org/package/amazonka-mq/docs/Network-AWS-MQ.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-mq` 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.
diff --git a/Setup.hs b/Setup.hs
new file mode 100644
index 0000000..4467109
--- /dev/null
+++ b/Setup.hs
@@ -0,0 +1,2 @@
+import Distribution.Simple
+main = defaultMain
diff --git a/amazonka-mq.cabal b/amazonka-mq.cabal
new file mode 100644
index 0000000..e1769ff
--- /dev/null
+++ b/amazonka-mq.cabal
@@ -0,0 +1,102 @@
+name: amazonka-mq
+version: 1.6.0
+synopsis: Amazon MQ 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>
+copyright: Copyright (c) 2013-2018 Brendan Hay
+category: Network, AWS, Cloud, Distributed Computing
+build-type: Simple
+cabal-version: >= 1.10
+extra-source-files: README.md fixture/*.yaml fixture/*.proto src/.gitkeep
+description:
+ 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.
+ .
+ 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
+ such as <http://hackage.haskell.org/package/lens lens> or
+ <http://hackage.haskell.org/package/lens-family-core lens-family-core>.
+ .
+ See "Network.AWS.MQ" or <https://aws.amazon.com/documentation/ the AWS documentation>
+ to get started.
+
+source-repository head
+ type: git
+ location: git://github.com/brendanhay/amazonka.git
+ subdir: amazonka-mq
+
+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:
+ Network.AWS.MQ
+ , Network.AWS.MQ.CreateBroker
+ , Network.AWS.MQ.CreateConfiguration
+ , Network.AWS.MQ.CreateUser
+ , Network.AWS.MQ.DeleteBroker
+ , Network.AWS.MQ.DeleteUser
+ , Network.AWS.MQ.DescribeBroker
+ , Network.AWS.MQ.DescribeConfiguration
+ , Network.AWS.MQ.DescribeConfigurationRevision
+ , Network.AWS.MQ.DescribeUser
+ , Network.AWS.MQ.ListBrokers
+ , Network.AWS.MQ.ListConfigurationRevisions
+ , Network.AWS.MQ.ListConfigurations
+ , Network.AWS.MQ.ListUsers
+ , Network.AWS.MQ.RebootBroker
+ , Network.AWS.MQ.Types
+ , Network.AWS.MQ.UpdateBroker
+ , Network.AWS.MQ.UpdateConfiguration
+ , Network.AWS.MQ.UpdateUser
+ , Network.AWS.MQ.Waiters
+
+ other-modules:
+ Network.AWS.MQ.Types.Product
+ , Network.AWS.MQ.Types.Sum
+
+ build-depends:
+ amazonka-core == 1.6.0.*
+ , base >= 4.7 && < 5
+
+test-suite amazonka-mq-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.AWS.MQ
+ , Test.AWS.Gen.MQ
+ , Test.AWS.MQ.Internal
+
+ build-depends:
+ amazonka-core == 1.6.0.*
+ , amazonka-test == 1.6.0.*
+ , amazonka-mq
+ , base
+ , bytestring
+ , tasty
+ , tasty-hunit
+ , text
+ , time
+ , unordered-containers
diff --git a/fixture/CreateBroker.yaml b/fixture/CreateBroker.yaml
new file mode 100644
index 0000000..cc3e430
--- /dev/null
+++ b/fixture/CreateBroker.yaml
@@ -0,0 +1,10 @@
+---
+method: POST
+headers:
+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mq/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?
+ Host: mq.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:
+ ''
diff --git a/fixture/CreateBrokerResponse.proto b/fixture/CreateBrokerResponse.proto
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/fixture/CreateBrokerResponse.proto
diff --git a/fixture/CreateConfiguration.yaml b/fixture/CreateConfiguration.yaml
new file mode 100644
index 0000000..cc3e430
--- /dev/null
+++ b/fixture/CreateConfiguration.yaml
@@ -0,0 +1,10 @@
+---
+method: POST
+headers:
+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mq/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?
+ Host: mq.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:
+ ''
diff --git a/fixture/CreateConfigurationResponse.proto b/fixture/CreateConfigurationResponse.proto
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/fixture/CreateConfigurationResponse.proto
diff --git a/fixture/CreateUser.yaml b/fixture/CreateUser.yaml
new file mode 100644
index 0000000..cc3e430
--- /dev/null
+++ b/fixture/CreateUser.yaml
@@ -0,0 +1,10 @@
+---
+method: POST
+headers:
+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mq/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?
+ Host: mq.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:
+ ''
diff --git a/fixture/CreateUserResponse.proto b/fixture/CreateUserResponse.proto
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/fixture/CreateUserResponse.proto
diff --git a/fixture/DeleteBroker.yaml b/fixture/DeleteBroker.yaml
new file mode 100644
index 0000000..b9f727e
--- /dev/null
+++ b/fixture/DeleteBroker.yaml
@@ -0,0 +1,10 @@
+---
+method: DELETE
+headers:
+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mq/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?
+ Host: mq.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:
+ ''
diff --git a/fixture/DeleteBrokerResponse.proto b/fixture/DeleteBrokerResponse.proto
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/fixture/DeleteBrokerResponse.proto
diff --git a/fixture/DeleteUser.yaml b/fixture/DeleteUser.yaml
new file mode 100644
index 0000000..b9f727e
--- /dev/null
+++ b/fixture/DeleteUser.yaml
@@ -0,0 +1,10 @@
+---
+method: DELETE
+headers:
+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mq/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?
+ Host: mq.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:
+ ''
diff --git a/fixture/DeleteUserResponse.proto b/fixture/DeleteUserResponse.proto
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/fixture/DeleteUserResponse.proto
diff --git a/fixture/DescribeBroker.yaml b/fixture/DescribeBroker.yaml
new file mode 100644
index 0000000..16e78cb
--- /dev/null
+++ b/fixture/DescribeBroker.yaml
@@ -0,0 +1,10 @@
+---
+method: GET
+headers:
+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mq/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?
+ Host: mq.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:
+ ''
diff --git a/fixture/DescribeBrokerResponse.proto b/fixture/DescribeBrokerResponse.proto
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/fixture/DescribeBrokerResponse.proto
diff --git a/fixture/DescribeConfiguration.yaml b/fixture/DescribeConfiguration.yaml
new file mode 100644
index 0000000..16e78cb
--- /dev/null
+++ b/fixture/DescribeConfiguration.yaml
@@ -0,0 +1,10 @@
+---
+method: GET
+headers:
+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mq/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?
+ Host: mq.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:
+ ''
diff --git a/fixture/DescribeConfigurationResponse.proto b/fixture/DescribeConfigurationResponse.proto
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/fixture/DescribeConfigurationResponse.proto
diff --git a/fixture/DescribeConfigurationRevision.yaml b/fixture/DescribeConfigurationRevision.yaml
new file mode 100644
index 0000000..16e78cb
--- /dev/null
+++ b/fixture/DescribeConfigurationRevision.yaml
@@ -0,0 +1,10 @@
+---
+method: GET
+headers:
+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mq/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?
+ Host: mq.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:
+ ''
diff --git a/fixture/DescribeConfigurationRevisionResponse.proto b/fixture/DescribeConfigurationRevisionResponse.proto
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/fixture/DescribeConfigurationRevisionResponse.proto
diff --git a/fixture/DescribeUser.yaml b/fixture/DescribeUser.yaml
new file mode 100644
index 0000000..16e78cb
--- /dev/null
+++ b/fixture/DescribeUser.yaml
@@ -0,0 +1,10 @@
+---
+method: GET
+headers:
+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mq/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?
+ Host: mq.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:
+ ''
diff --git a/fixture/DescribeUserResponse.proto b/fixture/DescribeUserResponse.proto
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/fixture/DescribeUserResponse.proto
diff --git a/fixture/ListBrokers.yaml b/fixture/ListBrokers.yaml
new file mode 100644
index 0000000..16e78cb
--- /dev/null
+++ b/fixture/ListBrokers.yaml
@@ -0,0 +1,10 @@
+---
+method: GET
+headers:
+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mq/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?
+ Host: mq.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:
+ ''
diff --git a/fixture/ListBrokersResponse.proto b/fixture/ListBrokersResponse.proto
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/fixture/ListBrokersResponse.proto
diff --git a/fixture/ListConfigurationRevisions.yaml b/fixture/ListConfigurationRevisions.yaml
new file mode 100644
index 0000000..16e78cb
--- /dev/null
+++ b/fixture/ListConfigurationRevisions.yaml
@@ -0,0 +1,10 @@
+---
+method: GET
+headers:
+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mq/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?
+ Host: mq.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:
+ ''
diff --git a/fixture/ListConfigurationRevisionsResponse.proto b/fixture/ListConfigurationRevisionsResponse.proto
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/fixture/ListConfigurationRevisionsResponse.proto
diff --git a/fixture/ListConfigurations.yaml b/fixture/ListConfigurations.yaml
new file mode 100644
index 0000000..16e78cb
--- /dev/null
+++ b/fixture/ListConfigurations.yaml
@@ -0,0 +1,10 @@
+---
+method: GET
+headers:
+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mq/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?
+ Host: mq.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:
+ ''
diff --git a/fixture/ListConfigurationsResponse.proto b/fixture/ListConfigurationsResponse.proto
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/fixture/ListConfigurationsResponse.proto
diff --git a/fixture/ListUsers.yaml b/fixture/ListUsers.yaml
new file mode 100644
index 0000000..16e78cb
--- /dev/null
+++ b/fixture/ListUsers.yaml
@@ -0,0 +1,10 @@
+---
+method: GET
+headers:
+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mq/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?
+ Host: mq.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:
+ ''
diff --git a/fixture/ListUsersResponse.proto b/fixture/ListUsersResponse.proto
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/fixture/ListUsersResponse.proto
diff --git a/fixture/RebootBroker.yaml b/fixture/RebootBroker.yaml
new file mode 100644
index 0000000..cc3e430
--- /dev/null
+++ b/fixture/RebootBroker.yaml
@@ -0,0 +1,10 @@
+---
+method: POST
+headers:
+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mq/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?
+ Host: mq.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:
+ ''
diff --git a/fixture/RebootBrokerResponse.proto b/fixture/RebootBrokerResponse.proto
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/fixture/RebootBrokerResponse.proto
diff --git a/fixture/UpdateBroker.yaml b/fixture/UpdateBroker.yaml
new file mode 100644
index 0000000..776fe5a
--- /dev/null
+++ b/fixture/UpdateBroker.yaml
@@ -0,0 +1,10 @@
+---
+method: PUT
+headers:
+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mq/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?
+ Host: mq.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:
+ ''
diff --git a/fixture/UpdateBrokerResponse.proto b/fixture/UpdateBrokerResponse.proto
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/fixture/UpdateBrokerResponse.proto
diff --git a/fixture/UpdateConfiguration.yaml b/fixture/UpdateConfiguration.yaml
new file mode 100644
index 0000000..776fe5a
--- /dev/null
+++ b/fixture/UpdateConfiguration.yaml
@@ -0,0 +1,10 @@
+---
+method: PUT
+headers:
+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mq/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?
+ Host: mq.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:
+ ''
diff --git a/fixture/UpdateConfigurationResponse.proto b/fixture/UpdateConfigurationResponse.proto
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/fixture/UpdateConfigurationResponse.proto
diff --git a/fixture/UpdateUser.yaml b/fixture/UpdateUser.yaml
new file mode 100644
index 0000000..776fe5a
--- /dev/null
+++ b/fixture/UpdateUser.yaml
@@ -0,0 +1,10 @@
+---
+method: PUT
+headers:
+ Authorization: AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/mq/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?
+ Host: mq.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:
+ ''
diff --git a/fixture/UpdateUserResponse.proto b/fixture/UpdateUserResponse.proto
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/fixture/UpdateUserResponse.proto
diff --git a/gen/Network/AWS/MQ.hs b/gen/Network/AWS/MQ.hs
new file mode 100644
index 0000000..fedd6be
--- /dev/null
+++ b/gen/Network/AWS/MQ.hs
@@ -0,0 +1,248 @@
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}
+
+-- Derived from AWS service descriptions, licensed under Apache 2.0.
+
+-- |
+-- Module : Network.AWS.MQ
+-- Copyright : (c) 2013-2018 Brendan Hay
+-- License : Mozilla Public License, v. 2.0.
+-- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
+-- Stability : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Amazon MQ is a managed message broker service for Apache ActiveMQ that makes it easy to set up and operate message brokers in the cloud. A message broker allows software applications and components to communicate using various programming languages, operating systems, and formal messaging protocols.
+module Network.AWS.MQ
+ (
+ -- * Service Configuration
+ mq
+
+ -- * Errors
+ -- $errors
+
+ -- ** ConflictException
+ , _ConflictException
+
+ -- ** ForbiddenException
+ , _ForbiddenException
+
+ -- ** NotFoundException
+ , _NotFoundException
+
+ -- ** InternalServerErrorException
+ , _InternalServerErrorException
+
+ -- ** UnauthorizedException
+ , _UnauthorizedException
+
+ -- ** BadRequestException
+ , _BadRequestException
+
+ -- * Waiters
+ -- $waiters
+
+ -- * Operations
+ -- $operations
+
+ -- ** CreateConfiguration
+ , module Network.AWS.MQ.CreateConfiguration
+
+ -- ** CreateBroker
+ , module Network.AWS.MQ.CreateBroker
+
+ -- ** DeleteBroker
+ , module Network.AWS.MQ.DeleteBroker
+
+ -- ** UpdateBroker
+ , module Network.AWS.MQ.UpdateBroker
+
+ -- ** RebootBroker
+ , module Network.AWS.MQ.RebootBroker
+
+ -- ** ListConfigurationRevisions
+ , module Network.AWS.MQ.ListConfigurationRevisions
+
+ -- ** ListUsers
+ , module Network.AWS.MQ.ListUsers
+
+ -- ** ListConfigurations
+ , module Network.AWS.MQ.ListConfigurations
+
+ -- ** DescribeUser
+ , module Network.AWS.MQ.DescribeUser
+
+ -- ** ListBrokers
+ , module Network.AWS.MQ.ListBrokers
+
+ -- ** CreateUser
+ , module Network.AWS.MQ.CreateUser
+
+ -- ** DescribeConfiguration
+ , module Network.AWS.MQ.DescribeConfiguration
+
+ -- ** UpdateUser
+ , module Network.AWS.MQ.UpdateUser
+
+ -- ** DeleteUser
+ , module Network.AWS.MQ.DeleteUser
+
+ -- ** DescribeConfigurationRevision
+ , module Network.AWS.MQ.DescribeConfigurationRevision
+
+ -- ** DescribeBroker
+ , module Network.AWS.MQ.DescribeBroker
+
+ -- ** UpdateConfiguration
+ , module Network.AWS.MQ.UpdateConfiguration
+
+ -- * Types
+
+ -- ** BrokerState
+ , BrokerState (..)
+
+ -- ** ChangeType
+ , ChangeType (..)
+
+ -- ** DayOfWeek
+ , DayOfWeek (..)
+
+ -- ** DeploymentMode
+ , DeploymentMode (..)
+
+ -- ** EngineType
+ , EngineType (..)
+
+ -- ** SanitizationWarningReason
+ , SanitizationWarningReason (..)
+
+ -- ** BrokerInstance
+ , BrokerInstance
+ , brokerInstance
+ , biConsoleURL
+ , biEndpoints
+
+ -- ** BrokerSummary
+ , BrokerSummary
+ , brokerSummary
+ , bsBrokerName
+ , bsBrokerState
+ , bsDeploymentMode
+ , bsBrokerId
+ , bsBrokerARN
+ , bsHostInstanceType
+
+ -- ** Configuration
+ , Configuration
+ , configuration
+ , cEngineVersion
+ , cARN
+ , cLatestRevision
+ , cName
+ , cId
+ , cDescription
+ , cEngineType
+
+ -- ** ConfigurationId
+ , ConfigurationId
+ , configurationId
+ , ciId
+ , ciRevision
+
+ -- ** ConfigurationRevision
+ , ConfigurationRevision
+ , configurationRevision
+ , crRevision
+ , crDescription
+
+ -- ** Configurations
+ , Configurations
+ , configurations
+ , cPending
+ , cHistory
+ , cCurrent
+
+ -- ** SanitizationWarning
+ , SanitizationWarning
+ , sanitizationWarning
+ , swReason
+ , swAttributeName
+ , swElementName
+
+ -- ** User
+ , User
+ , user
+ , uGroups
+ , uConsoleAccess
+ , uUsername
+ , uPassword
+
+ -- ** UserPendingChanges
+ , UserPendingChanges
+ , userPendingChanges
+ , upcGroups
+ , upcConsoleAccess
+ , upcPendingChange
+
+ -- ** UserSummary
+ , UserSummary
+ , userSummary
+ , usUsername
+ , usPendingChange
+
+ -- ** WeeklyStartTime
+ , WeeklyStartTime
+ , weeklyStartTime
+ , wstTimeOfDay
+ , wstTimeZone
+ , wstDayOfWeek
+ ) where
+
+import Network.AWS.MQ.CreateBroker
+import Network.AWS.MQ.CreateConfiguration
+import Network.AWS.MQ.CreateUser
+import Network.AWS.MQ.DeleteBroker
+import Network.AWS.MQ.DeleteUser
+import Network.AWS.MQ.DescribeBroker
+import Network.AWS.MQ.DescribeConfiguration
+import Network.AWS.MQ.DescribeConfigurationRevision
+import Network.AWS.MQ.DescribeUser
+import Network.AWS.MQ.ListBrokers
+import Network.AWS.MQ.ListConfigurationRevisions
+import Network.AWS.MQ.ListConfigurations
+import Network.AWS.MQ.ListUsers
+import Network.AWS.MQ.RebootBroker
+import Network.AWS.MQ.Types
+import Network.AWS.MQ.UpdateBroker
+import Network.AWS.MQ.UpdateConfiguration
+import Network.AWS.MQ.UpdateUser
+import Network.AWS.MQ.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 'MQ'.
+-}
+
+{- $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.
+-}
diff --git a/gen/Network/AWS/MQ/CreateBroker.hs b/gen/Network/AWS/MQ/CreateBroker.hs
new file mode 100644
index 0000000..b175b17
--- /dev/null
+++ b/gen/Network/AWS/MQ/CreateBroker.hs
@@ -0,0 +1,266 @@
+{-# LANGUAGE DeriveDataTypeable #-}
+{-# LANGUAGE DeriveGeneric #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE TypeFamilies #-}
+
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- Derived from AWS service descriptions, licensed under Apache 2.0.
+
+-- |
+-- Module : Network.AWS.MQ.CreateBroker
+-- Copyright : (c) 2013-2018 Brendan Hay
+-- License : Mozilla Public License, v. 2.0.
+-- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
+-- Stability : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Creates a broker. Note: This API is asynchronous.
+module Network.AWS.MQ.CreateBroker
+ (
+ -- * Creating a Request
+ createBroker
+ , CreateBroker
+ -- * Request Lenses
+ , cbBrokerName
+ , cbEngineVersion
+ , cbPubliclyAccessible
+ , cbAutoMinorVersionUpgrade
+ , cbSecurityGroups
+ , cbUsers
+ , cbSubnetIds
+ , cbCreatorRequestId
+ , cbMaintenanceWindowStartTime
+ , cbDeploymentMode
+ , cbConfiguration
+ , cbEngineType
+ , cbHostInstanceType
+
+ -- * Destructuring the Response
+ , createBrokerResponse
+ , CreateBrokerResponse
+ -- * Response Lenses
+ , cbrsBrokerId
+ , cbrsBrokerARN
+ , cbrsResponseStatus
+ ) where
+
+import Network.AWS.Lens
+import Network.AWS.MQ.Types
+import Network.AWS.MQ.Types.Product
+import Network.AWS.Prelude
+import Network.AWS.Request
+import Network.AWS.Response
+
+-- | Creates a broker using the specified properties.
+--
+-- /See:/ 'createBroker' smart constructor.
+data CreateBroker = CreateBroker'
+ { _cbBrokerName :: !(Maybe Text)
+ , _cbEngineVersion :: !(Maybe Text)
+ , _cbPubliclyAccessible :: !(Maybe Bool)
+ , _cbAutoMinorVersionUpgrade :: !(Maybe Bool)
+ , _cbSecurityGroups :: !(Maybe [Text])
+ , _cbUsers :: !(Maybe [User])
+ , _cbSubnetIds :: !(Maybe [Text])
+ , _cbCreatorRequestId :: !(Maybe Text)
+ , _cbMaintenanceWindowStartTime :: !(Maybe WeeklyStartTime)
+ , _cbDeploymentMode :: !(Maybe DeploymentMode)
+ , _cbConfiguration :: !(Maybe ConfigurationId)
+ , _cbEngineType :: !(Maybe EngineType)
+ , _cbHostInstanceType :: !(Maybe Text)
+ } deriving (Eq, Read, Show, Data, Typeable, Generic)
+
+
+-- | Creates a value of 'CreateBroker' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'cbBrokerName' - Required. The name of the broker. This value must be unique in your AWS account, 1-50 characters long, must contain only letters, numbers, dashes, and underscores, and must not contain whitespaces, brackets, wildcard characters, or special characters.
+--
+-- * 'cbEngineVersion' - Required. The version of the broker engine. Note: Currently, Amazon MQ supports only 5.15.0.
+--
+-- * 'cbPubliclyAccessible' - Required. Enables connections from applications outside of the VPC that hosts the broker's subnets.
+--
+-- * 'cbAutoMinorVersionUpgrade' - Required. Enables automatic upgrades to new minor versions for brokers, as Apache releases the versions. The automatic upgrades occur during the maintenance window of the broker or after a manual broker reboot.
+--
+-- * 'cbSecurityGroups' - Required. The list of rules (1 minimum, 125 maximum) that authorize connections to brokers.
+--
+-- * 'cbUsers' - Required. The list of ActiveMQ users (persons or applications) who can access queues and topics. This value can contain only alphanumeric characters, dashes, periods, underscores, and tildes (- . _ ~). This value must be 2-100 characters long.
+--
+-- * 'cbSubnetIds' - Required. The list of groups (2 maximum) that define which subnets and IP ranges the broker can use from different Availability Zones. A SINGLE_INSTANCE deployment requires one subnet (for example, the default subnet). An ACTIVE_STANDBY_MULTI_AZ deployment requires two subnets.
+--
+-- * 'cbCreatorRequestId' - The unique ID that the requester receives for the created broker. Amazon MQ passes your ID with the API action. Note: We recommend using a Universally Unique Identifier (UUID) for the creatorRequestId. You may omit the creatorRequestId if your application doesn't require idempotency.
+--
+-- * 'cbMaintenanceWindowStartTime' - The parameters that determine the WeeklyStartTime.
+--
+-- * 'cbDeploymentMode' - Required. The deployment mode of the broker. Possible values: SINGLE_INSTANCE, ACTIVE_STANDBY_MULTI_AZ SINGLE_INSTANCE creates a single-instance broker in a single Availability Zone. ACTIVE_STANDBY_MULTI_AZ creates an active/standby broker for high availability.
+--
+-- * 'cbConfiguration' - A list of information about the configuration.
+--
+-- * 'cbEngineType' - Required. The type of broker engine. Note: Currently, Amazon MQ supports only ACTIVEMQ.
+--
+-- * 'cbHostInstanceType' - Required. The broker's instance type. Possible values: mq.t2.micro, mq.m4.large
+createBroker
+ :: CreateBroker
+createBroker =
+ CreateBroker'
+ { _cbBrokerName = Nothing
+ , _cbEngineVersion = Nothing
+ , _cbPubliclyAccessible = Nothing
+ , _cbAutoMinorVersionUpgrade = Nothing
+ , _cbSecurityGroups = Nothing
+ , _cbUsers = Nothing
+ , _cbSubnetIds = Nothing
+ , _cbCreatorRequestId = Nothing
+ , _cbMaintenanceWindowStartTime = Nothing
+ , _cbDeploymentMode = Nothing
+ , _cbConfiguration = Nothing
+ , _cbEngineType = Nothing
+ , _cbHostInstanceType = Nothing
+ }
+
+
+-- | Required. The name of the broker. This value must be unique in your AWS account, 1-50 characters long, must contain only letters, numbers, dashes, and underscores, and must not contain whitespaces, brackets, wildcard characters, or special characters.
+cbBrokerName :: Lens' CreateBroker (Maybe Text)
+cbBrokerName = lens _cbBrokerName (\ s a -> s{_cbBrokerName = a})
+
+-- | Required. The version of the broker engine. Note: Currently, Amazon MQ supports only 5.15.0.
+cbEngineVersion :: Lens' CreateBroker (Maybe Text)
+cbEngineVersion = lens _cbEngineVersion (\ s a -> s{_cbEngineVersion = a})
+
+-- | Required. Enables connections from applications outside of the VPC that hosts the broker's subnets.
+cbPubliclyAccessible :: Lens' CreateBroker (Maybe Bool)
+cbPubliclyAccessible = lens _cbPubliclyAccessible (\ s a -> s{_cbPubliclyAccessible = a})
+
+-- | Required. Enables automatic upgrades to new minor versions for brokers, as Apache releases the versions. The automatic upgrades occur during the maintenance window of the broker or after a manual broker reboot.
+cbAutoMinorVersionUpgrade :: Lens' CreateBroker (Maybe Bool)
+cbAutoMinorVersionUpgrade = lens _cbAutoMinorVersionUpgrade (\ s a -> s{_cbAutoMinorVersionUpgrade = a})
+
+-- | Required. The list of rules (1 minimum, 125 maximum) that authorize connections to brokers.
+cbSecurityGroups :: Lens' CreateBroker [Text]
+cbSecurityGroups = lens _cbSecurityGroups (\ s a -> s{_cbSecurityGroups = a}) . _Default . _Coerce
+
+-- | Required. The list of ActiveMQ users (persons or applications) who can access queues and topics. This value can contain only alphanumeric characters, dashes, periods, underscores, and tildes (- . _ ~). This value must be 2-100 characters long.
+cbUsers :: Lens' CreateBroker [User]
+cbUsers = lens _cbUsers (\ s a -> s{_cbUsers = a}) . _Default . _Coerce
+
+-- | Required. The list of groups (2 maximum) that define which subnets and IP ranges the broker can use from different Availability Zones. A SINGLE_INSTANCE deployment requires one subnet (for example, the default subnet). An ACTIVE_STANDBY_MULTI_AZ deployment requires two subnets.
+cbSubnetIds :: Lens' CreateBroker [Text]
+cbSubnetIds = lens _cbSubnetIds (\ s a -> s{_cbSubnetIds = a}) . _Default . _Coerce
+
+-- | The unique ID that the requester receives for the created broker. Amazon MQ passes your ID with the API action. Note: We recommend using a Universally Unique Identifier (UUID) for the creatorRequestId. You may omit the creatorRequestId if your application doesn't require idempotency.
+cbCreatorRequestId :: Lens' CreateBroker (Maybe Text)
+cbCreatorRequestId = lens _cbCreatorRequestId (\ s a -> s{_cbCreatorRequestId = a})
+
+-- | The parameters that determine the WeeklyStartTime.
+cbMaintenanceWindowStartTime :: Lens' CreateBroker (Maybe WeeklyStartTime)
+cbMaintenanceWindowStartTime = lens _cbMaintenanceWindowStartTime (\ s a -> s{_cbMaintenanceWindowStartTime = a})
+
+-- | Required. The deployment mode of the broker. Possible values: SINGLE_INSTANCE, ACTIVE_STANDBY_MULTI_AZ SINGLE_INSTANCE creates a single-instance broker in a single Availability Zone. ACTIVE_STANDBY_MULTI_AZ creates an active/standby broker for high availability.
+cbDeploymentMode :: Lens' CreateBroker (Maybe DeploymentMode)
+cbDeploymentMode = lens _cbDeploymentMode (\ s a -> s{_cbDeploymentMode = a})
+
+-- | A list of information about the configuration.
+cbConfiguration :: Lens' CreateBroker (Maybe ConfigurationId)
+cbConfiguration = lens _cbConfiguration (\ s a -> s{_cbConfiguration = a})
+
+-- | Required. The type of broker engine. Note: Currently, Amazon MQ supports only ACTIVEMQ.
+cbEngineType :: Lens' CreateBroker (Maybe EngineType)
+cbEngineType = lens _cbEngineType (\ s a -> s{_cbEngineType = a})
+
+-- | Required. The broker's instance type. Possible values: mq.t2.micro, mq.m4.large
+cbHostInstanceType :: Lens' CreateBroker (Maybe Text)
+cbHostInstanceType = lens _cbHostInstanceType (\ s a -> s{_cbHostInstanceType = a})
+
+instance AWSRequest CreateBroker where
+ type Rs CreateBroker = CreateBrokerResponse
+ request = postJSON mq
+ response
+ = receiveJSON
+ (\ s h x ->
+ CreateBrokerResponse' <$>
+ (x .?> "brokerId") <*> (x .?> "brokerArn") <*>
+ (pure (fromEnum s)))
+
+instance Hashable CreateBroker where
+
+instance NFData CreateBroker where
+
+instance ToHeaders CreateBroker where
+ toHeaders
+ = const
+ (mconcat
+ ["Content-Type" =#
+ ("application/x-amz-json-1.1" :: ByteString)])
+
+instance ToJSON CreateBroker where
+ toJSON CreateBroker'{..}
+ = object
+ (catMaybes
+ [("brokerName" .=) <$> _cbBrokerName,
+ ("engineVersion" .=) <$> _cbEngineVersion,
+ ("publiclyAccessible" .=) <$> _cbPubliclyAccessible,
+ ("autoMinorVersionUpgrade" .=) <$>
+ _cbAutoMinorVersionUpgrade,
+ ("securityGroups" .=) <$> _cbSecurityGroups,
+ ("users" .=) <$> _cbUsers,
+ ("subnetIds" .=) <$> _cbSubnetIds,
+ ("creatorRequestId" .=) <$> _cbCreatorRequestId,
+ ("maintenanceWindowStartTime" .=) <$>
+ _cbMaintenanceWindowStartTime,
+ ("deploymentMode" .=) <$> _cbDeploymentMode,
+ ("configuration" .=) <$> _cbConfiguration,
+ ("engineType" .=) <$> _cbEngineType,
+ ("hostInstanceType" .=) <$> _cbHostInstanceType])
+
+instance ToPath CreateBroker where
+ toPath = const "/v1/brokers"
+
+instance ToQuery CreateBroker where
+ toQuery = const mempty
+
+-- | /See:/ 'createBrokerResponse' smart constructor.
+data CreateBrokerResponse = CreateBrokerResponse'
+ { _cbrsBrokerId :: !(Maybe Text)
+ , _cbrsBrokerARN :: !(Maybe Text)
+ , _cbrsResponseStatus :: !Int
+ } deriving (Eq, Read, Show, Data, Typeable, Generic)
+
+
+-- | Creates a value of 'CreateBrokerResponse' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'cbrsBrokerId' - The unique ID that Amazon MQ generates for the broker.
+--
+-- * 'cbrsBrokerARN' - The Amazon Resource Name (ARN) of the broker.
+--
+-- * 'cbrsResponseStatus' - -- | The response status code.
+createBrokerResponse
+ :: Int -- ^ 'cbrsResponseStatus'
+ -> CreateBrokerResponse
+createBrokerResponse pResponseStatus_ =
+ CreateBrokerResponse'
+ { _cbrsBrokerId = Nothing
+ , _cbrsBrokerARN = Nothing
+ , _cbrsResponseStatus = pResponseStatus_
+ }
+
+
+-- | The unique ID that Amazon MQ generates for the broker.
+cbrsBrokerId :: Lens' CreateBrokerResponse (Maybe Text)
+cbrsBrokerId = lens _cbrsBrokerId (\ s a -> s{_cbrsBrokerId = a})
+
+-- | The Amazon Resource Name (ARN) of the broker.
+cbrsBrokerARN :: Lens' CreateBrokerResponse (Maybe Text)
+cbrsBrokerARN = lens _cbrsBrokerARN (\ s a -> s{_cbrsBrokerARN = a})
+
+-- | -- | The response status code.
+cbrsResponseStatus :: Lens' CreateBrokerResponse Int
+cbrsResponseStatus = lens _cbrsResponseStatus (\ s a -> s{_cbrsResponseStatus = a})
+
+instance NFData CreateBrokerResponse where
diff --git a/gen/Network/AWS/MQ/CreateConfiguration.hs b/gen/Network/AWS/MQ/CreateConfiguration.hs
new file mode 100644
index 0000000..8d7891f
--- /dev/null
+++ b/gen/Network/AWS/MQ/CreateConfiguration.hs
@@ -0,0 +1,182 @@
+{-# LANGUAGE DeriveDataTypeable #-}
+{-# LANGUAGE DeriveGeneric #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE TypeFamilies #-}
+
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- Derived from AWS service descriptions, licensed under Apache 2.0.
+
+-- |
+-- Module : Network.AWS.MQ.CreateConfiguration
+-- Copyright : (c) 2013-2018 Brendan Hay
+-- License : Mozilla Public License, v. 2.0.
+-- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
+-- Stability : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Creates a new configuration for the specified configuration name. Amazon MQ uses the default configuration (the engine type and version). Note: If the configuration name already exists, Amazon MQ doesn't create a configuration.
+module Network.AWS.MQ.CreateConfiguration
+ (
+ -- * Creating a Request
+ createConfiguration
+ , CreateConfiguration
+ -- * Request Lenses
+ , ccEngineVersion
+ , ccName
+ , ccEngineType
+
+ -- * Destructuring the Response
+ , createConfigurationResponse
+ , CreateConfigurationResponse
+ -- * Response Lenses
+ , ccrsARN
+ , ccrsLatestRevision
+ , ccrsName
+ , ccrsId
+ , ccrsResponseStatus
+ ) where
+
+import Network.AWS.Lens
+import Network.AWS.MQ.Types
+import Network.AWS.MQ.Types.Product
+import Network.AWS.Prelude
+import Network.AWS.Request
+import Network.AWS.Response
+
+-- | Creates a new configuration for the specified configuration name. Amazon MQ uses the default configuration (the engine type and version). Note: If the configuration name already exists, Amazon MQ doesn't create a configuration.
+--
+-- /See:/ 'createConfiguration' smart constructor.
+data CreateConfiguration = CreateConfiguration'
+ { _ccEngineVersion :: !(Maybe Text)
+ , _ccName :: !(Maybe Text)
+ , _ccEngineType :: !(Maybe EngineType)
+ } deriving (Eq, Read, Show, Data, Typeable, Generic)
+
+
+-- | Creates a value of 'CreateConfiguration' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'ccEngineVersion' - Required. The version of the broker engine. Note: Currently, Amazon MQ supports only 5.15.0.
+--
+-- * 'ccName' - Required. The name of the configuration. This value can contain only alphanumeric characters, dashes, periods, underscores, and tildes (- . _ ~). This value must be 1-150 characters long.
+--
+-- * 'ccEngineType' - Required. The type of broker engine. Note: Currently, Amazon MQ supports only ACTIVEMQ.
+createConfiguration
+ :: CreateConfiguration
+createConfiguration =
+ CreateConfiguration'
+ {_ccEngineVersion = Nothing, _ccName = Nothing, _ccEngineType = Nothing}
+
+
+-- | Required. The version of the broker engine. Note: Currently, Amazon MQ supports only 5.15.0.
+ccEngineVersion :: Lens' CreateConfiguration (Maybe Text)
+ccEngineVersion = lens _ccEngineVersion (\ s a -> s{_ccEngineVersion = a})
+
+-- | Required. The name of the configuration. This value can contain only alphanumeric characters, dashes, periods, underscores, and tildes (- . _ ~). This value must be 1-150 characters long.
+ccName :: Lens' CreateConfiguration (Maybe Text)
+ccName = lens _ccName (\ s a -> s{_ccName = a})
+
+-- | Required. The type of broker engine. Note: Currently, Amazon MQ supports only ACTIVEMQ.
+ccEngineType :: Lens' CreateConfiguration (Maybe EngineType)
+ccEngineType = lens _ccEngineType (\ s a -> s{_ccEngineType = a})
+
+instance AWSRequest CreateConfiguration where
+ type Rs CreateConfiguration =
+ CreateConfigurationResponse
+ request = postJSON mq
+ response
+ = receiveJSON
+ (\ s h x ->
+ CreateConfigurationResponse' <$>
+ (x .?> "arn") <*> (x .?> "latestRevision") <*>
+ (x .?> "name")
+ <*> (x .?> "id")
+ <*> (pure (fromEnum s)))
+
+instance Hashable CreateConfiguration where
+
+instance NFData CreateConfiguration where
+
+instance ToHeaders CreateConfiguration where
+ toHeaders
+ = const
+ (mconcat
+ ["Content-Type" =#
+ ("application/x-amz-json-1.1" :: ByteString)])
+
+instance ToJSON CreateConfiguration where
+ toJSON CreateConfiguration'{..}
+ = object
+ (catMaybes
+ [("engineVersion" .=) <$> _ccEngineVersion,
+ ("name" .=) <$> _ccName,
+ ("engineType" .=) <$> _ccEngineType])
+
+instance ToPath CreateConfiguration where
+ toPath = const "/v1/configurations"
+
+instance ToQuery CreateConfiguration where
+ toQuery = const mempty
+
+-- | /See:/ 'createConfigurationResponse' smart constructor.
+data CreateConfigurationResponse = CreateConfigurationResponse'
+ { _ccrsARN :: !(Maybe Text)
+ , _ccrsLatestRevision :: !(Maybe ConfigurationRevision)
+ , _ccrsName :: !(Maybe Text)
+ , _ccrsId :: !(Maybe Text)
+ , _ccrsResponseStatus :: !Int
+ } deriving (Eq, Read, Show, Data, Typeable, Generic)
+
+
+-- | Creates a value of 'CreateConfigurationResponse' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'ccrsARN' - Required. The Amazon Resource Name (ARN) of the configuration.
+--
+-- * 'ccrsLatestRevision' - The latest revision of the configuration.
+--
+-- * 'ccrsName' - Required. The name of the configuration. This value can contain only alphanumeric characters, dashes, periods, underscores, and tildes (- . _ ~). This value must be 1-150 characters long.
+--
+-- * 'ccrsId' - Required. The unique ID that Amazon MQ generates for the configuration.
+--
+-- * 'ccrsResponseStatus' - -- | The response status code.
+createConfigurationResponse
+ :: Int -- ^ 'ccrsResponseStatus'
+ -> CreateConfigurationResponse
+createConfigurationResponse pResponseStatus_ =
+ CreateConfigurationResponse'
+ { _ccrsARN = Nothing
+ , _ccrsLatestRevision = Nothing
+ , _ccrsName = Nothing
+ , _ccrsId = Nothing
+ , _ccrsResponseStatus = pResponseStatus_
+ }
+
+
+-- | Required. The Amazon Resource Name (ARN) of the configuration.
+ccrsARN :: Lens' CreateConfigurationResponse (Maybe Text)
+ccrsARN = lens _ccrsARN (\ s a -> s{_ccrsARN = a})
+
+-- | The latest revision of the configuration.
+ccrsLatestRevision :: Lens' CreateConfigurationResponse (Maybe ConfigurationRevision)
+ccrsLatestRevision = lens _ccrsLatestRevision (\ s a -> s{_ccrsLatestRevision = a})
+
+-- | Required. The name of the configuration. This value can contain only alphanumeric characters, dashes, periods, underscores, and tildes (- . _ ~). This value must be 1-150 characters long.
+ccrsName :: Lens' CreateConfigurationResponse (Maybe Text)
+ccrsName = lens _ccrsName (\ s a -> s{_ccrsName = a})
+
+-- | Required. The unique ID that Amazon MQ generates for the configuration.
+ccrsId :: Lens' CreateConfigurationResponse (Maybe Text)
+ccrsId = lens _ccrsId (\ s a -> s{_ccrsId = a})
+
+-- | -- | The response status code.
+ccrsResponseStatus :: Lens' CreateConfigurationResponse Int
+ccrsResponseStatus = lens _ccrsResponseStatus (\ s a -> s{_ccrsResponseStatus = a})
+
+instance NFData CreateConfigurationResponse where
diff --git a/gen/Network/AWS/MQ/CreateUser.hs b/gen/Network/AWS/MQ/CreateUser.hs
new file mode 100644
index 0000000..8294879
--- /dev/null
+++ b/gen/Network/AWS/MQ/CreateUser.hs
@@ -0,0 +1,165 @@
+{-# LANGUAGE DeriveDataTypeable #-}
+{-# LANGUAGE DeriveGeneric #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE TypeFamilies #-}
+
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- Derived from AWS service descriptions, licensed under Apache 2.0.
+
+-- |
+-- Module : Network.AWS.MQ.CreateUser
+-- Copyright : (c) 2013-2018 Brendan Hay
+-- License : Mozilla Public License, v. 2.0.
+-- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
+-- Stability : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Creates an ActiveMQ user.
+module Network.AWS.MQ.CreateUser
+ (
+ -- * Creating a Request
+ createUser
+ , CreateUser
+ -- * Request Lenses
+ , cuGroups
+ , cuConsoleAccess
+ , cuPassword
+ , cuUsername
+ , cuBrokerId
+
+ -- * Destructuring the Response
+ , createUserResponse
+ , CreateUserResponse
+ -- * Response Lenses
+ , cursResponseStatus
+ ) where
+
+import Network.AWS.Lens
+import Network.AWS.MQ.Types
+import Network.AWS.MQ.Types.Product
+import Network.AWS.Prelude
+import Network.AWS.Request
+import Network.AWS.Response
+
+-- | Creates a new ActiveMQ user.
+--
+-- /See:/ 'createUser' smart constructor.
+data CreateUser = CreateUser'
+ { _cuGroups :: !(Maybe [Text])
+ , _cuConsoleAccess :: !(Maybe Bool)
+ , _cuPassword :: !(Maybe Text)
+ , _cuUsername :: !Text
+ , _cuBrokerId :: !Text
+ } deriving (Eq, Read, Show, Data, Typeable, Generic)
+
+
+-- | Creates a value of 'CreateUser' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'cuGroups' - The list of groups (20 maximum) to which the ActiveMQ user belongs. This value can contain only alphanumeric characters, dashes, periods, underscores, and tildes (- . _ ~). This value must be 2-100 characters long.
+--
+-- * 'cuConsoleAccess' - Enables access to the the ActiveMQ Web Console for the ActiveMQ user.
+--
+-- * 'cuPassword' - Required. The password of the user. This value must be at least 12 characters long, must contain at least 4 unique characters, and must not contain commas.
+--
+-- * 'cuUsername' - The username of the ActiveMQ user. This value can contain only alphanumeric characters, dashes, periods, underscores, and tildes (- . _ ~). This value must be 2-100 characters long.
+--
+-- * 'cuBrokerId' - The unique ID that Amazon MQ generates for the broker.
+createUser
+ :: Text -- ^ 'cuUsername'
+ -> Text -- ^ 'cuBrokerId'
+ -> CreateUser
+createUser pUsername_ pBrokerId_ =
+ CreateUser'
+ { _cuGroups = Nothing
+ , _cuConsoleAccess = Nothing
+ , _cuPassword = Nothing
+ , _cuUsername = pUsername_
+ , _cuBrokerId = pBrokerId_
+ }
+
+
+-- | The list of groups (20 maximum) to which the ActiveMQ user belongs. This value can contain only alphanumeric characters, dashes, periods, underscores, and tildes (- . _ ~). This value must be 2-100 characters long.
+cuGroups :: Lens' CreateUser [Text]
+cuGroups = lens _cuGroups (\ s a -> s{_cuGroups = a}) . _Default . _Coerce
+
+-- | Enables access to the the ActiveMQ Web Console for the ActiveMQ user.
+cuConsoleAccess :: Lens' CreateUser (Maybe Bool)
+cuConsoleAccess = lens _cuConsoleAccess (\ s a -> s{_cuConsoleAccess = a})
+
+-- | Required. The password of the user. This value must be at least 12 characters long, must contain at least 4 unique characters, and must not contain commas.
+cuPassword :: Lens' CreateUser (Maybe Text)
+cuPassword = lens _cuPassword (\ s a -> s{_cuPassword = a})
+
+-- | The username of the ActiveMQ user. This value can contain only alphanumeric characters, dashes, periods, underscores, and tildes (- . _ ~). This value must be 2-100 characters long.
+cuUsername :: Lens' CreateUser Text
+cuUsername = lens _cuUsername (\ s a -> s{_cuUsername = a})
+
+-- | The unique ID that Amazon MQ generates for the broker.
+cuBrokerId :: Lens' CreateUser Text
+cuBrokerId = lens _cuBrokerId (\ s a -> s{_cuBrokerId = a})
+
+instance AWSRequest CreateUser where
+ type Rs CreateUser = CreateUserResponse
+ request = postJSON mq
+ response
+ = receiveEmpty
+ (\ s h x ->
+ CreateUserResponse' <$> (pure (fromEnum s)))
+
+instance Hashable CreateUser where
+
+instance NFData CreateUser where
+
+instance ToHeaders CreateUser where
+ toHeaders
+ = const
+ (mconcat
+ ["Content-Type" =#
+ ("application/x-amz-json-1.1" :: ByteString)])
+
+instance ToJSON CreateUser where
+ toJSON CreateUser'{..}
+ = object
+ (catMaybes
+ [("groups" .=) <$> _cuGroups,
+ ("consoleAccess" .=) <$> _cuConsoleAccess,
+ ("password" .=) <$> _cuPassword])
+
+instance ToPath CreateUser where
+ toPath CreateUser'{..}
+ = mconcat
+ ["/v1/brokers/", toBS _cuBrokerId, "/users/",
+ toBS _cuUsername]
+
+instance ToQuery CreateUser where
+ toQuery = const mempty
+
+-- | /See:/ 'createUserResponse' smart constructor.
+newtype CreateUserResponse = CreateUserResponse'
+ { _cursResponseStatus :: Int
+ } deriving (Eq, Read, Show, Data, Typeable, Generic)
+
+
+-- | Creates a value of 'CreateUserResponse' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'cursResponseStatus' - -- | The response status code.
+createUserResponse
+ :: Int -- ^ 'cursResponseStatus'
+ -> CreateUserResponse
+createUserResponse pResponseStatus_ =
+ CreateUserResponse' {_cursResponseStatus = pResponseStatus_}
+
+
+-- | -- | The response status code.
+cursResponseStatus :: Lens' CreateUserResponse Int
+cursResponseStatus = lens _cursResponseStatus (\ s a -> s{_cursResponseStatus = a})
+
+instance NFData CreateUserResponse where
diff --git a/gen/Network/AWS/MQ/DeleteBroker.hs b/gen/Network/AWS/MQ/DeleteBroker.hs
new file mode 100644
index 0000000..5b78255
--- /dev/null
+++ b/gen/Network/AWS/MQ/DeleteBroker.hs
@@ -0,0 +1,123 @@
+{-# LANGUAGE DeriveDataTypeable #-}
+{-# LANGUAGE DeriveGeneric #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE TypeFamilies #-}
+
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- Derived from AWS service descriptions, licensed under Apache 2.0.
+
+-- |
+-- Module : Network.AWS.MQ.DeleteBroker
+-- Copyright : (c) 2013-2018 Brendan Hay
+-- License : Mozilla Public License, v. 2.0.
+-- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
+-- Stability : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Deletes a broker. Note: This API is asynchronous.
+module Network.AWS.MQ.DeleteBroker
+ (
+ -- * Creating a Request
+ deleteBroker
+ , DeleteBroker
+ -- * Request Lenses
+ , dbBrokerId
+
+ -- * Destructuring the Response
+ , deleteBrokerResponse
+ , DeleteBrokerResponse
+ -- * Response Lenses
+ , drsBrokerId
+ , drsResponseStatus
+ ) where
+
+import Network.AWS.Lens
+import Network.AWS.MQ.Types
+import Network.AWS.MQ.Types.Product
+import Network.AWS.Prelude
+import Network.AWS.Request
+import Network.AWS.Response
+
+-- | /See:/ 'deleteBroker' smart constructor.
+newtype DeleteBroker = DeleteBroker'
+ { _dbBrokerId :: Text
+ } deriving (Eq, Read, Show, Data, Typeable, Generic)
+
+
+-- | Creates a value of 'DeleteBroker' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'dbBrokerId' - The name of the broker. This value must be unique in your AWS account, 1-50 characters long, must contain only letters, numbers, dashes, and underscores, and must not contain whitespaces, brackets, wildcard characters, or special characters.
+deleteBroker
+ :: Text -- ^ 'dbBrokerId'
+ -> DeleteBroker
+deleteBroker pBrokerId_ = DeleteBroker' {_dbBrokerId = pBrokerId_}
+
+
+-- | The name of the broker. This value must be unique in your AWS account, 1-50 characters long, must contain only letters, numbers, dashes, and underscores, and must not contain whitespaces, brackets, wildcard characters, or special characters.
+dbBrokerId :: Lens' DeleteBroker Text
+dbBrokerId = lens _dbBrokerId (\ s a -> s{_dbBrokerId = a})
+
+instance AWSRequest DeleteBroker where
+ type Rs DeleteBroker = DeleteBrokerResponse
+ request = delete mq
+ response
+ = receiveJSON
+ (\ s h x ->
+ DeleteBrokerResponse' <$>
+ (x .?> "brokerId") <*> (pure (fromEnum s)))
+
+instance Hashable DeleteBroker where
+
+instance NFData DeleteBroker where
+
+instance ToHeaders DeleteBroker where
+ toHeaders
+ = const
+ (mconcat
+ ["Content-Type" =#
+ ("application/x-amz-json-1.1" :: ByteString)])
+
+instance ToPath DeleteBroker where
+ toPath DeleteBroker'{..}
+ = mconcat ["/v1/brokers/", toBS _dbBrokerId]
+
+instance ToQuery DeleteBroker where
+ toQuery = const mempty
+
+-- | /See:/ 'deleteBrokerResponse' smart constructor.
+data DeleteBrokerResponse = DeleteBrokerResponse'
+ { _drsBrokerId :: !(Maybe Text)
+ , _drsResponseStatus :: !Int
+ } deriving (Eq, Read, Show, Data, Typeable, Generic)
+
+
+-- | Creates a value of 'DeleteBrokerResponse' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'drsBrokerId' - The unique ID that Amazon MQ generates for the broker.
+--
+-- * 'drsResponseStatus' - -- | The response status code.
+deleteBrokerResponse
+ :: Int -- ^ 'drsResponseStatus'
+ -> DeleteBrokerResponse
+deleteBrokerResponse pResponseStatus_ =
+ DeleteBrokerResponse'
+ {_drsBrokerId = Nothing, _drsResponseStatus = pResponseStatus_}
+
+
+-- | The unique ID that Amazon MQ generates for the broker.
+drsBrokerId :: Lens' DeleteBrokerResponse (Maybe Text)
+drsBrokerId = lens _drsBrokerId (\ s a -> s{_drsBrokerId = a})
+
+-- | -- | The response status code.
+drsResponseStatus :: Lens' DeleteBrokerResponse Int
+drsResponseStatus = lens _drsResponseStatus (\ s a -> s{_drsResponseStatus = a})
+
+instance NFData DeleteBrokerResponse where
diff --git a/gen/Network/AWS/MQ/DeleteUser.hs b/gen/Network/AWS/MQ/DeleteUser.hs
new file mode 100644
index 0000000..5e8fad3
--- /dev/null
+++ b/gen/Network/AWS/MQ/DeleteUser.hs
@@ -0,0 +1,125 @@
+{-# LANGUAGE DeriveDataTypeable #-}
+{-# LANGUAGE DeriveGeneric #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE TypeFamilies #-}
+
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- Derived from AWS service descriptions, licensed under Apache 2.0.
+
+-- |
+-- Module : Network.AWS.MQ.DeleteUser
+-- Copyright : (c) 2013-2018 Brendan Hay
+-- License : Mozilla Public License, v. 2.0.
+-- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
+-- Stability : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Deletes an ActiveMQ user.
+module Network.AWS.MQ.DeleteUser
+ (
+ -- * Creating a Request
+ deleteUser
+ , DeleteUser
+ -- * Request Lenses
+ , dUsername
+ , dBrokerId
+
+ -- * Destructuring the Response
+ , deleteUserResponse
+ , DeleteUserResponse
+ -- * Response Lenses
+ , delrsResponseStatus
+ ) where
+
+import Network.AWS.Lens
+import Network.AWS.MQ.Types
+import Network.AWS.MQ.Types.Product
+import Network.AWS.Prelude
+import Network.AWS.Request
+import Network.AWS.Response
+
+-- | /See:/ 'deleteUser' smart constructor.
+data DeleteUser = DeleteUser'
+ { _dUsername :: !Text
+ , _dBrokerId :: !Text
+ } deriving (Eq, Read, Show, Data, Typeable, Generic)
+
+
+-- | Creates a value of 'DeleteUser' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'dUsername' - The username of the ActiveMQ user. This value can contain only alphanumeric characters, dashes, periods, underscores, and tildes (- . _ ~). This value must be 2-100 characters long.
+--
+-- * 'dBrokerId' - The unique ID that Amazon MQ generates for the broker.
+deleteUser
+ :: Text -- ^ 'dUsername'
+ -> Text -- ^ 'dBrokerId'
+ -> DeleteUser
+deleteUser pUsername_ pBrokerId_ =
+ DeleteUser' {_dUsername = pUsername_, _dBrokerId = pBrokerId_}
+
+
+-- | The username of the ActiveMQ user. This value can contain only alphanumeric characters, dashes, periods, underscores, and tildes (- . _ ~). This value must be 2-100 characters long.
+dUsername :: Lens' DeleteUser Text
+dUsername = lens _dUsername (\ s a -> s{_dUsername = a})
+
+-- | The unique ID that Amazon MQ generates for the broker.
+dBrokerId :: Lens' DeleteUser Text
+dBrokerId = lens _dBrokerId (\ s a -> s{_dBrokerId = a})
+
+instance AWSRequest DeleteUser where
+ type Rs DeleteUser = DeleteUserResponse
+ request = delete mq
+ response
+ = receiveEmpty
+ (\ s h x ->
+ DeleteUserResponse' <$> (pure (fromEnum s)))
+
+instance Hashable DeleteUser where
+
+instance NFData DeleteUser where
+
+instance ToHeaders DeleteUser where
+ toHeaders
+ = const
+ (mconcat
+ ["Content-Type" =#
+ ("application/x-amz-json-1.1" :: ByteString)])
+
+instance ToPath DeleteUser where
+ toPath DeleteUser'{..}
+ = mconcat
+ ["/v1/brokers/", toBS _dBrokerId, "/users/",
+ toBS _dUsername]
+
+instance ToQuery DeleteUser where
+ toQuery = const mempty
+
+-- | /See:/ 'deleteUserResponse' smart constructor.
+newtype DeleteUserResponse = DeleteUserResponse'
+ { _delrsResponseStatus :: Int
+ } deriving (Eq, Read, Show, Data, Typeable, Generic)
+
+
+-- | Creates a value of 'DeleteUserResponse' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'delrsResponseStatus' - -- | The response status code.
+deleteUserResponse
+ :: Int -- ^ 'delrsResponseStatus'
+ -> DeleteUserResponse
+deleteUserResponse pResponseStatus_ =
+ DeleteUserResponse' {_delrsResponseStatus = pResponseStatus_}
+
+
+-- | -- | The response status code.
+delrsResponseStatus :: Lens' DeleteUserResponse Int
+delrsResponseStatus = lens _delrsResponseStatus (\ s a -> s{_delrsResponseStatus = a})
+
+instance NFData DeleteUserResponse where
diff --git a/gen/Network/AWS/MQ/DescribeBroker.hs b/gen/Network/AWS/MQ/DescribeBroker.hs
new file mode 100644
index 0000000..37cb233
--- /dev/null
+++ b/gen/Network/AWS/MQ/DescribeBroker.hs
@@ -0,0 +1,275 @@
+{-# LANGUAGE DeriveDataTypeable #-}
+{-# LANGUAGE DeriveGeneric #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE TypeFamilies #-}
+
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- Derived from AWS service descriptions, licensed under Apache 2.0.
+
+-- |
+-- Module : Network.AWS.MQ.DescribeBroker
+-- Copyright : (c) 2013-2018 Brendan Hay
+-- License : Mozilla Public License, v. 2.0.
+-- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
+-- Stability : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Returns information about the specified broker.
+module Network.AWS.MQ.DescribeBroker
+ (
+ -- * Creating a Request
+ describeBroker
+ , DescribeBroker
+ -- * Request Lenses
+ , desBrokerId
+
+ -- * Destructuring the Response
+ , describeBrokerResponse
+ , DescribeBrokerResponse
+ -- * Response Lenses
+ , dbrsBrokerName
+ , dbrsEngineVersion
+ , dbrsBrokerState
+ , dbrsPubliclyAccessible
+ , dbrsAutoMinorVersionUpgrade
+ , dbrsSecurityGroups
+ , dbrsUsers
+ , dbrsSubnetIds
+ , dbrsConfigurations
+ , dbrsMaintenanceWindowStartTime
+ , dbrsDeploymentMode
+ , dbrsBrokerId
+ , dbrsEngineType
+ , dbrsBrokerARN
+ , dbrsBrokerInstances
+ , dbrsHostInstanceType
+ , dbrsResponseStatus
+ ) where
+
+import Network.AWS.Lens
+import Network.AWS.MQ.Types
+import Network.AWS.MQ.Types.Product
+import Network.AWS.Prelude
+import Network.AWS.Request
+import Network.AWS.Response
+
+-- | /See:/ 'describeBroker' smart constructor.
+newtype DescribeBroker = DescribeBroker'
+ { _desBrokerId :: Text
+ } deriving (Eq, Read, Show, Data, Typeable, Generic)
+
+
+-- | Creates a value of 'DescribeBroker' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'desBrokerId' - The name of the broker. This value must be unique in your AWS account, 1-50 characters long, must contain only letters, numbers, dashes, and underscores, and must not contain whitespaces, brackets, wildcard characters, or special characters.
+describeBroker
+ :: Text -- ^ 'desBrokerId'
+ -> DescribeBroker
+describeBroker pBrokerId_ = DescribeBroker' {_desBrokerId = pBrokerId_}
+
+
+-- | The name of the broker. This value must be unique in your AWS account, 1-50 characters long, must contain only letters, numbers, dashes, and underscores, and must not contain whitespaces, brackets, wildcard characters, or special characters.
+desBrokerId :: Lens' DescribeBroker Text
+desBrokerId = lens _desBrokerId (\ s a -> s{_desBrokerId = a})
+
+instance AWSRequest DescribeBroker where
+ type Rs DescribeBroker = DescribeBrokerResponse
+ request = get mq
+ response
+ = receiveJSON
+ (\ s h x ->
+ DescribeBrokerResponse' <$>
+ (x .?> "brokerName") <*> (x .?> "engineVersion") <*>
+ (x .?> "brokerState")
+ <*> (x .?> "publiclyAccessible")
+ <*> (x .?> "autoMinorVersionUpgrade")
+ <*> (x .?> "securityGroups" .!@ mempty)
+ <*> (x .?> "users" .!@ mempty)
+ <*> (x .?> "subnetIds" .!@ mempty)
+ <*> (x .?> "configurations")
+ <*> (x .?> "maintenanceWindowStartTime")
+ <*> (x .?> "deploymentMode")
+ <*> (x .?> "brokerId")
+ <*> (x .?> "engineType")
+ <*> (x .?> "brokerArn")
+ <*> (x .?> "brokerInstances" .!@ mempty)
+ <*> (x .?> "hostInstanceType")
+ <*> (pure (fromEnum s)))
+
+instance Hashable DescribeBroker where
+
+instance NFData DescribeBroker where
+
+instance ToHeaders DescribeBroker where
+ toHeaders
+ = const
+ (mconcat
+ ["Content-Type" =#
+ ("application/x-amz-json-1.1" :: ByteString)])
+
+instance ToPath DescribeBroker where
+ toPath DescribeBroker'{..}
+ = mconcat ["/v1/brokers/", toBS _desBrokerId]
+
+instance ToQuery DescribeBroker where
+ toQuery = const mempty
+
+-- | /See:/ 'describeBrokerResponse' smart constructor.
+data DescribeBrokerResponse = DescribeBrokerResponse'
+ { _dbrsBrokerName :: !(Maybe Text)
+ , _dbrsEngineVersion :: !(Maybe Text)
+ , _dbrsBrokerState :: !(Maybe BrokerState)
+ , _dbrsPubliclyAccessible :: !(Maybe Bool)
+ , _dbrsAutoMinorVersionUpgrade :: !(Maybe Bool)
+ , _dbrsSecurityGroups :: !(Maybe [Text])
+ , _dbrsUsers :: !(Maybe [UserSummary])
+ , _dbrsSubnetIds :: !(Maybe [Text])
+ , _dbrsConfigurations :: !(Maybe Configurations)
+ , _dbrsMaintenanceWindowStartTime :: !(Maybe WeeklyStartTime)
+ , _dbrsDeploymentMode :: !(Maybe DeploymentMode)
+ , _dbrsBrokerId :: !(Maybe Text)
+ , _dbrsEngineType :: !(Maybe EngineType)
+ , _dbrsBrokerARN :: !(Maybe Text)
+ , _dbrsBrokerInstances :: !(Maybe [BrokerInstance])
+ , _dbrsHostInstanceType :: !(Maybe Text)
+ , _dbrsResponseStatus :: !Int
+ } deriving (Eq, Read, Show, Data, Typeable, Generic)
+
+
+-- | Creates a value of 'DescribeBrokerResponse' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'dbrsBrokerName' - The name of the broker. This value must be unique in your AWS account, 1-50 characters long, must contain only letters, numbers, dashes, and underscores, and must not contain whitespaces, brackets, wildcard characters, or special characters.
+--
+-- * 'dbrsEngineVersion' - The version of the broker engine. Note: Currently, Amazon MQ supports only 5.15.0.
+--
+-- * 'dbrsBrokerState' - The status of the broker. Possible values: CREATION_IN_PROGRESS, CREATION_FAILED, DELETION_IN_PROGRESS, RUNNING, REBOOT_IN_PROGRESS
+--
+-- * 'dbrsPubliclyAccessible' - Required. Enables connections from applications outside of the VPC that hosts the broker's subnets.
+--
+-- * 'dbrsAutoMinorVersionUpgrade' - Required. Enables automatic upgrades to new minor versions for brokers, as Apache releases the versions. The automatic upgrades occur during the maintenance window of the broker or after a manual broker reboot.
+--
+-- * 'dbrsSecurityGroups' - Required. The list of rules (1 minimum, 125 maximum) that authorize connections to brokers.
+--
+-- * 'dbrsUsers' - The list of all ActiveMQ usernames for the specified broker.
+--
+-- * 'dbrsSubnetIds' - The list of groups (2 maximum) that define which subnets and IP ranges the broker can use from different Availability Zones. A SINGLE_INSTANCE deployment requires one subnet (for example, the default subnet). An ACTIVE_STANDBY_MULTI_AZ deployment requires two subnets.
+--
+-- * 'dbrsConfigurations' - The list of all revisions for the specified configuration.
+--
+-- * 'dbrsMaintenanceWindowStartTime' - The parameters that determine the WeeklyStartTime.
+--
+-- * 'dbrsDeploymentMode' - Required. The deployment mode of the broker. Possible values: SINGLE_INSTANCE, ACTIVE_STANDBY_MULTI_AZ SINGLE_INSTANCE creates a single-instance broker in a single Availability Zone. ACTIVE_STANDBY_MULTI_AZ creates an active/standby broker for high availability.
+--
+-- * 'dbrsBrokerId' - The unique ID that Amazon MQ generates for the broker.
+--
+-- * 'dbrsEngineType' - Required. The type of broker engine. Note: Currently, Amazon MQ supports only ACTIVEMQ.
+--
+-- * 'dbrsBrokerARN' - The Amazon Resource Name (ARN) of the broker.
+--
+-- * 'dbrsBrokerInstances' - A list of information about allocated brokers.
+--
+-- * 'dbrsHostInstanceType' - The broker's instance type. Possible values: mq.t2.micro, mq.m4.large
+--
+-- * 'dbrsResponseStatus' - -- | The response status code.
+describeBrokerResponse
+ :: Int -- ^ 'dbrsResponseStatus'
+ -> DescribeBrokerResponse
+describeBrokerResponse pResponseStatus_ =
+ DescribeBrokerResponse'
+ { _dbrsBrokerName = Nothing
+ , _dbrsEngineVersion = Nothing
+ , _dbrsBrokerState = Nothing
+ , _dbrsPubliclyAccessible = Nothing
+ , _dbrsAutoMinorVersionUpgrade = Nothing
+ , _dbrsSecurityGroups = Nothing
+ , _dbrsUsers = Nothing
+ , _dbrsSubnetIds = Nothing
+ , _dbrsConfigurations = Nothing
+ , _dbrsMaintenanceWindowStartTime = Nothing
+ , _dbrsDeploymentMode = Nothing
+ , _dbrsBrokerId = Nothing
+ , _dbrsEngineType = Nothing
+ , _dbrsBrokerARN = Nothing
+ , _dbrsBrokerInstances = Nothing
+ , _dbrsHostInstanceType = Nothing
+ , _dbrsResponseStatus = pResponseStatus_
+ }
+
+
+-- | The name of the broker. This value must be unique in your AWS account, 1-50 characters long, must contain only letters, numbers, dashes, and underscores, and must not contain whitespaces, brackets, wildcard characters, or special characters.
+dbrsBrokerName :: Lens' DescribeBrokerResponse (Maybe Text)
+dbrsBrokerName = lens _dbrsBrokerName (\ s a -> s{_dbrsBrokerName = a})
+
+-- | The version of the broker engine. Note: Currently, Amazon MQ supports only 5.15.0.
+dbrsEngineVersion :: Lens' DescribeBrokerResponse (Maybe Text)
+dbrsEngineVersion = lens _dbrsEngineVersion (\ s a -> s{_dbrsEngineVersion = a})
+
+-- | The status of the broker. Possible values: CREATION_IN_PROGRESS, CREATION_FAILED, DELETION_IN_PROGRESS, RUNNING, REBOOT_IN_PROGRESS
+dbrsBrokerState :: Lens' DescribeBrokerResponse (Maybe BrokerState)
+dbrsBrokerState = lens _dbrsBrokerState (\ s a -> s{_dbrsBrokerState = a})
+
+-- | Required. Enables connections from applications outside of the VPC that hosts the broker's subnets.
+dbrsPubliclyAccessible :: Lens' DescribeBrokerResponse (Maybe Bool)
+dbrsPubliclyAccessible = lens _dbrsPubliclyAccessible (\ s a -> s{_dbrsPubliclyAccessible = a})
+
+-- | Required. Enables automatic upgrades to new minor versions for brokers, as Apache releases the versions. The automatic upgrades occur during the maintenance window of the broker or after a manual broker reboot.
+dbrsAutoMinorVersionUpgrade :: Lens' DescribeBrokerResponse (Maybe Bool)
+dbrsAutoMinorVersionUpgrade = lens _dbrsAutoMinorVersionUpgrade (\ s a -> s{_dbrsAutoMinorVersionUpgrade = a})
+
+-- | Required. The list of rules (1 minimum, 125 maximum) that authorize connections to brokers.
+dbrsSecurityGroups :: Lens' DescribeBrokerResponse [Text]
+dbrsSecurityGroups = lens _dbrsSecurityGroups (\ s a -> s{_dbrsSecurityGroups = a}) . _Default . _Coerce
+
+-- | The list of all ActiveMQ usernames for the specified broker.
+dbrsUsers :: Lens' DescribeBrokerResponse [UserSummary]
+dbrsUsers = lens _dbrsUsers (\ s a -> s{_dbrsUsers = a}) . _Default . _Coerce
+
+-- | The list of groups (2 maximum) that define which subnets and IP ranges the broker can use from different Availability Zones. A SINGLE_INSTANCE deployment requires one subnet (for example, the default subnet). An ACTIVE_STANDBY_MULTI_AZ deployment requires two subnets.
+dbrsSubnetIds :: Lens' DescribeBrokerResponse [Text]
+dbrsSubnetIds = lens _dbrsSubnetIds (\ s a -> s{_dbrsSubnetIds = a}) . _Default . _Coerce
+
+-- | The list of all revisions for the specified configuration.
+dbrsConfigurations :: Lens' DescribeBrokerResponse (Maybe Configurations)
+dbrsConfigurations = lens _dbrsConfigurations (\ s a -> s{_dbrsConfigurations = a})
+
+-- | The parameters that determine the WeeklyStartTime.
+dbrsMaintenanceWindowStartTime :: Lens' DescribeBrokerResponse (Maybe WeeklyStartTime)
+dbrsMaintenanceWindowStartTime = lens _dbrsMaintenanceWindowStartTime (\ s a -> s{_dbrsMaintenanceWindowStartTime = a})
+
+-- | Required. The deployment mode of the broker. Possible values: SINGLE_INSTANCE, ACTIVE_STANDBY_MULTI_AZ SINGLE_INSTANCE creates a single-instance broker in a single Availability Zone. ACTIVE_STANDBY_MULTI_AZ creates an active/standby broker for high availability.
+dbrsDeploymentMode :: Lens' DescribeBrokerResponse (Maybe DeploymentMode)
+dbrsDeploymentMode = lens _dbrsDeploymentMode (\ s a -> s{_dbrsDeploymentMode = a})
+
+-- | The unique ID that Amazon MQ generates for the broker.
+dbrsBrokerId :: Lens' DescribeBrokerResponse (Maybe Text)
+dbrsBrokerId = lens _dbrsBrokerId (\ s a -> s{_dbrsBrokerId = a})
+
+-- | Required. The type of broker engine. Note: Currently, Amazon MQ supports only ACTIVEMQ.
+dbrsEngineType :: Lens' DescribeBrokerResponse (Maybe EngineType)
+dbrsEngineType = lens _dbrsEngineType (\ s a -> s{_dbrsEngineType = a})
+
+-- | The Amazon Resource Name (ARN) of the broker.
+dbrsBrokerARN :: Lens' DescribeBrokerResponse (Maybe Text)
+dbrsBrokerARN = lens _dbrsBrokerARN (\ s a -> s{_dbrsBrokerARN = a})
+
+-- | A list of information about allocated brokers.
+dbrsBrokerInstances :: Lens' DescribeBrokerResponse [BrokerInstance]
+dbrsBrokerInstances = lens _dbrsBrokerInstances (\ s a -> s{_dbrsBrokerInstances = a}) . _Default . _Coerce
+
+-- | The broker's instance type. Possible values: mq.t2.micro, mq.m4.large
+dbrsHostInstanceType :: Lens' DescribeBrokerResponse (Maybe Text)
+dbrsHostInstanceType = lens _dbrsHostInstanceType (\ s a -> s{_dbrsHostInstanceType = a})
+
+-- | -- | The response status code.
+dbrsResponseStatus :: Lens' DescribeBrokerResponse Int
+dbrsResponseStatus = lens _dbrsResponseStatus (\ s a -> s{_dbrsResponseStatus = a})
+
+instance NFData DescribeBrokerResponse where
diff --git a/gen/Network/AWS/MQ/DescribeConfiguration.hs b/gen/Network/AWS/MQ/DescribeConfiguration.hs
new file mode 100644
index 0000000..d7b63d8
--- /dev/null
+++ b/gen/Network/AWS/MQ/DescribeConfiguration.hs
@@ -0,0 +1,188 @@
+{-# LANGUAGE DeriveDataTypeable #-}
+{-# LANGUAGE DeriveGeneric #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE TypeFamilies #-}
+
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- Derived from AWS service descriptions, licensed under Apache 2.0.
+
+-- |
+-- Module : Network.AWS.MQ.DescribeConfiguration
+-- Copyright : (c) 2013-2018 Brendan Hay
+-- License : Mozilla Public License, v. 2.0.
+-- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
+-- Stability : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Returns information about the specified configuration.
+module Network.AWS.MQ.DescribeConfiguration
+ (
+ -- * Creating a Request
+ describeConfiguration
+ , DescribeConfiguration
+ -- * Request Lenses
+ , dcConfigurationId
+
+ -- * Destructuring the Response
+ , describeConfigurationResponse
+ , DescribeConfigurationResponse
+ -- * Response Lenses
+ , dcrsEngineVersion
+ , dcrsARN
+ , dcrsLatestRevision
+ , dcrsName
+ , dcrsId
+ , dcrsDescription
+ , dcrsEngineType
+ , dcrsResponseStatus
+ ) where
+
+import Network.AWS.Lens
+import Network.AWS.MQ.Types
+import Network.AWS.MQ.Types.Product
+import Network.AWS.Prelude
+import Network.AWS.Request
+import Network.AWS.Response
+
+-- | /See:/ 'describeConfiguration' smart constructor.
+newtype DescribeConfiguration = DescribeConfiguration'
+ { _dcConfigurationId :: Text
+ } deriving (Eq, Read, Show, Data, Typeable, Generic)
+
+
+-- | Creates a value of 'DescribeConfiguration' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'dcConfigurationId' - The unique ID that Amazon MQ generates for the configuration.
+describeConfiguration
+ :: Text -- ^ 'dcConfigurationId'
+ -> DescribeConfiguration
+describeConfiguration pConfigurationId_ =
+ DescribeConfiguration' {_dcConfigurationId = pConfigurationId_}
+
+
+-- | The unique ID that Amazon MQ generates for the configuration.
+dcConfigurationId :: Lens' DescribeConfiguration Text
+dcConfigurationId = lens _dcConfigurationId (\ s a -> s{_dcConfigurationId = a})
+
+instance AWSRequest DescribeConfiguration where
+ type Rs DescribeConfiguration =
+ DescribeConfigurationResponse
+ request = get mq
+ response
+ = receiveJSON
+ (\ s h x ->
+ DescribeConfigurationResponse' <$>
+ (x .?> "engineVersion") <*> (x .?> "arn") <*>
+ (x .?> "latestRevision")
+ <*> (x .?> "name")
+ <*> (x .?> "id")
+ <*> (x .?> "description")
+ <*> (x .?> "engineType")
+ <*> (pure (fromEnum s)))
+
+instance Hashable DescribeConfiguration where
+
+instance NFData DescribeConfiguration where
+
+instance ToHeaders DescribeConfiguration where
+ toHeaders
+ = const
+ (mconcat
+ ["Content-Type" =#
+ ("application/x-amz-json-1.1" :: ByteString)])
+
+instance ToPath DescribeConfiguration where
+ toPath DescribeConfiguration'{..}
+ = mconcat
+ ["/v1/configurations/", toBS _dcConfigurationId]
+
+instance ToQuery DescribeConfiguration where
+ toQuery = const mempty
+
+-- | /See:/ 'describeConfigurationResponse' smart constructor.
+data DescribeConfigurationResponse = DescribeConfigurationResponse'
+ { _dcrsEngineVersion :: !(Maybe Text)
+ , _dcrsARN :: !(Maybe Text)
+ , _dcrsLatestRevision :: !(Maybe ConfigurationRevision)
+ , _dcrsName :: !(Maybe Text)
+ , _dcrsId :: !(Maybe Text)
+ , _dcrsDescription :: !(Maybe Text)
+ , _dcrsEngineType :: !(Maybe EngineType)
+ , _dcrsResponseStatus :: !Int
+ } deriving (Eq, Read, Show, Data, Typeable, Generic)
+
+
+-- | Creates a value of 'DescribeConfigurationResponse' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'dcrsEngineVersion' - Required. The version of the broker engine.
+--
+-- * 'dcrsARN' - Required. The ARN of the configuration.
+--
+-- * 'dcrsLatestRevision' - Required. The latest revision of the configuration.
+--
+-- * 'dcrsName' - Required. The name of the configuration. This value can contain only alphanumeric characters, dashes, periods, underscores, and tildes (- . _ ~). This value must be 1-150 characters long.
+--
+-- * 'dcrsId' - Required. The unique ID that Amazon MQ generates for the configuration.
+--
+-- * 'dcrsDescription' - Required. The description of the configuration.
+--
+-- * 'dcrsEngineType' - Required. The type of broker engine. Note: Currently, Amazon MQ supports only ACTIVEMQ.
+--
+-- * 'dcrsResponseStatus' - -- | The response status code.
+describeConfigurationResponse
+ :: Int -- ^ 'dcrsResponseStatus'
+ -> DescribeConfigurationResponse
+describeConfigurationResponse pResponseStatus_ =
+ DescribeConfigurationResponse'
+ { _dcrsEngineVersion = Nothing
+ , _dcrsARN = Nothing
+ , _dcrsLatestRevision = Nothing
+ , _dcrsName = Nothing
+ , _dcrsId = Nothing
+ , _dcrsDescription = Nothing
+ , _dcrsEngineType = Nothing
+ , _dcrsResponseStatus = pResponseStatus_
+ }
+
+
+-- | Required. The version of the broker engine.
+dcrsEngineVersion :: Lens' DescribeConfigurationResponse (Maybe Text)
+dcrsEngineVersion = lens _dcrsEngineVersion (\ s a -> s{_dcrsEngineVersion = a})
+
+-- | Required. The ARN of the configuration.
+dcrsARN :: Lens' DescribeConfigurationResponse (Maybe Text)
+dcrsARN = lens _dcrsARN (\ s a -> s{_dcrsARN = a})
+
+-- | Required. The latest revision of the configuration.
+dcrsLatestRevision :: Lens' DescribeConfigurationResponse (Maybe ConfigurationRevision)
+dcrsLatestRevision = lens _dcrsLatestRevision (\ s a -> s{_dcrsLatestRevision = a})
+
+-- | Required. The name of the configuration. This value can contain only alphanumeric characters, dashes, periods, underscores, and tildes (- . _ ~). This value must be 1-150 characters long.
+dcrsName :: Lens' DescribeConfigurationResponse (Maybe Text)
+dcrsName = lens _dcrsName (\ s a -> s{_dcrsName = a})
+
+-- | Required. The unique ID that Amazon MQ generates for the configuration.
+dcrsId :: Lens' DescribeConfigurationResponse (Maybe Text)
+dcrsId = lens _dcrsId (\ s a -> s{_dcrsId = a})
+
+-- | Required. The description of the configuration.
+dcrsDescription :: Lens' DescribeConfigurationResponse (Maybe Text)
+dcrsDescription = lens _dcrsDescription (\ s a -> s{_dcrsDescription = a})
+
+-- | Required. The type of broker engine. Note: Currently, Amazon MQ supports only ACTIVEMQ.
+dcrsEngineType :: Lens' DescribeConfigurationResponse (Maybe EngineType)
+dcrsEngineType = lens _dcrsEngineType (\ s a -> s{_dcrsEngineType = a})
+
+-- | -- | The response status code.
+dcrsResponseStatus :: Lens' DescribeConfigurationResponse Int
+dcrsResponseStatus = lens _dcrsResponseStatus (\ s a -> s{_dcrsResponseStatus = a})
+
+instance NFData DescribeConfigurationResponse where
diff --git a/gen/Network/AWS/MQ/DescribeConfigurationRevision.hs b/gen/Network/AWS/MQ/DescribeConfigurationRevision.hs
new file mode 100644
index 0000000..5ff295e
--- /dev/null
+++ b/gen/Network/AWS/MQ/DescribeConfigurationRevision.hs
@@ -0,0 +1,164 @@
+{-# LANGUAGE DeriveDataTypeable #-}
+{-# LANGUAGE DeriveGeneric #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE TypeFamilies #-}
+
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- Derived from AWS service descriptions, licensed under Apache 2.0.
+
+-- |
+-- Module : Network.AWS.MQ.DescribeConfigurationRevision
+-- Copyright : (c) 2013-2018 Brendan Hay
+-- License : Mozilla Public License, v. 2.0.
+-- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
+-- Stability : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Returns the specified configuration revision for the specified configuration.
+module Network.AWS.MQ.DescribeConfigurationRevision
+ (
+ -- * Creating a Request
+ describeConfigurationRevision
+ , DescribeConfigurationRevision
+ -- * Request Lenses
+ , dcrConfigurationRevision
+ , dcrConfigurationId
+
+ -- * Destructuring the Response
+ , describeConfigurationRevisionResponse
+ , DescribeConfigurationRevisionResponse
+ -- * Response Lenses
+ , dcrrsConfigurationId
+ , dcrrsData
+ , dcrrsDescription
+ , dcrrsResponseStatus
+ ) where
+
+import Network.AWS.Lens
+import Network.AWS.MQ.Types
+import Network.AWS.MQ.Types.Product
+import Network.AWS.Prelude
+import Network.AWS.Request
+import Network.AWS.Response
+
+-- | /See:/ 'describeConfigurationRevision' smart constructor.
+data DescribeConfigurationRevision = DescribeConfigurationRevision'
+ { _dcrConfigurationRevision :: !Text
+ , _dcrConfigurationId :: !Text
+ } deriving (Eq, Read, Show, Data, Typeable, Generic)
+
+
+-- | Creates a value of 'DescribeConfigurationRevision' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'dcrConfigurationRevision' - The revision of the configuration.
+--
+-- * 'dcrConfigurationId' - The unique ID that Amazon MQ generates for the configuration.
+describeConfigurationRevision
+ :: Text -- ^ 'dcrConfigurationRevision'
+ -> Text -- ^ 'dcrConfigurationId'
+ -> DescribeConfigurationRevision
+describeConfigurationRevision pConfigurationRevision_ pConfigurationId_ =
+ DescribeConfigurationRevision'
+ { _dcrConfigurationRevision = pConfigurationRevision_
+ , _dcrConfigurationId = pConfigurationId_
+ }
+
+
+-- | The revision of the configuration.
+dcrConfigurationRevision :: Lens' DescribeConfigurationRevision Text
+dcrConfigurationRevision = lens _dcrConfigurationRevision (\ s a -> s{_dcrConfigurationRevision = a})
+
+-- | The unique ID that Amazon MQ generates for the configuration.
+dcrConfigurationId :: Lens' DescribeConfigurationRevision Text
+dcrConfigurationId = lens _dcrConfigurationId (\ s a -> s{_dcrConfigurationId = a})
+
+instance AWSRequest DescribeConfigurationRevision
+ where
+ type Rs DescribeConfigurationRevision =
+ DescribeConfigurationRevisionResponse
+ request = get mq
+ response
+ = receiveJSON
+ (\ s h x ->
+ DescribeConfigurationRevisionResponse' <$>
+ (x .?> "configurationId") <*> (x .?> "data") <*>
+ (x .?> "description")
+ <*> (pure (fromEnum s)))
+
+instance Hashable DescribeConfigurationRevision where
+
+instance NFData DescribeConfigurationRevision where
+
+instance ToHeaders DescribeConfigurationRevision
+ where
+ toHeaders
+ = const
+ (mconcat
+ ["Content-Type" =#
+ ("application/x-amz-json-1.1" :: ByteString)])
+
+instance ToPath DescribeConfigurationRevision where
+ toPath DescribeConfigurationRevision'{..}
+ = mconcat
+ ["/v1/configurations/", toBS _dcrConfigurationId,
+ "/revisions/", toBS _dcrConfigurationRevision]
+
+instance ToQuery DescribeConfigurationRevision where
+ toQuery = const mempty
+
+-- | /See:/ 'describeConfigurationRevisionResponse' smart constructor.
+data DescribeConfigurationRevisionResponse = DescribeConfigurationRevisionResponse'
+ { _dcrrsConfigurationId :: !(Maybe Text)
+ , _dcrrsData :: !(Maybe Text)
+ , _dcrrsDescription :: !(Maybe Text)
+ , _dcrrsResponseStatus :: !Int
+ } deriving (Eq, Read, Show, Data, Typeable, Generic)
+
+
+-- | Creates a value of 'DescribeConfigurationRevisionResponse' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'dcrrsConfigurationId' - Required. The unique ID that Amazon MQ generates for the configuration.
+--
+-- * 'dcrrsData' - Required. The base64-encoded XML configuration.
+--
+-- * 'dcrrsDescription' - The description of the configuration.
+--
+-- * 'dcrrsResponseStatus' - -- | The response status code.
+describeConfigurationRevisionResponse
+ :: Int -- ^ 'dcrrsResponseStatus'
+ -> DescribeConfigurationRevisionResponse
+describeConfigurationRevisionResponse pResponseStatus_ =
+ DescribeConfigurationRevisionResponse'
+ { _dcrrsConfigurationId = Nothing
+ , _dcrrsData = Nothing
+ , _dcrrsDescription = Nothing
+ , _dcrrsResponseStatus = pResponseStatus_
+ }
+
+
+-- | Required. The unique ID that Amazon MQ generates for the configuration.
+dcrrsConfigurationId :: Lens' DescribeConfigurationRevisionResponse (Maybe Text)
+dcrrsConfigurationId = lens _dcrrsConfigurationId (\ s a -> s{_dcrrsConfigurationId = a})
+
+-- | Required. The base64-encoded XML configuration.
+dcrrsData :: Lens' DescribeConfigurationRevisionResponse (Maybe Text)
+dcrrsData = lens _dcrrsData (\ s a -> s{_dcrrsData = a})
+
+-- | The description of the configuration.
+dcrrsDescription :: Lens' DescribeConfigurationRevisionResponse (Maybe Text)
+dcrrsDescription = lens _dcrrsDescription (\ s a -> s{_dcrrsDescription = a})
+
+-- | -- | The response status code.
+dcrrsResponseStatus :: Lens' DescribeConfigurationRevisionResponse Int
+dcrrsResponseStatus = lens _dcrrsResponseStatus (\ s a -> s{_dcrrsResponseStatus = a})
+
+instance NFData DescribeConfigurationRevisionResponse
+ where
diff --git a/gen/Network/AWS/MQ/DescribeUser.hs b/gen/Network/AWS/MQ/DescribeUser.hs
new file mode 100644
index 0000000..3efd059
--- /dev/null
+++ b/gen/Network/AWS/MQ/DescribeUser.hs
@@ -0,0 +1,177 @@
+{-# LANGUAGE DeriveDataTypeable #-}
+{-# LANGUAGE DeriveGeneric #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE TypeFamilies #-}
+
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- Derived from AWS service descriptions, licensed under Apache 2.0.
+
+-- |
+-- Module : Network.AWS.MQ.DescribeUser
+-- Copyright : (c) 2013-2018 Brendan Hay
+-- License : Mozilla Public License, v. 2.0.
+-- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
+-- Stability : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Returns information about an ActiveMQ user.
+module Network.AWS.MQ.DescribeUser
+ (
+ -- * Creating a Request
+ describeUser
+ , DescribeUser
+ -- * Request Lenses
+ , duUsername
+ , duBrokerId
+
+ -- * Destructuring the Response
+ , describeUserResponse
+ , DescribeUserResponse
+ -- * Response Lenses
+ , dursGroups
+ , dursPending
+ , dursConsoleAccess
+ , dursUsername
+ , dursBrokerId
+ , dursResponseStatus
+ ) where
+
+import Network.AWS.Lens
+import Network.AWS.MQ.Types
+import Network.AWS.MQ.Types.Product
+import Network.AWS.Prelude
+import Network.AWS.Request
+import Network.AWS.Response
+
+-- | /See:/ 'describeUser' smart constructor.
+data DescribeUser = DescribeUser'
+ { _duUsername :: !Text
+ , _duBrokerId :: !Text
+ } deriving (Eq, Read, Show, Data, Typeable, Generic)
+
+
+-- | Creates a value of 'DescribeUser' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'duUsername' - The username of the ActiveMQ user. This value can contain only alphanumeric characters, dashes, periods, underscores, and tildes (- . _ ~). This value must be 2-100 characters long.
+--
+-- * 'duBrokerId' - The unique ID that Amazon MQ generates for the broker.
+describeUser
+ :: Text -- ^ 'duUsername'
+ -> Text -- ^ 'duBrokerId'
+ -> DescribeUser
+describeUser pUsername_ pBrokerId_ =
+ DescribeUser' {_duUsername = pUsername_, _duBrokerId = pBrokerId_}
+
+
+-- | The username of the ActiveMQ user. This value can contain only alphanumeric characters, dashes, periods, underscores, and tildes (- . _ ~). This value must be 2-100 characters long.
+duUsername :: Lens' DescribeUser Text
+duUsername = lens _duUsername (\ s a -> s{_duUsername = a})
+
+-- | The unique ID that Amazon MQ generates for the broker.
+duBrokerId :: Lens' DescribeUser Text
+duBrokerId = lens _duBrokerId (\ s a -> s{_duBrokerId = a})
+
+instance AWSRequest DescribeUser where
+ type Rs DescribeUser = DescribeUserResponse
+ request = get mq
+ response
+ = receiveJSON
+ (\ s h x ->
+ DescribeUserResponse' <$>
+ (x .?> "groups" .!@ mempty) <*> (x .?> "pending") <*>
+ (x .?> "consoleAccess")
+ <*> (x .?> "username")
+ <*> (x .?> "brokerId")
+ <*> (pure (fromEnum s)))
+
+instance Hashable DescribeUser where
+
+instance NFData DescribeUser where
+
+instance ToHeaders DescribeUser where
+ toHeaders
+ = const
+ (mconcat
+ ["Content-Type" =#
+ ("application/x-amz-json-1.1" :: ByteString)])
+
+instance ToPath DescribeUser where
+ toPath DescribeUser'{..}
+ = mconcat
+ ["/v1/brokers/", toBS _duBrokerId, "/users/",
+ toBS _duUsername]
+
+instance ToQuery DescribeUser where
+ toQuery = const mempty
+
+-- | /See:/ 'describeUserResponse' smart constructor.
+data DescribeUserResponse = DescribeUserResponse'
+ { _dursGroups :: !(Maybe [Text])
+ , _dursPending :: !(Maybe UserPendingChanges)
+ , _dursConsoleAccess :: !(Maybe Bool)
+ , _dursUsername :: !(Maybe Text)
+ , _dursBrokerId :: !(Maybe Text)
+ , _dursResponseStatus :: !Int
+ } deriving (Eq, Read, Show, Data, Typeable, Generic)
+
+
+-- | Creates a value of 'DescribeUserResponse' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'dursGroups' - The list of groups (20 maximum) to which the ActiveMQ user belongs. This value can contain only alphanumeric characters, dashes, periods, underscores, and tildes (- . _ ~). This value must be 2-100 characters long.
+--
+-- * 'dursPending' - The status of the changes pending for the ActiveMQ user.
+--
+-- * 'dursConsoleAccess' - Enables access to the the ActiveMQ Web Console for the ActiveMQ user.
+--
+-- * 'dursUsername' - Required. The username of the ActiveMQ user. This value can contain only alphanumeric characters, dashes, periods, underscores, and tildes (- . _ ~). This value must be 2-100 characters long.
+--
+-- * 'dursBrokerId' - Required. The unique ID that Amazon MQ generates for the broker.
+--
+-- * 'dursResponseStatus' - -- | The response status code.
+describeUserResponse
+ :: Int -- ^ 'dursResponseStatus'
+ -> DescribeUserResponse
+describeUserResponse pResponseStatus_ =
+ DescribeUserResponse'
+ { _dursGroups = Nothing
+ , _dursPending = Nothing
+ , _dursConsoleAccess = Nothing
+ , _dursUsername = Nothing
+ , _dursBrokerId = Nothing
+ , _dursResponseStatus = pResponseStatus_
+ }
+
+
+-- | The list of groups (20 maximum) to which the ActiveMQ user belongs. This value can contain only alphanumeric characters, dashes, periods, underscores, and tildes (- . _ ~). This value must be 2-100 characters long.
+dursGroups :: Lens' DescribeUserResponse [Text]
+dursGroups = lens _dursGroups (\ s a -> s{_dursGroups = a}) . _Default . _Coerce
+
+-- | The status of the changes pending for the ActiveMQ user.
+dursPending :: Lens' DescribeUserResponse (Maybe UserPendingChanges)
+dursPending = lens _dursPending (\ s a -> s{_dursPending = a})
+
+-- | Enables access to the the ActiveMQ Web Console for the ActiveMQ user.
+dursConsoleAccess :: Lens' DescribeUserResponse (Maybe Bool)
+dursConsoleAccess = lens _dursConsoleAccess (\ s a -> s{_dursConsoleAccess = a})
+
+-- | Required. The username of the ActiveMQ user. This value can contain only alphanumeric characters, dashes, periods, underscores, and tildes (- . _ ~). This value must be 2-100 characters long.
+dursUsername :: Lens' DescribeUserResponse (Maybe Text)
+dursUsername = lens _dursUsername (\ s a -> s{_dursUsername = a})
+
+-- | Required. The unique ID that Amazon MQ generates for the broker.
+dursBrokerId :: Lens' DescribeUserResponse (Maybe Text)
+dursBrokerId = lens _dursBrokerId (\ s a -> s{_dursBrokerId = a})
+
+-- | -- | The response status code.
+dursResponseStatus :: Lens' DescribeUserResponse Int
+dursResponseStatus = lens _dursResponseStatus (\ s a -> s{_dursResponseStatus = a})
+
+instance NFData DescribeUserResponse where
diff --git a/gen/Network/AWS/MQ/ListBrokers.hs b/gen/Network/AWS/MQ/ListBrokers.hs
new file mode 100644
index 0000000..6dd8d61
--- /dev/null
+++ b/gen/Network/AWS/MQ/ListBrokers.hs
@@ -0,0 +1,145 @@
+{-# LANGUAGE DeriveDataTypeable #-}
+{-# LANGUAGE DeriveGeneric #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE TypeFamilies #-}
+
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- Derived from AWS service descriptions, licensed under Apache 2.0.
+
+-- |
+-- Module : Network.AWS.MQ.ListBrokers
+-- Copyright : (c) 2013-2018 Brendan Hay
+-- License : Mozilla Public License, v. 2.0.
+-- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
+-- Stability : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Returns a list of all brokers.
+module Network.AWS.MQ.ListBrokers
+ (
+ -- * Creating a Request
+ listBrokers
+ , ListBrokers
+ -- * Request Lenses
+ , lbNextToken
+ , lbMaxResults
+
+ -- * Destructuring the Response
+ , listBrokersResponse
+ , ListBrokersResponse
+ -- * Response Lenses
+ , lbrsNextToken
+ , lbrsBrokerSummaries
+ , lbrsResponseStatus
+ ) where
+
+import Network.AWS.Lens
+import Network.AWS.MQ.Types
+import Network.AWS.MQ.Types.Product
+import Network.AWS.Prelude
+import Network.AWS.Request
+import Network.AWS.Response
+
+-- | /See:/ 'listBrokers' smart constructor.
+data ListBrokers = ListBrokers'
+ { _lbNextToken :: !(Maybe Text)
+ , _lbMaxResults :: !(Maybe Nat)
+ } deriving (Eq, Read, Show, Data, Typeable, Generic)
+
+
+-- | Creates a value of 'ListBrokers' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'lbNextToken' - The token that specifies the next page of results Amazon MQ should return. To request the first page, leave nextToken empty.
+--
+-- * 'lbMaxResults' - The maximum number of brokers that Amazon MQ can return per page (20 by default). This value must be an integer from 5 to 100.
+listBrokers
+ :: ListBrokers
+listBrokers = ListBrokers' {_lbNextToken = Nothing, _lbMaxResults = Nothing}
+
+
+-- | The token that specifies the next page of results Amazon MQ should return. To request the first page, leave nextToken empty.
+lbNextToken :: Lens' ListBrokers (Maybe Text)
+lbNextToken = lens _lbNextToken (\ s a -> s{_lbNextToken = a})
+
+-- | The maximum number of brokers that Amazon MQ can return per page (20 by default). This value must be an integer from 5 to 100.
+lbMaxResults :: Lens' ListBrokers (Maybe Natural)
+lbMaxResults = lens _lbMaxResults (\ s a -> s{_lbMaxResults = a}) . mapping _Nat
+
+instance AWSRequest ListBrokers where
+ type Rs ListBrokers = ListBrokersResponse
+ request = get mq
+ response
+ = receiveJSON
+ (\ s h x ->
+ ListBrokersResponse' <$>
+ (x .?> "nextToken") <*>
+ (x .?> "brokerSummaries" .!@ mempty)
+ <*> (pure (fromEnum s)))
+
+instance Hashable ListBrokers where
+
+instance NFData ListBrokers where
+
+instance ToHeaders ListBrokers where
+ toHeaders
+ = const
+ (mconcat
+ ["Content-Type" =#
+ ("application/x-amz-json-1.1" :: ByteString)])
+
+instance ToPath ListBrokers where
+ toPath = const "/v1/brokers"
+
+instance ToQuery ListBrokers where
+ toQuery ListBrokers'{..}
+ = mconcat
+ ["nextToken" =: _lbNextToken,
+ "maxResults" =: _lbMaxResults]
+
+-- | /See:/ 'listBrokersResponse' smart constructor.
+data ListBrokersResponse = ListBrokersResponse'
+ { _lbrsNextToken :: !(Maybe Text)
+ , _lbrsBrokerSummaries :: !(Maybe [BrokerSummary])
+ , _lbrsResponseStatus :: !Int
+ } deriving (Eq, Read, Show, Data, Typeable, Generic)
+
+
+-- | Creates a value of 'ListBrokersResponse' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'lbrsNextToken' - The token that specifies the next page of results Amazon MQ should return. To request the first page, leave nextToken empty.
+--
+-- * 'lbrsBrokerSummaries' - A list of information about all brokers.
+--
+-- * 'lbrsResponseStatus' - -- | The response status code.
+listBrokersResponse
+ :: Int -- ^ 'lbrsResponseStatus'
+ -> ListBrokersResponse
+listBrokersResponse pResponseStatus_ =
+ ListBrokersResponse'
+ { _lbrsNextToken = Nothing
+ , _lbrsBrokerSummaries = Nothing
+ , _lbrsResponseStatus = pResponseStatus_
+ }
+
+
+-- | The token that specifies the next page of results Amazon MQ should return. To request the first page, leave nextToken empty.
+lbrsNextToken :: Lens' ListBrokersResponse (Maybe Text)
+lbrsNextToken = lens _lbrsNextToken (\ s a -> s{_lbrsNextToken = a})
+
+-- | A list of information about all brokers.
+lbrsBrokerSummaries :: Lens' ListBrokersResponse [BrokerSummary]
+lbrsBrokerSummaries = lens _lbrsBrokerSummaries (\ s a -> s{_lbrsBrokerSummaries = a}) . _Default . _Coerce
+
+-- | -- | The response status code.
+lbrsResponseStatus :: Lens' ListBrokersResponse Int
+lbrsResponseStatus = lens _lbrsResponseStatus (\ s a -> s{_lbrsResponseStatus = a})
+
+instance NFData ListBrokersResponse where
diff --git a/gen/Network/AWS/MQ/ListConfigurationRevisions.hs b/gen/Network/AWS/MQ/ListConfigurationRevisions.hs
new file mode 100644
index 0000000..d909686
--- /dev/null
+++ b/gen/Network/AWS/MQ/ListConfigurationRevisions.hs
@@ -0,0 +1,183 @@
+{-# LANGUAGE DeriveDataTypeable #-}
+{-# LANGUAGE DeriveGeneric #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE TypeFamilies #-}
+
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- Derived from AWS service descriptions, licensed under Apache 2.0.
+
+-- |
+-- Module : Network.AWS.MQ.ListConfigurationRevisions
+-- Copyright : (c) 2013-2018 Brendan Hay
+-- License : Mozilla Public License, v. 2.0.
+-- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
+-- Stability : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Returns a list of all revisions for the specified configuration.
+module Network.AWS.MQ.ListConfigurationRevisions
+ (
+ -- * Creating a Request
+ listConfigurationRevisions
+ , ListConfigurationRevisions
+ -- * Request Lenses
+ , lcrNextToken
+ , lcrMaxResults
+ , lcrConfigurationId
+
+ -- * Destructuring the Response
+ , listConfigurationRevisionsResponse
+ , ListConfigurationRevisionsResponse
+ -- * Response Lenses
+ , lcrrsConfigurationId
+ , lcrrsNextToken
+ , lcrrsRevisions
+ , lcrrsMaxResults
+ , lcrrsResponseStatus
+ ) where
+
+import Network.AWS.Lens
+import Network.AWS.MQ.Types
+import Network.AWS.MQ.Types.Product
+import Network.AWS.Prelude
+import Network.AWS.Request
+import Network.AWS.Response
+
+-- | /See:/ 'listConfigurationRevisions' smart constructor.
+data ListConfigurationRevisions = ListConfigurationRevisions'
+ { _lcrNextToken :: !(Maybe Text)
+ , _lcrMaxResults :: !(Maybe Nat)
+ , _lcrConfigurationId :: !Text
+ } deriving (Eq, Read, Show, Data, Typeable, Generic)
+
+
+-- | Creates a value of 'ListConfigurationRevisions' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'lcrNextToken' - The token that specifies the next page of results Amazon MQ should return. To request the first page, leave nextToken empty.
+--
+-- * 'lcrMaxResults' - The maximum number of configurations that Amazon MQ can return per page (20 by default). This value must be an integer from 5 to 100.
+--
+-- * 'lcrConfigurationId' - The unique ID that Amazon MQ generates for the configuration.
+listConfigurationRevisions
+ :: Text -- ^ 'lcrConfigurationId'
+ -> ListConfigurationRevisions
+listConfigurationRevisions pConfigurationId_ =
+ ListConfigurationRevisions'
+ { _lcrNextToken = Nothing
+ , _lcrMaxResults = Nothing
+ , _lcrConfigurationId = pConfigurationId_
+ }
+
+
+-- | The token that specifies the next page of results Amazon MQ should return. To request the first page, leave nextToken empty.
+lcrNextToken :: Lens' ListConfigurationRevisions (Maybe Text)
+lcrNextToken = lens _lcrNextToken (\ s a -> s{_lcrNextToken = a})
+
+-- | The maximum number of configurations that Amazon MQ can return per page (20 by default). This value must be an integer from 5 to 100.
+lcrMaxResults :: Lens' ListConfigurationRevisions (Maybe Natural)
+lcrMaxResults = lens _lcrMaxResults (\ s a -> s{_lcrMaxResults = a}) . mapping _Nat
+
+-- | The unique ID that Amazon MQ generates for the configuration.
+lcrConfigurationId :: Lens' ListConfigurationRevisions Text
+lcrConfigurationId = lens _lcrConfigurationId (\ s a -> s{_lcrConfigurationId = a})
+
+instance AWSRequest ListConfigurationRevisions where
+ type Rs ListConfigurationRevisions =
+ ListConfigurationRevisionsResponse
+ request = get mq
+ response
+ = receiveJSON
+ (\ s h x ->
+ ListConfigurationRevisionsResponse' <$>
+ (x .?> "configurationId") <*> (x .?> "nextToken") <*>
+ (x .?> "revisions" .!@ mempty)
+ <*> (x .?> "maxResults")
+ <*> (pure (fromEnum s)))
+
+instance Hashable ListConfigurationRevisions where
+
+instance NFData ListConfigurationRevisions where
+
+instance ToHeaders ListConfigurationRevisions where
+ toHeaders
+ = const
+ (mconcat
+ ["Content-Type" =#
+ ("application/x-amz-json-1.1" :: ByteString)])
+
+instance ToPath ListConfigurationRevisions where
+ toPath ListConfigurationRevisions'{..}
+ = mconcat
+ ["/v1/configurations/", toBS _lcrConfigurationId,
+ "/revisions"]
+
+instance ToQuery ListConfigurationRevisions where
+ toQuery ListConfigurationRevisions'{..}
+ = mconcat
+ ["nextToken" =: _lcrNextToken,
+ "maxResults" =: _lcrMaxResults]
+
+-- | /See:/ 'listConfigurationRevisionsResponse' smart constructor.
+data ListConfigurationRevisionsResponse = ListConfigurationRevisionsResponse'
+ { _lcrrsConfigurationId :: !(Maybe Text)
+ , _lcrrsNextToken :: !(Maybe Text)
+ , _lcrrsRevisions :: !(Maybe [ConfigurationRevision])
+ , _lcrrsMaxResults :: !(Maybe Int)
+ , _lcrrsResponseStatus :: !Int
+ } deriving (Eq, Read, Show, Data, Typeable, Generic)
+
+
+-- | Creates a value of 'ListConfigurationRevisionsResponse' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'lcrrsConfigurationId' - The unique ID that Amazon MQ generates for the configuration.
+--
+-- * 'lcrrsNextToken' - The token that specifies the next page of results Amazon MQ should return. To request the first page, leave nextToken empty.
+--
+-- * 'lcrrsRevisions' - The list of all revisions for the specified configuration.
+--
+-- * 'lcrrsMaxResults' - The maximum number of configuration revisions that can be returned per page (20 by default). This value must be an integer from 5 to 100.
+--
+-- * 'lcrrsResponseStatus' - -- | The response status code.
+listConfigurationRevisionsResponse
+ :: Int -- ^ 'lcrrsResponseStatus'
+ -> ListConfigurationRevisionsResponse
+listConfigurationRevisionsResponse pResponseStatus_ =
+ ListConfigurationRevisionsResponse'
+ { _lcrrsConfigurationId = Nothing
+ , _lcrrsNextToken = Nothing
+ , _lcrrsRevisions = Nothing
+ , _lcrrsMaxResults = Nothing
+ , _lcrrsResponseStatus = pResponseStatus_
+ }
+
+
+-- | The unique ID that Amazon MQ generates for the configuration.
+lcrrsConfigurationId :: Lens' ListConfigurationRevisionsResponse (Maybe Text)
+lcrrsConfigurationId = lens _lcrrsConfigurationId (\ s a -> s{_lcrrsConfigurationId = a})
+
+-- | The token that specifies the next page of results Amazon MQ should return. To request the first page, leave nextToken empty.
+lcrrsNextToken :: Lens' ListConfigurationRevisionsResponse (Maybe Text)
+lcrrsNextToken = lens _lcrrsNextToken (\ s a -> s{_lcrrsNextToken = a})
+
+-- | The list of all revisions for the specified configuration.
+lcrrsRevisions :: Lens' ListConfigurationRevisionsResponse [ConfigurationRevision]
+lcrrsRevisions = lens _lcrrsRevisions (\ s a -> s{_lcrrsRevisions = a}) . _Default . _Coerce
+
+-- | The maximum number of configuration revisions that can be returned per page (20 by default). This value must be an integer from 5 to 100.
+lcrrsMaxResults :: Lens' ListConfigurationRevisionsResponse (Maybe Int)
+lcrrsMaxResults = lens _lcrrsMaxResults (\ s a -> s{_lcrrsMaxResults = a})
+
+-- | -- | The response status code.
+lcrrsResponseStatus :: Lens' ListConfigurationRevisionsResponse Int
+lcrrsResponseStatus = lens _lcrrsResponseStatus (\ s a -> s{_lcrrsResponseStatus = a})
+
+instance NFData ListConfigurationRevisionsResponse
+ where
diff --git a/gen/Network/AWS/MQ/ListConfigurations.hs b/gen/Network/AWS/MQ/ListConfigurations.hs
new file mode 100644
index 0000000..b34af83
--- /dev/null
+++ b/gen/Network/AWS/MQ/ListConfigurations.hs
@@ -0,0 +1,157 @@
+{-# LANGUAGE DeriveDataTypeable #-}
+{-# LANGUAGE DeriveGeneric #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE TypeFamilies #-}
+
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- Derived from AWS service descriptions, licensed under Apache 2.0.
+
+-- |
+-- Module : Network.AWS.MQ.ListConfigurations
+-- Copyright : (c) 2013-2018 Brendan Hay
+-- License : Mozilla Public License, v. 2.0.
+-- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
+-- Stability : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Returns a list of all configurations.
+module Network.AWS.MQ.ListConfigurations
+ (
+ -- * Creating a Request
+ listConfigurations
+ , ListConfigurations
+ -- * Request Lenses
+ , lcNextToken
+ , lcMaxResults
+
+ -- * Destructuring the Response
+ , listConfigurationsResponse
+ , ListConfigurationsResponse
+ -- * Response Lenses
+ , lcrsConfigurations
+ , lcrsNextToken
+ , lcrsMaxResults
+ , lcrsResponseStatus
+ ) where
+
+import Network.AWS.Lens
+import Network.AWS.MQ.Types
+import Network.AWS.MQ.Types.Product
+import Network.AWS.Prelude
+import Network.AWS.Request
+import Network.AWS.Response
+
+-- | /See:/ 'listConfigurations' smart constructor.
+data ListConfigurations = ListConfigurations'
+ { _lcNextToken :: !(Maybe Text)
+ , _lcMaxResults :: !(Maybe Nat)
+ } deriving (Eq, Read, Show, Data, Typeable, Generic)
+
+
+-- | Creates a value of 'ListConfigurations' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'lcNextToken' - The token that specifies the next page of results Amazon MQ should return. To request the first page, leave nextToken empty.
+--
+-- * 'lcMaxResults' - The maximum number of configurations that Amazon MQ can return per page (20 by default). This value must be an integer from 5 to 100.
+listConfigurations
+ :: ListConfigurations
+listConfigurations =
+ ListConfigurations' {_lcNextToken = Nothing, _lcMaxResults = Nothing}
+
+
+-- | The token that specifies the next page of results Amazon MQ should return. To request the first page, leave nextToken empty.
+lcNextToken :: Lens' ListConfigurations (Maybe Text)
+lcNextToken = lens _lcNextToken (\ s a -> s{_lcNextToken = a})
+
+-- | The maximum number of configurations that Amazon MQ can return per page (20 by default). This value must be an integer from 5 to 100.
+lcMaxResults :: Lens' ListConfigurations (Maybe Natural)
+lcMaxResults = lens _lcMaxResults (\ s a -> s{_lcMaxResults = a}) . mapping _Nat
+
+instance AWSRequest ListConfigurations where
+ type Rs ListConfigurations =
+ ListConfigurationsResponse
+ request = get mq
+ response
+ = receiveJSON
+ (\ s h x ->
+ ListConfigurationsResponse' <$>
+ (x .?> "configurations" .!@ mempty) <*>
+ (x .?> "nextToken")
+ <*> (x .?> "maxResults")
+ <*> (pure (fromEnum s)))
+
+instance Hashable ListConfigurations where
+
+instance NFData ListConfigurations where
+
+instance ToHeaders ListConfigurations where
+ toHeaders
+ = const
+ (mconcat
+ ["Content-Type" =#
+ ("application/x-amz-json-1.1" :: ByteString)])
+
+instance ToPath ListConfigurations where
+ toPath = const "/v1/configurations"
+
+instance ToQuery ListConfigurations where
+ toQuery ListConfigurations'{..}
+ = mconcat
+ ["nextToken" =: _lcNextToken,
+ "maxResults" =: _lcMaxResults]
+
+-- | /See:/ 'listConfigurationsResponse' smart constructor.
+data ListConfigurationsResponse = ListConfigurationsResponse'
+ { _lcrsConfigurations :: !(Maybe [Configuration])
+ , _lcrsNextToken :: !(Maybe Text)
+ , _lcrsMaxResults :: !(Maybe Int)
+ , _lcrsResponseStatus :: !Int
+ } deriving (Eq, Read, Show, Data, Typeable, Generic)
+
+
+-- | Creates a value of 'ListConfigurationsResponse' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'lcrsConfigurations' - The list of all revisions for the specified configuration.
+--
+-- * 'lcrsNextToken' - The token that specifies the next page of results Amazon MQ should return. To request the first page, leave nextToken empty.
+--
+-- * 'lcrsMaxResults' - The maximum number of configurations that Amazon MQ can return per page (20 by default). This value must be an integer from 5 to 100.
+--
+-- * 'lcrsResponseStatus' - -- | The response status code.
+listConfigurationsResponse
+ :: Int -- ^ 'lcrsResponseStatus'
+ -> ListConfigurationsResponse
+listConfigurationsResponse pResponseStatus_ =
+ ListConfigurationsResponse'
+ { _lcrsConfigurations = Nothing
+ , _lcrsNextToken = Nothing
+ , _lcrsMaxResults = Nothing
+ , _lcrsResponseStatus = pResponseStatus_
+ }
+
+
+-- | The list of all revisions for the specified configuration.
+lcrsConfigurations :: Lens' ListConfigurationsResponse [Configuration]
+lcrsConfigurations = lens _lcrsConfigurations (\ s a -> s{_lcrsConfigurations = a}) . _Default . _Coerce
+
+-- | The token that specifies the next page of results Amazon MQ should return. To request the first page, leave nextToken empty.
+lcrsNextToken :: Lens' ListConfigurationsResponse (Maybe Text)
+lcrsNextToken = lens _lcrsNextToken (\ s a -> s{_lcrsNextToken = a})
+
+-- | The maximum number of configurations that Amazon MQ can return per page (20 by default). This value must be an integer from 5 to 100.
+lcrsMaxResults :: Lens' ListConfigurationsResponse (Maybe Int)
+lcrsMaxResults = lens _lcrsMaxResults (\ s a -> s{_lcrsMaxResults = a})
+
+-- | -- | The response status code.
+lcrsResponseStatus :: Lens' ListConfigurationsResponse Int
+lcrsResponseStatus = lens _lcrsResponseStatus (\ s a -> s{_lcrsResponseStatus = a})
+
+instance NFData ListConfigurationsResponse where
diff --git a/gen/Network/AWS/MQ/ListUsers.hs b/gen/Network/AWS/MQ/ListUsers.hs
new file mode 100644
index 0000000..a808cf3
--- /dev/null
+++ b/gen/Network/AWS/MQ/ListUsers.hs
@@ -0,0 +1,177 @@
+{-# LANGUAGE DeriveDataTypeable #-}
+{-# LANGUAGE DeriveGeneric #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE TypeFamilies #-}
+
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- Derived from AWS service descriptions, licensed under Apache 2.0.
+
+-- |
+-- Module : Network.AWS.MQ.ListUsers
+-- Copyright : (c) 2013-2018 Brendan Hay
+-- License : Mozilla Public License, v. 2.0.
+-- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
+-- Stability : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Returns a list of all ActiveMQ users.
+module Network.AWS.MQ.ListUsers
+ (
+ -- * Creating a Request
+ listUsers
+ , ListUsers
+ -- * Request Lenses
+ , luNextToken
+ , luMaxResults
+ , luBrokerId
+
+ -- * Destructuring the Response
+ , listUsersResponse
+ , ListUsersResponse
+ -- * Response Lenses
+ , lursUsers
+ , lursNextToken
+ , lursBrokerId
+ , lursMaxResults
+ , lursResponseStatus
+ ) where
+
+import Network.AWS.Lens
+import Network.AWS.MQ.Types
+import Network.AWS.MQ.Types.Product
+import Network.AWS.Prelude
+import Network.AWS.Request
+import Network.AWS.Response
+
+-- | /See:/ 'listUsers' smart constructor.
+data ListUsers = ListUsers'
+ { _luNextToken :: !(Maybe Text)
+ , _luMaxResults :: !(Maybe Nat)
+ , _luBrokerId :: !Text
+ } deriving (Eq, Read, Show, Data, Typeable, Generic)
+
+
+-- | Creates a value of 'ListUsers' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'luNextToken' - The token that specifies the next page of results Amazon MQ should return. To request the first page, leave nextToken empty.
+--
+-- * 'luMaxResults' - The maximum number of ActiveMQ users that can be returned per page (20 by default). This value must be an integer from 5 to 100.
+--
+-- * 'luBrokerId' - The unique ID that Amazon MQ generates for the broker.
+listUsers
+ :: Text -- ^ 'luBrokerId'
+ -> ListUsers
+listUsers pBrokerId_ =
+ ListUsers'
+ {_luNextToken = Nothing, _luMaxResults = Nothing, _luBrokerId = pBrokerId_}
+
+
+-- | The token that specifies the next page of results Amazon MQ should return. To request the first page, leave nextToken empty.
+luNextToken :: Lens' ListUsers (Maybe Text)
+luNextToken = lens _luNextToken (\ s a -> s{_luNextToken = a})
+
+-- | The maximum number of ActiveMQ users that can be returned per page (20 by default). This value must be an integer from 5 to 100.
+luMaxResults :: Lens' ListUsers (Maybe Natural)
+luMaxResults = lens _luMaxResults (\ s a -> s{_luMaxResults = a}) . mapping _Nat
+
+-- | The unique ID that Amazon MQ generates for the broker.
+luBrokerId :: Lens' ListUsers Text
+luBrokerId = lens _luBrokerId (\ s a -> s{_luBrokerId = a})
+
+instance AWSRequest ListUsers where
+ type Rs ListUsers = ListUsersResponse
+ request = get mq
+ response
+ = receiveJSON
+ (\ s h x ->
+ ListUsersResponse' <$>
+ (x .?> "users" .!@ mempty) <*> (x .?> "nextToken")
+ <*> (x .?> "brokerId")
+ <*> (x .?> "maxResults")
+ <*> (pure (fromEnum s)))
+
+instance Hashable ListUsers where
+
+instance NFData ListUsers where
+
+instance ToHeaders ListUsers where
+ toHeaders
+ = const
+ (mconcat
+ ["Content-Type" =#
+ ("application/x-amz-json-1.1" :: ByteString)])
+
+instance ToPath ListUsers where
+ toPath ListUsers'{..}
+ = mconcat
+ ["/v1/brokers/", toBS _luBrokerId, "/users"]
+
+instance ToQuery ListUsers where
+ toQuery ListUsers'{..}
+ = mconcat
+ ["nextToken" =: _luNextToken,
+ "maxResults" =: _luMaxResults]
+
+-- | /See:/ 'listUsersResponse' smart constructor.
+data ListUsersResponse = ListUsersResponse'
+ { _lursUsers :: !(Maybe [UserSummary])
+ , _lursNextToken :: !(Maybe Text)
+ , _lursBrokerId :: !(Maybe Text)
+ , _lursMaxResults :: !(Maybe Int)
+ , _lursResponseStatus :: !Int
+ } deriving (Eq, Read, Show, Data, Typeable, Generic)
+
+
+-- | Creates a value of 'ListUsersResponse' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'lursUsers' - Required. The list of all ActiveMQ usernames for the specified broker.
+--
+-- * 'lursNextToken' - The token that specifies the next page of results Amazon MQ should return. To request the first page, leave nextToken empty.
+--
+-- * 'lursBrokerId' - Required. The unique ID that Amazon MQ generates for the broker.
+--
+-- * 'lursMaxResults' - Required. The maximum number of ActiveMQ users that can be returned per page (20 by default). This value must be an integer from 5 to 100.
+--
+-- * 'lursResponseStatus' - -- | The response status code.
+listUsersResponse
+ :: Int -- ^ 'lursResponseStatus'
+ -> ListUsersResponse
+listUsersResponse pResponseStatus_ =
+ ListUsersResponse'
+ { _lursUsers = Nothing
+ , _lursNextToken = Nothing
+ , _lursBrokerId = Nothing
+ , _lursMaxResults = Nothing
+ , _lursResponseStatus = pResponseStatus_
+ }
+
+
+-- | Required. The list of all ActiveMQ usernames for the specified broker.
+lursUsers :: Lens' ListUsersResponse [UserSummary]
+lursUsers = lens _lursUsers (\ s a -> s{_lursUsers = a}) . _Default . _Coerce
+
+-- | The token that specifies the next page of results Amazon MQ should return. To request the first page, leave nextToken empty.
+lursNextToken :: Lens' ListUsersResponse (Maybe Text)
+lursNextToken = lens _lursNextToken (\ s a -> s{_lursNextToken = a})
+
+-- | Required. The unique ID that Amazon MQ generates for the broker.
+lursBrokerId :: Lens' ListUsersResponse (Maybe Text)
+lursBrokerId = lens _lursBrokerId (\ s a -> s{_lursBrokerId = a})
+
+-- | Required. The maximum number of ActiveMQ users that can be returned per page (20 by default). This value must be an integer from 5 to 100.
+lursMaxResults :: Lens' ListUsersResponse (Maybe Int)
+lursMaxResults = lens _lursMaxResults (\ s a -> s{_lursMaxResults = a})
+
+-- | -- | The response status code.
+lursResponseStatus :: Lens' ListUsersResponse Int
+lursResponseStatus = lens _lursResponseStatus (\ s a -> s{_lursResponseStatus = a})
+
+instance NFData ListUsersResponse where
diff --git a/gen/Network/AWS/MQ/RebootBroker.hs b/gen/Network/AWS/MQ/RebootBroker.hs
new file mode 100644
index 0000000..7660ad0
--- /dev/null
+++ b/gen/Network/AWS/MQ/RebootBroker.hs
@@ -0,0 +1,117 @@
+{-# LANGUAGE DeriveDataTypeable #-}
+{-# LANGUAGE DeriveGeneric #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE TypeFamilies #-}
+
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- Derived from AWS service descriptions, licensed under Apache 2.0.
+
+-- |
+-- Module : Network.AWS.MQ.RebootBroker
+-- Copyright : (c) 2013-2018 Brendan Hay
+-- License : Mozilla Public License, v. 2.0.
+-- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
+-- Stability : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Reboots a broker. Note: This API is asynchronous.
+module Network.AWS.MQ.RebootBroker
+ (
+ -- * Creating a Request
+ rebootBroker
+ , RebootBroker
+ -- * Request Lenses
+ , rbBrokerId
+
+ -- * Destructuring the Response
+ , rebootBrokerResponse
+ , RebootBrokerResponse
+ -- * Response Lenses
+ , rbrsResponseStatus
+ ) where
+
+import Network.AWS.Lens
+import Network.AWS.MQ.Types
+import Network.AWS.MQ.Types.Product
+import Network.AWS.Prelude
+import Network.AWS.Request
+import Network.AWS.Response
+
+-- | /See:/ 'rebootBroker' smart constructor.
+newtype RebootBroker = RebootBroker'
+ { _rbBrokerId :: Text
+ } deriving (Eq, Read, Show, Data, Typeable, Generic)
+
+
+-- | Creates a value of 'RebootBroker' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'rbBrokerId' - The unique ID that Amazon MQ generates for the broker.
+rebootBroker
+ :: Text -- ^ 'rbBrokerId'
+ -> RebootBroker
+rebootBroker pBrokerId_ = RebootBroker' {_rbBrokerId = pBrokerId_}
+
+
+-- | The unique ID that Amazon MQ generates for the broker.
+rbBrokerId :: Lens' RebootBroker Text
+rbBrokerId = lens _rbBrokerId (\ s a -> s{_rbBrokerId = a})
+
+instance AWSRequest RebootBroker where
+ type Rs RebootBroker = RebootBrokerResponse
+ request = postJSON mq
+ response
+ = receiveEmpty
+ (\ s h x ->
+ RebootBrokerResponse' <$> (pure (fromEnum s)))
+
+instance Hashable RebootBroker where
+
+instance NFData RebootBroker where
+
+instance ToHeaders RebootBroker where
+ toHeaders
+ = const
+ (mconcat
+ ["Content-Type" =#
+ ("application/x-amz-json-1.1" :: ByteString)])
+
+instance ToJSON RebootBroker where
+ toJSON = const (Object mempty)
+
+instance ToPath RebootBroker where
+ toPath RebootBroker'{..}
+ = mconcat
+ ["/v1/brokers/", toBS _rbBrokerId, "/reboot"]
+
+instance ToQuery RebootBroker where
+ toQuery = const mempty
+
+-- | /See:/ 'rebootBrokerResponse' smart constructor.
+newtype RebootBrokerResponse = RebootBrokerResponse'
+ { _rbrsResponseStatus :: Int
+ } deriving (Eq, Read, Show, Data, Typeable, Generic)
+
+
+-- | Creates a value of 'RebootBrokerResponse' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'rbrsResponseStatus' - -- | The response status code.
+rebootBrokerResponse
+ :: Int -- ^ 'rbrsResponseStatus'
+ -> RebootBrokerResponse
+rebootBrokerResponse pResponseStatus_ =
+ RebootBrokerResponse' {_rbrsResponseStatus = pResponseStatus_}
+
+
+-- | -- | The response status code.
+rbrsResponseStatus :: Lens' RebootBrokerResponse Int
+rbrsResponseStatus = lens _rbrsResponseStatus (\ s a -> s{_rbrsResponseStatus = a})
+
+instance NFData RebootBrokerResponse where
diff --git a/gen/Network/AWS/MQ/Types.hs b/gen/Network/AWS/MQ/Types.hs
new file mode 100644
index 0000000..f51674d
--- /dev/null
+++ b/gen/Network/AWS/MQ/Types.hs
@@ -0,0 +1,202 @@
+{-# LANGUAGE OverloadedStrings #-}
+
+-- Derived from AWS service descriptions, licensed under Apache 2.0.
+
+-- |
+-- Module : Network.AWS.MQ.Types
+-- Copyright : (c) 2013-2018 Brendan Hay
+-- License : Mozilla Public License, v. 2.0.
+-- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
+-- Stability : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+module Network.AWS.MQ.Types
+ (
+ -- * Service Configuration
+ mq
+
+ -- * Errors
+ , _ConflictException
+ , _ForbiddenException
+ , _NotFoundException
+ , _InternalServerErrorException
+ , _UnauthorizedException
+ , _BadRequestException
+
+ -- * BrokerState
+ , BrokerState (..)
+
+ -- * ChangeType
+ , ChangeType (..)
+
+ -- * DayOfWeek
+ , DayOfWeek (..)
+
+ -- * DeploymentMode
+ , DeploymentMode (..)
+
+ -- * EngineType
+ , EngineType (..)
+
+ -- * SanitizationWarningReason
+ , SanitizationWarningReason (..)
+
+ -- * BrokerInstance
+ , BrokerInstance
+ , brokerInstance
+ , biConsoleURL
+ , biEndpoints
+
+ -- * BrokerSummary
+ , BrokerSummary
+ , brokerSummary
+ , bsBrokerName
+ , bsBrokerState
+ , bsDeploymentMode
+ , bsBrokerId
+ , bsBrokerARN
+ , bsHostInstanceType
+
+ -- * Configuration
+ , Configuration
+ , configuration
+ , cEngineVersion
+ , cARN
+ , cLatestRevision
+ , cName
+ , cId
+ , cDescription
+ , cEngineType
+
+ -- * ConfigurationId
+ , ConfigurationId
+ , configurationId
+ , ciId
+ , ciRevision
+
+ -- * ConfigurationRevision
+ , ConfigurationRevision
+ , configurationRevision
+ , crRevision
+ , crDescription
+
+ -- * Configurations
+ , Configurations
+ , configurations
+ , cPending
+ , cHistory
+ , cCurrent
+
+ -- * SanitizationWarning
+ , SanitizationWarning
+ , sanitizationWarning
+ , swReason
+ , swAttributeName
+ , swElementName
+
+ -- * User
+ , User
+ , user
+ , uGroups
+ , uConsoleAccess
+ , uUsername
+ , uPassword
+
+ -- * UserPendingChanges
+ , UserPendingChanges
+ , userPendingChanges
+ , upcGroups
+ , upcConsoleAccess
+ , upcPendingChange
+
+ -- * UserSummary
+ , UserSummary
+ , userSummary
+ , usUsername
+ , usPendingChange
+
+ -- * WeeklyStartTime
+ , WeeklyStartTime
+ , weeklyStartTime
+ , wstTimeOfDay
+ , wstTimeZone
+ , wstDayOfWeek
+ ) where
+
+import Network.AWS.Lens
+import Network.AWS.MQ.Types.Product
+import Network.AWS.MQ.Types.Sum
+import Network.AWS.Prelude
+import Network.AWS.Sign.V4
+
+-- | API version @2017-11-27@ of the Amazon MQ SDK configuration.
+mq :: Service
+mq =
+ Service
+ { _svcAbbrev = "MQ"
+ , _svcSigner = v4
+ , _svcPrefix = "mq"
+ , _svcVersion = "2017-11-27"
+ , _svcEndpoint = defaultEndpoint mq
+ , _svcTimeout = Just 70
+ , _svcCheck = statusSuccess
+ , _svcError = parseJSONError "MQ"
+ , _svcRetry = retry
+ }
+ where
+ retry =
+ Exponential
+ { _retryBase = 5.0e-2
+ , _retryGrowth = 2
+ , _retryAttempts = 5
+ , _retryCheck = check
+ }
+ check e
+ | has (hasCode "ThrottledException" . hasStatus 400) e =
+ Just "throttled_exception"
+ | has (hasStatus 429) e = Just "too_many_requests"
+ | has (hasCode "ThrottlingException" . hasStatus 400) e =
+ Just "throttling_exception"
+ | has (hasCode "Throttling" . hasStatus 400) e = Just "throttling"
+ | has (hasStatus 504) e = Just "gateway_timeout"
+ | has (hasCode "RequestThrottledException" . hasStatus 400) e =
+ Just "request_throttled_exception"
+ | has (hasStatus 502) e = Just "bad_gateway"
+ | has (hasStatus 503) e = Just "service_unavailable"
+ | has (hasStatus 500) e = Just "general_server_error"
+ | has (hasStatus 509) e = Just "limit_exceeded"
+ | otherwise = Nothing
+
+
+-- | Returns information about an error.
+_ConflictException :: AsError a => Getting (First ServiceError) a ServiceError
+_ConflictException = _MatchServiceError mq "ConflictException" . hasStatus 409
+
+
+-- | Returns information about an error.
+_ForbiddenException :: AsError a => Getting (First ServiceError) a ServiceError
+_ForbiddenException = _MatchServiceError mq "ForbiddenException" . hasStatus 403
+
+
+-- | Returns information about an error.
+_NotFoundException :: AsError a => Getting (First ServiceError) a ServiceError
+_NotFoundException = _MatchServiceError mq "NotFoundException" . hasStatus 404
+
+
+-- | Returns information about an error.
+_InternalServerErrorException :: AsError a => Getting (First ServiceError) a ServiceError
+_InternalServerErrorException =
+ _MatchServiceError mq "InternalServerErrorException" . hasStatus 500
+
+
+-- | Returns information about an error.
+_UnauthorizedException :: AsError a => Getting (First ServiceError) a ServiceError
+_UnauthorizedException =
+ _MatchServiceError mq "UnauthorizedException" . hasStatus 401
+
+
+-- | Returns information about an error.
+_BadRequestException :: AsError a => Getting (First ServiceError) a ServiceError
+_BadRequestException =
+ _MatchServiceError mq "BadRequestException" . hasStatus 400
+
diff --git a/gen/Network/AWS/MQ/Types/Product.hs b/gen/Network/AWS/MQ/Types/Product.hs
new file mode 100644
index 0000000..2401750
--- /dev/null
+++ b/gen/Network/AWS/MQ/Types/Product.hs
@@ -0,0 +1,635 @@
+{-# LANGUAGE DeriveDataTypeable #-}
+{-# LANGUAGE DeriveGeneric #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+
+-- Derived from AWS service descriptions, licensed under Apache 2.0.
+
+-- |
+-- Module : Network.AWS.MQ.Types.Product
+-- Copyright : (c) 2013-2018 Brendan Hay
+-- License : Mozilla Public License, v. 2.0.
+-- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
+-- Stability : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+module Network.AWS.MQ.Types.Product where
+
+import Network.AWS.Lens
+import Network.AWS.MQ.Types.Sum
+import Network.AWS.Prelude
+
+-- | Returns information about all brokers.
+--
+-- /See:/ 'brokerInstance' smart constructor.
+data BrokerInstance = BrokerInstance'
+ { _biConsoleURL :: !(Maybe Text)
+ , _biEndpoints :: !(Maybe [Text])
+ } deriving (Eq, Read, Show, Data, Typeable, Generic)
+
+
+-- | Creates a value of 'BrokerInstance' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'biConsoleURL' - The URL of the broker's ActiveMQ Web Console.
+--
+-- * 'biEndpoints' - The broker's wire-level protocol endpoints.
+brokerInstance
+ :: BrokerInstance
+brokerInstance =
+ BrokerInstance' {_biConsoleURL = Nothing, _biEndpoints = Nothing}
+
+
+-- | The URL of the broker's ActiveMQ Web Console.
+biConsoleURL :: Lens' BrokerInstance (Maybe Text)
+biConsoleURL = lens _biConsoleURL (\ s a -> s{_biConsoleURL = a})
+
+-- | The broker's wire-level protocol endpoints.
+biEndpoints :: Lens' BrokerInstance [Text]
+biEndpoints = lens _biEndpoints (\ s a -> s{_biEndpoints = a}) . _Default . _Coerce
+
+instance FromJSON BrokerInstance where
+ parseJSON
+ = withObject "BrokerInstance"
+ (\ x ->
+ BrokerInstance' <$>
+ (x .:? "consoleURL") <*>
+ (x .:? "endpoints" .!= mempty))
+
+instance Hashable BrokerInstance where
+
+instance NFData BrokerInstance where
+
+-- | The Amazon Resource Name (ARN) of the broker.
+--
+-- /See:/ 'brokerSummary' smart constructor.
+data BrokerSummary = BrokerSummary'
+ { _bsBrokerName :: !(Maybe Text)
+ , _bsBrokerState :: !(Maybe BrokerState)
+ , _bsDeploymentMode :: !(Maybe DeploymentMode)
+ , _bsBrokerId :: !(Maybe Text)
+ , _bsBrokerARN :: !(Maybe Text)
+ , _bsHostInstanceType :: !(Maybe Text)
+ } deriving (Eq, Read, Show, Data, Typeable, Generic)
+
+
+-- | Creates a value of 'BrokerSummary' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'bsBrokerName' - The name of the broker. This value must be unique in your AWS account, 1-50 characters long, must contain only letters, numbers, dashes, and underscores, and must not contain whitespaces, brackets, wildcard characters, or special characters.
+--
+-- * 'bsBrokerState' - The status of the broker. Possible values: CREATION_IN_PROGRESS, CREATION_FAILED, DELETION_IN_PROGRESS, RUNNING, REBOOT_IN_PROGRESS
+--
+-- * 'bsDeploymentMode' - Required. The deployment mode of the broker. Possible values: SINGLE_INSTANCE, ACTIVE_STANDBY_MULTI_AZ SINGLE_INSTANCE creates a single-instance broker in a single Availability Zone. ACTIVE_STANDBY_MULTI_AZ creates an active/standby broker for high availability.
+--
+-- * 'bsBrokerId' - The unique ID that Amazon MQ generates for the broker.
+--
+-- * 'bsBrokerARN' - The Amazon Resource Name (ARN) of the broker.
+--
+-- * 'bsHostInstanceType' - The broker's instance type. Possible values: mq.t2.micro, mq.m4.large
+brokerSummary
+ :: BrokerSummary
+brokerSummary =
+ BrokerSummary'
+ { _bsBrokerName = Nothing
+ , _bsBrokerState = Nothing
+ , _bsDeploymentMode = Nothing
+ , _bsBrokerId = Nothing
+ , _bsBrokerARN = Nothing
+ , _bsHostInstanceType = Nothing
+ }
+
+
+-- | The name of the broker. This value must be unique in your AWS account, 1-50 characters long, must contain only letters, numbers, dashes, and underscores, and must not contain whitespaces, brackets, wildcard characters, or special characters.
+bsBrokerName :: Lens' BrokerSummary (Maybe Text)
+bsBrokerName = lens _bsBrokerName (\ s a -> s{_bsBrokerName = a})
+
+-- | The status of the broker. Possible values: CREATION_IN_PROGRESS, CREATION_FAILED, DELETION_IN_PROGRESS, RUNNING, REBOOT_IN_PROGRESS
+bsBrokerState :: Lens' BrokerSummary (Maybe BrokerState)
+bsBrokerState = lens _bsBrokerState (\ s a -> s{_bsBrokerState = a})
+
+-- | Required. The deployment mode of the broker. Possible values: SINGLE_INSTANCE, ACTIVE_STANDBY_MULTI_AZ SINGLE_INSTANCE creates a single-instance broker in a single Availability Zone. ACTIVE_STANDBY_MULTI_AZ creates an active/standby broker for high availability.
+bsDeploymentMode :: Lens' BrokerSummary (Maybe DeploymentMode)
+bsDeploymentMode = lens _bsDeploymentMode (\ s a -> s{_bsDeploymentMode = a})
+
+-- | The unique ID that Amazon MQ generates for the broker.
+bsBrokerId :: Lens' BrokerSummary (Maybe Text)
+bsBrokerId = lens _bsBrokerId (\ s a -> s{_bsBrokerId = a})
+
+-- | The Amazon Resource Name (ARN) of the broker.
+bsBrokerARN :: Lens' BrokerSummary (Maybe Text)
+bsBrokerARN = lens _bsBrokerARN (\ s a -> s{_bsBrokerARN = a})
+
+-- | The broker's instance type. Possible values: mq.t2.micro, mq.m4.large
+bsHostInstanceType :: Lens' BrokerSummary (Maybe Text)
+bsHostInstanceType = lens _bsHostInstanceType (\ s a -> s{_bsHostInstanceType = a})
+
+instance FromJSON BrokerSummary where
+ parseJSON
+ = withObject "BrokerSummary"
+ (\ x ->
+ BrokerSummary' <$>
+ (x .:? "brokerName") <*> (x .:? "brokerState") <*>
+ (x .:? "deploymentMode")
+ <*> (x .:? "brokerId")
+ <*> (x .:? "brokerArn")
+ <*> (x .:? "hostInstanceType"))
+
+instance Hashable BrokerSummary where
+
+instance NFData BrokerSummary where
+
+-- | Returns information about all configurations.
+--
+-- /See:/ 'configuration' smart constructor.
+data Configuration = Configuration'
+ { _cEngineVersion :: !(Maybe Text)
+ , _cARN :: !(Maybe Text)
+ , _cLatestRevision :: !(Maybe ConfigurationRevision)
+ , _cName :: !(Maybe Text)
+ , _cId :: !(Maybe Text)
+ , _cDescription :: !(Maybe Text)
+ , _cEngineType :: !(Maybe EngineType)
+ } deriving (Eq, Read, Show, Data, Typeable, Generic)
+
+
+-- | Creates a value of 'Configuration' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'cEngineVersion' - Required. The version of the broker engine.
+--
+-- * 'cARN' - Required. The ARN of the configuration.
+--
+-- * 'cLatestRevision' - Required. The latest revision of the configuration.
+--
+-- * 'cName' - Required. The name of the configuration. This value can contain only alphanumeric characters, dashes, periods, underscores, and tildes (- . _ ~). This value must be 1-150 characters long.
+--
+-- * 'cId' - Required. The unique ID that Amazon MQ generates for the configuration.
+--
+-- * 'cDescription' - Required. The description of the configuration.
+--
+-- * 'cEngineType' - Required. The type of broker engine. Note: Currently, Amazon MQ supports only ACTIVEMQ.
+configuration
+ :: Configuration
+configuration =
+ Configuration'
+ { _cEngineVersion = Nothing
+ , _cARN = Nothing
+ , _cLatestRevision = Nothing
+ , _cName = Nothing
+ , _cId = Nothing
+ , _cDescription = Nothing
+ , _cEngineType = Nothing
+ }
+
+
+-- | Required. The version of the broker engine.
+cEngineVersion :: Lens' Configuration (Maybe Text)
+cEngineVersion = lens _cEngineVersion (\ s a -> s{_cEngineVersion = a})
+
+-- | Required. The ARN of the configuration.
+cARN :: Lens' Configuration (Maybe Text)
+cARN = lens _cARN (\ s a -> s{_cARN = a})
+
+-- | Required. The latest revision of the configuration.
+cLatestRevision :: Lens' Configuration (Maybe ConfigurationRevision)
+cLatestRevision = lens _cLatestRevision (\ s a -> s{_cLatestRevision = a})
+
+-- | Required. The name of the configuration. This value can contain only alphanumeric characters, dashes, periods, underscores, and tildes (- . _ ~). This value must be 1-150 characters long.
+cName :: Lens' Configuration (Maybe Text)
+cName = lens _cName (\ s a -> s{_cName = a})
+
+-- | Required. The unique ID that Amazon MQ generates for the configuration.
+cId :: Lens' Configuration (Maybe Text)
+cId = lens _cId (\ s a -> s{_cId = a})
+
+-- | Required. The description of the configuration.
+cDescription :: Lens' Configuration (Maybe Text)
+cDescription = lens _cDescription (\ s a -> s{_cDescription = a})
+
+-- | Required. The type of broker engine. Note: Currently, Amazon MQ supports only ACTIVEMQ.
+cEngineType :: Lens' Configuration (Maybe EngineType)
+cEngineType = lens _cEngineType (\ s a -> s{_cEngineType = a})
+
+instance FromJSON Configuration where
+ parseJSON
+ = withObject "Configuration"
+ (\ x ->
+ Configuration' <$>
+ (x .:? "engineVersion") <*> (x .:? "arn") <*>
+ (x .:? "latestRevision")
+ <*> (x .:? "name")
+ <*> (x .:? "id")
+ <*> (x .:? "description")
+ <*> (x .:? "engineType"))
+
+instance Hashable Configuration where
+
+instance NFData Configuration where
+
+-- | A list of information about the configuration.
+--
+-- /See:/ 'configurationId' smart constructor.
+data ConfigurationId = ConfigurationId'
+ { _ciId :: !(Maybe Text)
+ , _ciRevision :: !(Maybe Int)
+ } deriving (Eq, Read, Show, Data, Typeable, Generic)
+
+
+-- | Creates a value of 'ConfigurationId' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'ciId' - Required. The unique ID that Amazon MQ generates for the configuration.
+--
+-- * 'ciRevision' - The Universally Unique Identifier (UUID) of the request.
+configurationId
+ :: ConfigurationId
+configurationId = ConfigurationId' {_ciId = Nothing, _ciRevision = Nothing}
+
+
+-- | Required. The unique ID that Amazon MQ generates for the configuration.
+ciId :: Lens' ConfigurationId (Maybe Text)
+ciId = lens _ciId (\ s a -> s{_ciId = a})
+
+-- | The Universally Unique Identifier (UUID) of the request.
+ciRevision :: Lens' ConfigurationId (Maybe Int)
+ciRevision = lens _ciRevision (\ s a -> s{_ciRevision = a})
+
+instance FromJSON ConfigurationId where
+ parseJSON
+ = withObject "ConfigurationId"
+ (\ x ->
+ ConfigurationId' <$>
+ (x .:? "id") <*> (x .:? "revision"))
+
+instance Hashable ConfigurationId where
+
+instance NFData ConfigurationId where
+
+instance ToJSON ConfigurationId where
+ toJSON ConfigurationId'{..}
+ = object
+ (catMaybes
+ [("id" .=) <$> _ciId,
+ ("revision" .=) <$> _ciRevision])
+
+-- | Returns information about the specified configuration revision.
+--
+-- /See:/ 'configurationRevision' smart constructor.
+data ConfigurationRevision = ConfigurationRevision'
+ { _crRevision :: !(Maybe Int)
+ , _crDescription :: !(Maybe Text)
+ } deriving (Eq, Read, Show, Data, Typeable, Generic)
+
+
+-- | Creates a value of 'ConfigurationRevision' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'crRevision' - Required. The revision of the configuration.
+--
+-- * 'crDescription' - The description of the configuration revision.
+configurationRevision
+ :: ConfigurationRevision
+configurationRevision =
+ ConfigurationRevision' {_crRevision = Nothing, _crDescription = Nothing}
+
+
+-- | Required. The revision of the configuration.
+crRevision :: Lens' ConfigurationRevision (Maybe Int)
+crRevision = lens _crRevision (\ s a -> s{_crRevision = a})
+
+-- | The description of the configuration revision.
+crDescription :: Lens' ConfigurationRevision (Maybe Text)
+crDescription = lens _crDescription (\ s a -> s{_crDescription = a})
+
+instance FromJSON ConfigurationRevision where
+ parseJSON
+ = withObject "ConfigurationRevision"
+ (\ x ->
+ ConfigurationRevision' <$>
+ (x .:? "revision") <*> (x .:? "description"))
+
+instance Hashable ConfigurationRevision where
+
+instance NFData ConfigurationRevision where
+
+-- | Broker configuration information
+--
+-- /See:/ 'configurations' smart constructor.
+data Configurations = Configurations'
+ { _cPending :: !(Maybe ConfigurationId)
+ , _cHistory :: !(Maybe [ConfigurationId])
+ , _cCurrent :: !(Maybe ConfigurationId)
+ } deriving (Eq, Read, Show, Data, Typeable, Generic)
+
+
+-- | Creates a value of 'Configurations' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'cPending' - The pending configuration of the broker.
+--
+-- * 'cHistory' - The history of configurations applied to the broker.
+--
+-- * 'cCurrent' - The current configuration of the broker.
+configurations
+ :: Configurations
+configurations =
+ Configurations'
+ {_cPending = Nothing, _cHistory = Nothing, _cCurrent = Nothing}
+
+
+-- | The pending configuration of the broker.
+cPending :: Lens' Configurations (Maybe ConfigurationId)
+cPending = lens _cPending (\ s a -> s{_cPending = a})
+
+-- | The history of configurations applied to the broker.
+cHistory :: Lens' Configurations [ConfigurationId]
+cHistory = lens _cHistory (\ s a -> s{_cHistory = a}) . _Default . _Coerce
+
+-- | The current configuration of the broker.
+cCurrent :: Lens' Configurations (Maybe ConfigurationId)
+cCurrent = lens _cCurrent (\ s a -> s{_cCurrent = a})
+
+instance FromJSON Configurations where
+ parseJSON
+ = withObject "Configurations"
+ (\ x ->
+ Configurations' <$>
+ (x .:? "pending") <*> (x .:? "history" .!= mempty)
+ <*> (x .:? "current"))
+
+instance Hashable Configurations where
+
+instance NFData Configurations where
+
+-- | Returns information about the XML element or attribute that was sanitized in the configuration.
+--
+-- /See:/ 'sanitizationWarning' smart constructor.
+data SanitizationWarning = SanitizationWarning'
+ { _swReason :: !(Maybe SanitizationWarningReason)
+ , _swAttributeName :: !(Maybe Text)
+ , _swElementName :: !(Maybe Text)
+ } deriving (Eq, Read, Show, Data, Typeable, Generic)
+
+
+-- | Creates a value of 'SanitizationWarning' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'swReason' - Required. The reason for which the XML elements or attributes were sanitized. Possible values: DISALLOWED_ELEMENT_REMOVED, DISALLOWED_ATTRIBUTE_REMOVED, INVALID_ATTRIBUTE_VALUE_REMOVED DISALLOWED_ELEMENT_REMOVED shows that the provided element isn't allowed and has been removed. DISALLOWED_ATTRIBUTE_REMOVED shows that the provided attribute isn't allowed and has been removed. INVALID_ATTRIBUTE_VALUE_REMOVED shows that the provided value for the attribute isn't allowed and has been removed.
+--
+-- * 'swAttributeName' - The name of the XML attribute that has been sanitized.
+--
+-- * 'swElementName' - The name of the XML element that has been sanitized.
+sanitizationWarning
+ :: SanitizationWarning
+sanitizationWarning =
+ SanitizationWarning'
+ {_swReason = Nothing, _swAttributeName = Nothing, _swElementName = Nothing}
+
+
+-- | Required. The reason for which the XML elements or attributes were sanitized. Possible values: DISALLOWED_ELEMENT_REMOVED, DISALLOWED_ATTRIBUTE_REMOVED, INVALID_ATTRIBUTE_VALUE_REMOVED DISALLOWED_ELEMENT_REMOVED shows that the provided element isn't allowed and has been removed. DISALLOWED_ATTRIBUTE_REMOVED shows that the provided attribute isn't allowed and has been removed. INVALID_ATTRIBUTE_VALUE_REMOVED shows that the provided value for the attribute isn't allowed and has been removed.
+swReason :: Lens' SanitizationWarning (Maybe SanitizationWarningReason)
+swReason = lens _swReason (\ s a -> s{_swReason = a})
+
+-- | The name of the XML attribute that has been sanitized.
+swAttributeName :: Lens' SanitizationWarning (Maybe Text)
+swAttributeName = lens _swAttributeName (\ s a -> s{_swAttributeName = a})
+
+-- | The name of the XML element that has been sanitized.
+swElementName :: Lens' SanitizationWarning (Maybe Text)
+swElementName = lens _swElementName (\ s a -> s{_swElementName = a})
+
+instance FromJSON SanitizationWarning where
+ parseJSON
+ = withObject "SanitizationWarning"
+ (\ x ->
+ SanitizationWarning' <$>
+ (x .:? "reason") <*> (x .:? "attributeName") <*>
+ (x .:? "elementName"))
+
+instance Hashable SanitizationWarning where
+
+instance NFData SanitizationWarning where
+
+-- | An ActiveMQ user associated with the broker.
+--
+-- /See:/ 'user' smart constructor.
+data User = User'
+ { _uGroups :: !(Maybe [Text])
+ , _uConsoleAccess :: !(Maybe Bool)
+ , _uUsername :: !(Maybe Text)
+ , _uPassword :: !(Maybe Text)
+ } deriving (Eq, Read, Show, Data, Typeable, Generic)
+
+
+-- | Creates a value of 'User' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'uGroups' - The list of groups (20 maximum) to which the ActiveMQ user belongs. This value can contain only alphanumeric characters, dashes, periods, underscores, and tildes (- . _ ~). This value must be 2-100 characters long.
+--
+-- * 'uConsoleAccess' - Enables access to the the ActiveMQ Web Console for the ActiveMQ user.
+--
+-- * 'uUsername' - Required. The username of the ActiveMQ user. This value can contain only alphanumeric characters, dashes, periods, underscores, and tildes (- . _ ~). This value must be 2-100 characters long.
+--
+-- * 'uPassword' - Required. The password of the ActiveMQ user. This value must be at least 12 characters long, must contain at least 4 unique characters, and must not contain commas.
+user
+ :: User
+user =
+ User'
+ { _uGroups = Nothing
+ , _uConsoleAccess = Nothing
+ , _uUsername = Nothing
+ , _uPassword = Nothing
+ }
+
+
+-- | The list of groups (20 maximum) to which the ActiveMQ user belongs. This value can contain only alphanumeric characters, dashes, periods, underscores, and tildes (- . _ ~). This value must be 2-100 characters long.
+uGroups :: Lens' User [Text]
+uGroups = lens _uGroups (\ s a -> s{_uGroups = a}) . _Default . _Coerce
+
+-- | Enables access to the the ActiveMQ Web Console for the ActiveMQ user.
+uConsoleAccess :: Lens' User (Maybe Bool)
+uConsoleAccess = lens _uConsoleAccess (\ s a -> s{_uConsoleAccess = a})
+
+-- | Required. The username of the ActiveMQ user. This value can contain only alphanumeric characters, dashes, periods, underscores, and tildes (- . _ ~). This value must be 2-100 characters long.
+uUsername :: Lens' User (Maybe Text)
+uUsername = lens _uUsername (\ s a -> s{_uUsername = a})
+
+-- | Required. The password of the ActiveMQ user. This value must be at least 12 characters long, must contain at least 4 unique characters, and must not contain commas.
+uPassword :: Lens' User (Maybe Text)
+uPassword = lens _uPassword (\ s a -> s{_uPassword = a})
+
+instance Hashable User where
+
+instance NFData User where
+
+instance ToJSON User where
+ toJSON User'{..}
+ = object
+ (catMaybes
+ [("groups" .=) <$> _uGroups,
+ ("consoleAccess" .=) <$> _uConsoleAccess,
+ ("username" .=) <$> _uUsername,
+ ("password" .=) <$> _uPassword])
+
+-- | Returns information about the status of the changes pending for the ActiveMQ user.
+--
+-- /See:/ 'userPendingChanges' smart constructor.
+data UserPendingChanges = UserPendingChanges'
+ { _upcGroups :: !(Maybe [Text])
+ , _upcConsoleAccess :: !(Maybe Bool)
+ , _upcPendingChange :: !(Maybe ChangeType)
+ } deriving (Eq, Read, Show, Data, Typeable, Generic)
+
+
+-- | Creates a value of 'UserPendingChanges' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'upcGroups' - The list of groups (20 maximum) to which the ActiveMQ user belongs. This value can contain only alphanumeric characters, dashes, periods, underscores, and tildes (- . _ ~). This value must be 2-100 characters long.
+--
+-- * 'upcConsoleAccess' - Enables access to the the ActiveMQ Web Console for the ActiveMQ user.
+--
+-- * 'upcPendingChange' - Required. The type of change pending for the ActiveMQ user. Possible values: CREATE, UPDATE, DELETE
+userPendingChanges
+ :: UserPendingChanges
+userPendingChanges =
+ UserPendingChanges'
+ { _upcGroups = Nothing
+ , _upcConsoleAccess = Nothing
+ , _upcPendingChange = Nothing
+ }
+
+
+-- | The list of groups (20 maximum) to which the ActiveMQ user belongs. This value can contain only alphanumeric characters, dashes, periods, underscores, and tildes (- . _ ~). This value must be 2-100 characters long.
+upcGroups :: Lens' UserPendingChanges [Text]
+upcGroups = lens _upcGroups (\ s a -> s{_upcGroups = a}) . _Default . _Coerce
+
+-- | Enables access to the the ActiveMQ Web Console for the ActiveMQ user.
+upcConsoleAccess :: Lens' UserPendingChanges (Maybe Bool)
+upcConsoleAccess = lens _upcConsoleAccess (\ s a -> s{_upcConsoleAccess = a})
+
+-- | Required. The type of change pending for the ActiveMQ user. Possible values: CREATE, UPDATE, DELETE
+upcPendingChange :: Lens' UserPendingChanges (Maybe ChangeType)
+upcPendingChange = lens _upcPendingChange (\ s a -> s{_upcPendingChange = a})
+
+instance FromJSON UserPendingChanges where
+ parseJSON
+ = withObject "UserPendingChanges"
+ (\ x ->
+ UserPendingChanges' <$>
+ (x .:? "groups" .!= mempty) <*>
+ (x .:? "consoleAccess")
+ <*> (x .:? "pendingChange"))
+
+instance Hashable UserPendingChanges where
+
+instance NFData UserPendingChanges where
+
+-- | Returns a list of all ActiveMQ users.
+--
+-- /See:/ 'userSummary' smart constructor.
+data UserSummary = UserSummary'
+ { _usUsername :: !(Maybe Text)
+ , _usPendingChange :: !(Maybe ChangeType)
+ } deriving (Eq, Read, Show, Data, Typeable, Generic)
+
+
+-- | Creates a value of 'UserSummary' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'usUsername' - Required. The username of the ActiveMQ user. This value can contain only alphanumeric characters, dashes, periods, underscores, and tildes (- . _ ~). This value must be 2-100 characters long.
+--
+-- * 'usPendingChange' - The type of change pending for the ActiveMQ user. Possible values: CREATE, UPDATE, DELETE
+userSummary
+ :: UserSummary
+userSummary = UserSummary' {_usUsername = Nothing, _usPendingChange = Nothing}
+
+
+-- | Required. The username of the ActiveMQ user. This value can contain only alphanumeric characters, dashes, periods, underscores, and tildes (- . _ ~). This value must be 2-100 characters long.
+usUsername :: Lens' UserSummary (Maybe Text)
+usUsername = lens _usUsername (\ s a -> s{_usUsername = a})
+
+-- | The type of change pending for the ActiveMQ user. Possible values: CREATE, UPDATE, DELETE
+usPendingChange :: Lens' UserSummary (Maybe ChangeType)
+usPendingChange = lens _usPendingChange (\ s a -> s{_usPendingChange = a})
+
+instance FromJSON UserSummary where
+ parseJSON
+ = withObject "UserSummary"
+ (\ x ->
+ UserSummary' <$>
+ (x .:? "username") <*> (x .:? "pendingChange"))
+
+instance Hashable UserSummary where
+
+instance NFData UserSummary where
+
+-- | The scheduled time period relative to UTC during which Amazon MQ begins to apply pending updates or patches to the broker.
+--
+-- /See:/ 'weeklyStartTime' smart constructor.
+data WeeklyStartTime = WeeklyStartTime'
+ { _wstTimeOfDay :: !(Maybe Text)
+ , _wstTimeZone :: !(Maybe Text)
+ , _wstDayOfWeek :: !(Maybe DayOfWeek)
+ } deriving (Eq, Read, Show, Data, Typeable, Generic)
+
+
+-- | Creates a value of 'WeeklyStartTime' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'wstTimeOfDay' - Required. The time, in 24-hour format.
+--
+-- * 'wstTimeZone' - The time zone, UTC by default, in either the Country/City format, or the UTC offset format.
+--
+-- * 'wstDayOfWeek' - Required. The day of the week. Possible values: MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY
+weeklyStartTime
+ :: WeeklyStartTime
+weeklyStartTime =
+ WeeklyStartTime'
+ {_wstTimeOfDay = Nothing, _wstTimeZone = Nothing, _wstDayOfWeek = Nothing}
+
+
+-- | Required. The time, in 24-hour format.
+wstTimeOfDay :: Lens' WeeklyStartTime (Maybe Text)
+wstTimeOfDay = lens _wstTimeOfDay (\ s a -> s{_wstTimeOfDay = a})
+
+-- | The time zone, UTC by default, in either the Country/City format, or the UTC offset format.
+wstTimeZone :: Lens' WeeklyStartTime (Maybe Text)
+wstTimeZone = lens _wstTimeZone (\ s a -> s{_wstTimeZone = a})
+
+-- | Required. The day of the week. Possible values: MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY
+wstDayOfWeek :: Lens' WeeklyStartTime (Maybe DayOfWeek)
+wstDayOfWeek = lens _wstDayOfWeek (\ s a -> s{_wstDayOfWeek = a})
+
+instance FromJSON WeeklyStartTime where
+ parseJSON
+ = withObject "WeeklyStartTime"
+ (\ x ->
+ WeeklyStartTime' <$>
+ (x .:? "timeOfDay") <*> (x .:? "timeZone") <*>
+ (x .:? "dayOfWeek"))
+
+instance Hashable WeeklyStartTime where
+
+instance NFData WeeklyStartTime where
+
+instance ToJSON WeeklyStartTime where
+ toJSON WeeklyStartTime'{..}
+ = object
+ (catMaybes
+ [("timeOfDay" .=) <$> _wstTimeOfDay,
+ ("timeZone" .=) <$> _wstTimeZone,
+ ("dayOfWeek" .=) <$> _wstDayOfWeek])
diff --git a/gen/Network/AWS/MQ/Types/Sum.hs b/gen/Network/AWS/MQ/Types/Sum.hs
new file mode 100644
index 0000000..29f58e9
--- /dev/null
+++ b/gen/Network/AWS/MQ/Types/Sum.hs
@@ -0,0 +1,223 @@
+{-# LANGUAGE DeriveDataTypeable #-}
+{-# LANGUAGE DeriveGeneric #-}
+{-# LANGUAGE LambdaCase #-}
+{-# LANGUAGE OverloadedStrings #-}
+
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+
+-- Derived from AWS service descriptions, licensed under Apache 2.0.
+
+-- |
+-- Module : Network.AWS.MQ.Types.Sum
+-- Copyright : (c) 2013-2018 Brendan Hay
+-- License : Mozilla Public License, v. 2.0.
+-- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
+-- Stability : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+module Network.AWS.MQ.Types.Sum where
+
+import Network.AWS.Prelude
+
+-- | The status of the broker. Possible values: CREATION_IN_PROGRESS, CREATION_FAILED, DELETION_IN_PROGRESS, RUNNING, REBOOT_IN_PROGRESS
+data BrokerState
+ = CreationFailed
+ | CreationInProgress
+ | DeletionInProgress
+ | RebootInProgress
+ | Running
+ deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic)
+
+
+instance FromText BrokerState where
+ parser = takeLowerText >>= \case
+ "creation_failed" -> pure CreationFailed
+ "creation_in_progress" -> pure CreationInProgress
+ "deletion_in_progress" -> pure DeletionInProgress
+ "reboot_in_progress" -> pure RebootInProgress
+ "running" -> pure Running
+ e -> fromTextError $ "Failure parsing BrokerState from value: '" <> e
+ <> "'. Accepted values: creation_failed, creation_in_progress, deletion_in_progress, reboot_in_progress, running"
+
+instance ToText BrokerState where
+ toText = \case
+ CreationFailed -> "CREATION_FAILED"
+ CreationInProgress -> "CREATION_IN_PROGRESS"
+ DeletionInProgress -> "DELETION_IN_PROGRESS"
+ RebootInProgress -> "REBOOT_IN_PROGRESS"
+ Running -> "RUNNING"
+
+instance Hashable BrokerState
+instance NFData BrokerState
+instance ToByteString BrokerState
+instance ToQuery BrokerState
+instance ToHeader BrokerState
+
+instance FromJSON BrokerState where
+ parseJSON = parseJSONText "BrokerState"
+
+-- | The type of change pending for the ActiveMQ user. Possible values: CREATE, UPDATE, DELETE
+data ChangeType
+ = Create
+ | Delete
+ | Update
+ deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic)
+
+
+instance FromText ChangeType where
+ parser = takeLowerText >>= \case
+ "create" -> pure Create
+ "delete" -> pure Delete
+ "update" -> pure Update
+ e -> fromTextError $ "Failure parsing ChangeType from value: '" <> e
+ <> "'. Accepted values: create, delete, update"
+
+instance ToText ChangeType where
+ toText = \case
+ Create -> "CREATE"
+ Delete -> "DELETE"
+ Update -> "UPDATE"
+
+instance Hashable ChangeType
+instance NFData ChangeType
+instance ToByteString ChangeType
+instance ToQuery ChangeType
+instance ToHeader ChangeType
+
+instance FromJSON ChangeType where
+ parseJSON = parseJSONText "ChangeType"
+
+data DayOfWeek
+ = Friday
+ | Monday
+ | Saturday
+ | Sunday
+ | Thursday
+ | Tuesday
+ | Wednesday
+ deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic)
+
+
+instance FromText DayOfWeek where
+ parser = takeLowerText >>= \case
+ "friday" -> pure Friday
+ "monday" -> pure Monday
+ "saturday" -> pure Saturday
+ "sunday" -> pure Sunday
+ "thursday" -> pure Thursday
+ "tuesday" -> pure Tuesday
+ "wednesday" -> pure Wednesday
+ e -> fromTextError $ "Failure parsing DayOfWeek from value: '" <> e
+ <> "'. Accepted values: friday, monday, saturday, sunday, thursday, tuesday, wednesday"
+
+instance ToText DayOfWeek where
+ toText = \case
+ Friday -> "FRIDAY"
+ Monday -> "MONDAY"
+ Saturday -> "SATURDAY"
+ Sunday -> "SUNDAY"
+ Thursday -> "THURSDAY"
+ Tuesday -> "TUESDAY"
+ Wednesday -> "WEDNESDAY"
+
+instance Hashable DayOfWeek
+instance NFData DayOfWeek
+instance ToByteString DayOfWeek
+instance ToQuery DayOfWeek
+instance ToHeader DayOfWeek
+
+instance ToJSON DayOfWeek where
+ toJSON = toJSONText
+
+instance FromJSON DayOfWeek where
+ parseJSON = parseJSONText "DayOfWeek"
+
+-- | The deployment mode of the broker. Possible values: SINGLE_INSTANCE, ACTIVE_STANDBY_MULTI_AZ SINGLE_INSTANCE creates a single-instance broker in a single Availability Zone. ACTIVE_STANDBY_MULTI_AZ creates an active/standby broker for high availability.
+data DeploymentMode
+ = ActiveStandbyMultiAz
+ | SingleInstance
+ deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic)
+
+
+instance FromText DeploymentMode where
+ parser = takeLowerText >>= \case
+ "active_standby_multi_az" -> pure ActiveStandbyMultiAz
+ "single_instance" -> pure SingleInstance
+ e -> fromTextError $ "Failure parsing DeploymentMode from value: '" <> e
+ <> "'. Accepted values: active_standby_multi_az, single_instance"
+
+instance ToText DeploymentMode where
+ toText = \case
+ ActiveStandbyMultiAz -> "ACTIVE_STANDBY_MULTI_AZ"
+ SingleInstance -> "SINGLE_INSTANCE"
+
+instance Hashable DeploymentMode
+instance NFData DeploymentMode
+instance ToByteString DeploymentMode
+instance ToQuery DeploymentMode
+instance ToHeader DeploymentMode
+
+instance ToJSON DeploymentMode where
+ toJSON = toJSONText
+
+instance FromJSON DeploymentMode where
+ parseJSON = parseJSONText "DeploymentMode"
+
+-- | The type of broker engine. Note: Currently, Amazon MQ supports only ActiveMQ.
+data EngineType =
+ Activemq
+ deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic)
+
+
+instance FromText EngineType where
+ parser = takeLowerText >>= \case
+ "activemq" -> pure Activemq
+ e -> fromTextError $ "Failure parsing EngineType from value: '" <> e
+ <> "'. Accepted values: activemq"
+
+instance ToText EngineType where
+ toText = \case
+ Activemq -> "ACTIVEMQ"
+
+instance Hashable EngineType
+instance NFData EngineType
+instance ToByteString EngineType
+instance ToQuery EngineType
+instance ToHeader EngineType
+
+instance ToJSON EngineType where
+ toJSON = toJSONText
+
+instance FromJSON EngineType where
+ parseJSON = parseJSONText "EngineType"
+
+-- | The reason for which the XML elements or attributes were sanitized. Possible values: DISALLOWED_ELEMENT_REMOVED, DISALLOWED_ATTRIBUTE_REMOVED, INVALID_ATTRIBUTE_VALUE_REMOVED DISALLOWED_ELEMENT_REMOVED shows that the provided element isn't allowed and has been removed. DISALLOWED_ATTRIBUTE_REMOVED shows that the provided attribute isn't allowed and has been removed. INVALID_ATTRIBUTE_VALUE_REMOVED shows that the provided value for the attribute isn't allowed and has been removed.
+data SanitizationWarningReason
+ = DisallowedAttributeRemoved
+ | DisallowedElementRemoved
+ | InvalidAttributeValueRemoved
+ deriving (Eq, Ord, Read, Show, Enum, Bounded, Data, Typeable, Generic)
+
+
+instance FromText SanitizationWarningReason where
+ parser = takeLowerText >>= \case
+ "disallowed_attribute_removed" -> pure DisallowedAttributeRemoved
+ "disallowed_element_removed" -> pure DisallowedElementRemoved
+ "invalid_attribute_value_removed" -> pure InvalidAttributeValueRemoved
+ e -> fromTextError $ "Failure parsing SanitizationWarningReason from value: '" <> e
+ <> "'. Accepted values: disallowed_attribute_removed, disallowed_element_removed, invalid_attribute_value_removed"
+
+instance ToText SanitizationWarningReason where
+ toText = \case
+ DisallowedAttributeRemoved -> "DISALLOWED_ATTRIBUTE_REMOVED"
+ DisallowedElementRemoved -> "DISALLOWED_ELEMENT_REMOVED"
+ InvalidAttributeValueRemoved -> "INVALID_ATTRIBUTE_VALUE_REMOVED"
+
+instance Hashable SanitizationWarningReason
+instance NFData SanitizationWarningReason
+instance ToByteString SanitizationWarningReason
+instance ToQuery SanitizationWarningReason
+instance ToHeader SanitizationWarningReason
+
+instance FromJSON SanitizationWarningReason where
+ parseJSON = parseJSONText "SanitizationWarningReason"
diff --git a/gen/Network/AWS/MQ/UpdateBroker.hs b/gen/Network/AWS/MQ/UpdateBroker.hs
new file mode 100644
index 0000000..d873e81
--- /dev/null
+++ b/gen/Network/AWS/MQ/UpdateBroker.hs
@@ -0,0 +1,152 @@
+{-# LANGUAGE DeriveDataTypeable #-}
+{-# LANGUAGE DeriveGeneric #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE TypeFamilies #-}
+
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- Derived from AWS service descriptions, licensed under Apache 2.0.
+
+-- |
+-- Module : Network.AWS.MQ.UpdateBroker
+-- Copyright : (c) 2013-2018 Brendan Hay
+-- License : Mozilla Public License, v. 2.0.
+-- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
+-- Stability : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Adds a pending configuration change to a broker.
+module Network.AWS.MQ.UpdateBroker
+ (
+ -- * Creating a Request
+ updateBroker
+ , UpdateBroker
+ -- * Request Lenses
+ , ubConfiguration
+ , ubBrokerId
+
+ -- * Destructuring the Response
+ , updateBrokerResponse
+ , UpdateBrokerResponse
+ -- * Response Lenses
+ , ubrsConfiguration
+ , ubrsBrokerId
+ , ubrsResponseStatus
+ ) where
+
+import Network.AWS.Lens
+import Network.AWS.MQ.Types
+import Network.AWS.MQ.Types.Product
+import Network.AWS.Prelude
+import Network.AWS.Request
+import Network.AWS.Response
+
+-- | Updates the broker using the specified properties.
+--
+-- /See:/ 'updateBroker' smart constructor.
+data UpdateBroker = UpdateBroker'
+ { _ubConfiguration :: !(Maybe ConfigurationId)
+ , _ubBrokerId :: !Text
+ } deriving (Eq, Read, Show, Data, Typeable, Generic)
+
+
+-- | Creates a value of 'UpdateBroker' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'ubConfiguration' - A list of information about the configuration.
+--
+-- * 'ubBrokerId' - The name of the broker. This value must be unique in your AWS account, 1-50 characters long, must contain only letters, numbers, dashes, and underscores, and must not contain whitespaces, brackets, wildcard characters, or special characters.
+updateBroker
+ :: Text -- ^ 'ubBrokerId'
+ -> UpdateBroker
+updateBroker pBrokerId_ =
+ UpdateBroker' {_ubConfiguration = Nothing, _ubBrokerId = pBrokerId_}
+
+
+-- | A list of information about the configuration.
+ubConfiguration :: Lens' UpdateBroker (Maybe ConfigurationId)
+ubConfiguration = lens _ubConfiguration (\ s a -> s{_ubConfiguration = a})
+
+-- | The name of the broker. This value must be unique in your AWS account, 1-50 characters long, must contain only letters, numbers, dashes, and underscores, and must not contain whitespaces, brackets, wildcard characters, or special characters.
+ubBrokerId :: Lens' UpdateBroker Text
+ubBrokerId = lens _ubBrokerId (\ s a -> s{_ubBrokerId = a})
+
+instance AWSRequest UpdateBroker where
+ type Rs UpdateBroker = UpdateBrokerResponse
+ request = putJSON mq
+ response
+ = receiveJSON
+ (\ s h x ->
+ UpdateBrokerResponse' <$>
+ (x .?> "configuration") <*> (x .?> "brokerId") <*>
+ (pure (fromEnum s)))
+
+instance Hashable UpdateBroker where
+
+instance NFData UpdateBroker where
+
+instance ToHeaders UpdateBroker where
+ toHeaders
+ = const
+ (mconcat
+ ["Content-Type" =#
+ ("application/x-amz-json-1.1" :: ByteString)])
+
+instance ToJSON UpdateBroker where
+ toJSON UpdateBroker'{..}
+ = object
+ (catMaybes
+ [("configuration" .=) <$> _ubConfiguration])
+
+instance ToPath UpdateBroker where
+ toPath UpdateBroker'{..}
+ = mconcat ["/v1/brokers/", toBS _ubBrokerId]
+
+instance ToQuery UpdateBroker where
+ toQuery = const mempty
+
+-- | /See:/ 'updateBrokerResponse' smart constructor.
+data UpdateBrokerResponse = UpdateBrokerResponse'
+ { _ubrsConfiguration :: !(Maybe ConfigurationId)
+ , _ubrsBrokerId :: !(Maybe Text)
+ , _ubrsResponseStatus :: !Int
+ } deriving (Eq, Read, Show, Data, Typeable, Generic)
+
+
+-- | Creates a value of 'UpdateBrokerResponse' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'ubrsConfiguration' - The ID of the updated configuration.
+--
+-- * 'ubrsBrokerId' - Required. The unique ID that Amazon MQ generates for the broker.
+--
+-- * 'ubrsResponseStatus' - -- | The response status code.
+updateBrokerResponse
+ :: Int -- ^ 'ubrsResponseStatus'
+ -> UpdateBrokerResponse
+updateBrokerResponse pResponseStatus_ =
+ UpdateBrokerResponse'
+ { _ubrsConfiguration = Nothing
+ , _ubrsBrokerId = Nothing
+ , _ubrsResponseStatus = pResponseStatus_
+ }
+
+
+-- | The ID of the updated configuration.
+ubrsConfiguration :: Lens' UpdateBrokerResponse (Maybe ConfigurationId)
+ubrsConfiguration = lens _ubrsConfiguration (\ s a -> s{_ubrsConfiguration = a})
+
+-- | Required. The unique ID that Amazon MQ generates for the broker.
+ubrsBrokerId :: Lens' UpdateBrokerResponse (Maybe Text)
+ubrsBrokerId = lens _ubrsBrokerId (\ s a -> s{_ubrsBrokerId = a})
+
+-- | -- | The response status code.
+ubrsResponseStatus :: Lens' UpdateBrokerResponse Int
+ubrsResponseStatus = lens _ubrsResponseStatus (\ s a -> s{_ubrsResponseStatus = a})
+
+instance NFData UpdateBrokerResponse where
diff --git a/gen/Network/AWS/MQ/UpdateConfiguration.hs b/gen/Network/AWS/MQ/UpdateConfiguration.hs
new file mode 100644
index 0000000..91c9179
--- /dev/null
+++ b/gen/Network/AWS/MQ/UpdateConfiguration.hs
@@ -0,0 +1,197 @@
+{-# LANGUAGE DeriveDataTypeable #-}
+{-# LANGUAGE DeriveGeneric #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE TypeFamilies #-}
+
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- Derived from AWS service descriptions, licensed under Apache 2.0.
+
+-- |
+-- Module : Network.AWS.MQ.UpdateConfiguration
+-- Copyright : (c) 2013-2018 Brendan Hay
+-- License : Mozilla Public License, v. 2.0.
+-- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
+-- Stability : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates the specified configuration.
+module Network.AWS.MQ.UpdateConfiguration
+ (
+ -- * Creating a Request
+ updateConfiguration
+ , UpdateConfiguration
+ -- * Request Lenses
+ , ucData
+ , ucDescription
+ , ucConfigurationId
+
+ -- * Destructuring the Response
+ , updateConfigurationResponse
+ , UpdateConfigurationResponse
+ -- * Response Lenses
+ , ucrsARN
+ , ucrsLatestRevision
+ , ucrsWarnings
+ , ucrsName
+ , ucrsId
+ , ucrsResponseStatus
+ ) where
+
+import Network.AWS.Lens
+import Network.AWS.MQ.Types
+import Network.AWS.MQ.Types.Product
+import Network.AWS.Prelude
+import Network.AWS.Request
+import Network.AWS.Response
+
+-- | Updates the specified configuration.
+--
+-- /See:/ 'updateConfiguration' smart constructor.
+data UpdateConfiguration = UpdateConfiguration'
+ { _ucData :: !(Maybe Text)
+ , _ucDescription :: !(Maybe Text)
+ , _ucConfigurationId :: !Text
+ } deriving (Eq, Read, Show, Data, Typeable, Generic)
+
+
+-- | Creates a value of 'UpdateConfiguration' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'ucData' - Required. The base64-encoded XML configuration.
+--
+-- * 'ucDescription' - The description of the configuration.
+--
+-- * 'ucConfigurationId' - The unique ID that Amazon MQ generates for the configuration.
+updateConfiguration
+ :: Text -- ^ 'ucConfigurationId'
+ -> UpdateConfiguration
+updateConfiguration pConfigurationId_ =
+ UpdateConfiguration'
+ { _ucData = Nothing
+ , _ucDescription = Nothing
+ , _ucConfigurationId = pConfigurationId_
+ }
+
+
+-- | Required. The base64-encoded XML configuration.
+ucData :: Lens' UpdateConfiguration (Maybe Text)
+ucData = lens _ucData (\ s a -> s{_ucData = a})
+
+-- | The description of the configuration.
+ucDescription :: Lens' UpdateConfiguration (Maybe Text)
+ucDescription = lens _ucDescription (\ s a -> s{_ucDescription = a})
+
+-- | The unique ID that Amazon MQ generates for the configuration.
+ucConfigurationId :: Lens' UpdateConfiguration Text
+ucConfigurationId = lens _ucConfigurationId (\ s a -> s{_ucConfigurationId = a})
+
+instance AWSRequest UpdateConfiguration where
+ type Rs UpdateConfiguration =
+ UpdateConfigurationResponse
+ request = putJSON mq
+ response
+ = receiveJSON
+ (\ s h x ->
+ UpdateConfigurationResponse' <$>
+ (x .?> "arn") <*> (x .?> "latestRevision") <*>
+ (x .?> "warnings" .!@ mempty)
+ <*> (x .?> "name")
+ <*> (x .?> "id")
+ <*> (pure (fromEnum s)))
+
+instance Hashable UpdateConfiguration where
+
+instance NFData UpdateConfiguration where
+
+instance ToHeaders UpdateConfiguration where
+ toHeaders
+ = const
+ (mconcat
+ ["Content-Type" =#
+ ("application/x-amz-json-1.1" :: ByteString)])
+
+instance ToJSON UpdateConfiguration where
+ toJSON UpdateConfiguration'{..}
+ = object
+ (catMaybes
+ [("data" .=) <$> _ucData,
+ ("description" .=) <$> _ucDescription])
+
+instance ToPath UpdateConfiguration where
+ toPath UpdateConfiguration'{..}
+ = mconcat
+ ["/v1/configurations/", toBS _ucConfigurationId]
+
+instance ToQuery UpdateConfiguration where
+ toQuery = const mempty
+
+-- | /See:/ 'updateConfigurationResponse' smart constructor.
+data UpdateConfigurationResponse = UpdateConfigurationResponse'
+ { _ucrsARN :: !(Maybe Text)
+ , _ucrsLatestRevision :: !(Maybe ConfigurationRevision)
+ , _ucrsWarnings :: !(Maybe [SanitizationWarning])
+ , _ucrsName :: !(Maybe Text)
+ , _ucrsId :: !(Maybe Text)
+ , _ucrsResponseStatus :: !Int
+ } deriving (Eq, Read, Show, Data, Typeable, Generic)
+
+
+-- | Creates a value of 'UpdateConfigurationResponse' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'ucrsARN' - Required. The Amazon Resource Name (ARN) of the configuration.
+--
+-- * 'ucrsLatestRevision' - The latest revision of the configuration.
+--
+-- * 'ucrsWarnings' - The list of the first 20 warnings about the configuration XML elements or attributes that were sanitized.
+--
+-- * 'ucrsName' - Required. The name of the configuration. This value can contain only alphanumeric characters, dashes, periods, underscores, and tildes (- . _ ~). This value must be 1-150 characters long.
+--
+-- * 'ucrsId' - Required. The unique ID that Amazon MQ generates for the configuration.
+--
+-- * 'ucrsResponseStatus' - -- | The response status code.
+updateConfigurationResponse
+ :: Int -- ^ 'ucrsResponseStatus'
+ -> UpdateConfigurationResponse
+updateConfigurationResponse pResponseStatus_ =
+ UpdateConfigurationResponse'
+ { _ucrsARN = Nothing
+ , _ucrsLatestRevision = Nothing
+ , _ucrsWarnings = Nothing
+ , _ucrsName = Nothing
+ , _ucrsId = Nothing
+ , _ucrsResponseStatus = pResponseStatus_
+ }
+
+
+-- | Required. The Amazon Resource Name (ARN) of the configuration.
+ucrsARN :: Lens' UpdateConfigurationResponse (Maybe Text)
+ucrsARN = lens _ucrsARN (\ s a -> s{_ucrsARN = a})
+
+-- | The latest revision of the configuration.
+ucrsLatestRevision :: Lens' UpdateConfigurationResponse (Maybe ConfigurationRevision)
+ucrsLatestRevision = lens _ucrsLatestRevision (\ s a -> s{_ucrsLatestRevision = a})
+
+-- | The list of the first 20 warnings about the configuration XML elements or attributes that were sanitized.
+ucrsWarnings :: Lens' UpdateConfigurationResponse [SanitizationWarning]
+ucrsWarnings = lens _ucrsWarnings (\ s a -> s{_ucrsWarnings = a}) . _Default . _Coerce
+
+-- | Required. The name of the configuration. This value can contain only alphanumeric characters, dashes, periods, underscores, and tildes (- . _ ~). This value must be 1-150 characters long.
+ucrsName :: Lens' UpdateConfigurationResponse (Maybe Text)
+ucrsName = lens _ucrsName (\ s a -> s{_ucrsName = a})
+
+-- | Required. The unique ID that Amazon MQ generates for the configuration.
+ucrsId :: Lens' UpdateConfigurationResponse (Maybe Text)
+ucrsId = lens _ucrsId (\ s a -> s{_ucrsId = a})
+
+-- | -- | The response status code.
+ucrsResponseStatus :: Lens' UpdateConfigurationResponse Int
+ucrsResponseStatus = lens _ucrsResponseStatus (\ s a -> s{_ucrsResponseStatus = a})
+
+instance NFData UpdateConfigurationResponse where
diff --git a/gen/Network/AWS/MQ/UpdateUser.hs b/gen/Network/AWS/MQ/UpdateUser.hs
new file mode 100644
index 0000000..a1403c4
--- /dev/null
+++ b/gen/Network/AWS/MQ/UpdateUser.hs
@@ -0,0 +1,165 @@
+{-# LANGUAGE DeriveDataTypeable #-}
+{-# LANGUAGE DeriveGeneric #-}
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE RecordWildCards #-}
+{-# LANGUAGE TypeFamilies #-}
+
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-unused-binds #-}
+{-# OPTIONS_GHC -fno-warn-unused-matches #-}
+
+-- Derived from AWS service descriptions, licensed under Apache 2.0.
+
+-- |
+-- Module : Network.AWS.MQ.UpdateUser
+-- Copyright : (c) 2013-2018 Brendan Hay
+-- License : Mozilla Public License, v. 2.0.
+-- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
+-- Stability : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+-- Updates the information for an ActiveMQ user.
+module Network.AWS.MQ.UpdateUser
+ (
+ -- * Creating a Request
+ updateUser
+ , UpdateUser
+ -- * Request Lenses
+ , uuGroups
+ , uuConsoleAccess
+ , uuPassword
+ , uuUsername
+ , uuBrokerId
+
+ -- * Destructuring the Response
+ , updateUserResponse
+ , UpdateUserResponse
+ -- * Response Lenses
+ , uursResponseStatus
+ ) where
+
+import Network.AWS.Lens
+import Network.AWS.MQ.Types
+import Network.AWS.MQ.Types.Product
+import Network.AWS.Prelude
+import Network.AWS.Request
+import Network.AWS.Response
+
+-- | Updates the information for an ActiveMQ user.
+--
+-- /See:/ 'updateUser' smart constructor.
+data UpdateUser = UpdateUser'
+ { _uuGroups :: !(Maybe [Text])
+ , _uuConsoleAccess :: !(Maybe Bool)
+ , _uuPassword :: !(Maybe Text)
+ , _uuUsername :: !Text
+ , _uuBrokerId :: !Text
+ } deriving (Eq, Read, Show, Data, Typeable, Generic)
+
+
+-- | Creates a value of 'UpdateUser' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'uuGroups' - The list of groups (20 maximum) to which the ActiveMQ user belongs. This value can contain only alphanumeric characters, dashes, periods, underscores, and tildes (- . _ ~). This value must be 2-100 characters long.
+--
+-- * 'uuConsoleAccess' - Enables access to the the ActiveMQ Web Console for the ActiveMQ user.
+--
+-- * 'uuPassword' - The password of the user. This value must be at least 12 characters long, must contain at least 4 unique characters, and must not contain commas.
+--
+-- * 'uuUsername' - Required. The username of the ActiveMQ user. This value can contain only alphanumeric characters, dashes, periods, underscores, and tildes (- . _ ~). This value must be 2-100 characters long.
+--
+-- * 'uuBrokerId' - The unique ID that Amazon MQ generates for the broker.
+updateUser
+ :: Text -- ^ 'uuUsername'
+ -> Text -- ^ 'uuBrokerId'
+ -> UpdateUser
+updateUser pUsername_ pBrokerId_ =
+ UpdateUser'
+ { _uuGroups = Nothing
+ , _uuConsoleAccess = Nothing
+ , _uuPassword = Nothing
+ , _uuUsername = pUsername_
+ , _uuBrokerId = pBrokerId_
+ }
+
+
+-- | The list of groups (20 maximum) to which the ActiveMQ user belongs. This value can contain only alphanumeric characters, dashes, periods, underscores, and tildes (- . _ ~). This value must be 2-100 characters long.
+uuGroups :: Lens' UpdateUser [Text]
+uuGroups = lens _uuGroups (\ s a -> s{_uuGroups = a}) . _Default . _Coerce
+
+-- | Enables access to the the ActiveMQ Web Console for the ActiveMQ user.
+uuConsoleAccess :: Lens' UpdateUser (Maybe Bool)
+uuConsoleAccess = lens _uuConsoleAccess (\ s a -> s{_uuConsoleAccess = a})
+
+-- | The password of the user. This value must be at least 12 characters long, must contain at least 4 unique characters, and must not contain commas.
+uuPassword :: Lens' UpdateUser (Maybe Text)
+uuPassword = lens _uuPassword (\ s a -> s{_uuPassword = a})
+
+-- | Required. The username of the ActiveMQ user. This value can contain only alphanumeric characters, dashes, periods, underscores, and tildes (- . _ ~). This value must be 2-100 characters long.
+uuUsername :: Lens' UpdateUser Text
+uuUsername = lens _uuUsername (\ s a -> s{_uuUsername = a})
+
+-- | The unique ID that Amazon MQ generates for the broker.
+uuBrokerId :: Lens' UpdateUser Text
+uuBrokerId = lens _uuBrokerId (\ s a -> s{_uuBrokerId = a})
+
+instance AWSRequest UpdateUser where
+ type Rs UpdateUser = UpdateUserResponse
+ request = putJSON mq
+ response
+ = receiveEmpty
+ (\ s h x ->
+ UpdateUserResponse' <$> (pure (fromEnum s)))
+
+instance Hashable UpdateUser where
+
+instance NFData UpdateUser where
+
+instance ToHeaders UpdateUser where
+ toHeaders
+ = const
+ (mconcat
+ ["Content-Type" =#
+ ("application/x-amz-json-1.1" :: ByteString)])
+
+instance ToJSON UpdateUser where
+ toJSON UpdateUser'{..}
+ = object
+ (catMaybes
+ [("groups" .=) <$> _uuGroups,
+ ("consoleAccess" .=) <$> _uuConsoleAccess,
+ ("password" .=) <$> _uuPassword])
+
+instance ToPath UpdateUser where
+ toPath UpdateUser'{..}
+ = mconcat
+ ["/v1/brokers/", toBS _uuBrokerId, "/users/",
+ toBS _uuUsername]
+
+instance ToQuery UpdateUser where
+ toQuery = const mempty
+
+-- | /See:/ 'updateUserResponse' smart constructor.
+newtype UpdateUserResponse = UpdateUserResponse'
+ { _uursResponseStatus :: Int
+ } deriving (Eq, Read, Show, Data, Typeable, Generic)
+
+
+-- | Creates a value of 'UpdateUserResponse' with the minimum fields required to make a request.
+--
+-- Use one of the following lenses to modify other fields as desired:
+--
+-- * 'uursResponseStatus' - -- | The response status code.
+updateUserResponse
+ :: Int -- ^ 'uursResponseStatus'
+ -> UpdateUserResponse
+updateUserResponse pResponseStatus_ =
+ UpdateUserResponse' {_uursResponseStatus = pResponseStatus_}
+
+
+-- | -- | The response status code.
+uursResponseStatus :: Lens' UpdateUserResponse Int
+uursResponseStatus = lens _uursResponseStatus (\ s a -> s{_uursResponseStatus = a})
+
+instance NFData UpdateUserResponse where
diff --git a/gen/Network/AWS/MQ/Waiters.hs b/gen/Network/AWS/MQ/Waiters.hs
new file mode 100644
index 0000000..69bf851
--- /dev/null
+++ b/gen/Network/AWS/MQ/Waiters.hs
@@ -0,0 +1,21 @@
+{-# LANGUAGE OverloadedStrings #-}
+{-# LANGUAGE TypeFamilies #-}
+
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+
+-- Derived from AWS service descriptions, licensed under Apache 2.0.
+
+-- |
+-- Module : Network.AWS.MQ.Waiters
+-- Copyright : (c) 2013-2018 Brendan Hay
+-- License : Mozilla Public License, v. 2.0.
+-- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
+-- Stability : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+module Network.AWS.MQ.Waiters where
+
+import Network.AWS.Lens
+import Network.AWS.MQ.Types
+import Network.AWS.Prelude
+import Network.AWS.Waiter
diff --git a/test/Main.hs b/test/Main.hs
new file mode 100644
index 0000000..4ed28db
--- /dev/null
+++ b/test/Main.hs
@@ -0,0 +1,21 @@
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+
+-- |
+-- Module : Main
+-- Copyright : (c) 2013-2018 Brendan Hay
+-- License : Mozilla Public License, v. 2.0.
+-- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
+-- Stability : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+module Main (main) where
+
+import Test.Tasty
+import Test.AWS.MQ
+import Test.AWS.MQ.Internal
+
+main :: IO ()
+main = defaultMain $ testGroup "MQ"
+ [ testGroup "tests" tests
+ , testGroup "fixtures" fixtures
+ ]
diff --git a/test/Test/AWS/Gen/MQ.hs b/test/Test/AWS/Gen/MQ.hs
new file mode 100644
index 0000000..5d41602
--- /dev/null
+++ b/test/Test/AWS/Gen/MQ.hs
@@ -0,0 +1,345 @@
+{-# OPTIONS_GHC -fno-warn-unused-imports #-}
+{-# OPTIONS_GHC -fno-warn-orphans #-}
+
+-- Derived from AWS service descriptions, licensed under Apache 2.0.
+
+-- |
+-- Module : Test.AWS.Gen.MQ
+-- Copyright : (c) 2013-2018 Brendan Hay
+-- License : Mozilla Public License, v. 2.0.
+-- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
+-- Stability : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+module Test.AWS.Gen.MQ where
+
+import Data.Proxy
+import Network.AWS.MQ
+import Test.AWS.Fixture
+import Test.AWS.MQ.Internal
+import Test.AWS.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"
+-- [ requestCreateConfiguration $
+-- createConfiguration
+--
+-- , requestCreateBroker $
+-- createBroker
+--
+-- , requestDeleteBroker $
+-- deleteBroker
+--
+-- , requestUpdateBroker $
+-- updateBroker
+--
+-- , requestRebootBroker $
+-- rebootBroker
+--
+-- , requestListConfigurationRevisions $
+-- listConfigurationRevisions
+--
+-- , requestListUsers $
+-- listUsers
+--
+-- , requestListConfigurations $
+-- listConfigurations
+--
+-- , requestDescribeUser $
+-- describeUser
+--
+-- , requestListBrokers $
+-- listBrokers
+--
+-- , requestCreateUser $
+-- createUser
+--
+-- , requestDescribeConfiguration $
+-- describeConfiguration
+--
+-- , requestUpdateUser $
+-- updateUser
+--
+-- , requestDeleteUser $
+-- deleteUser
+--
+-- , requestDescribeConfigurationRevision $
+-- describeConfigurationRevision
+--
+-- , requestDescribeBroker $
+-- describeBroker
+--
+-- , requestUpdateConfiguration $
+-- updateConfiguration
+--
+-- ]
+
+-- , testGroup "response"
+-- [ responseCreateConfiguration $
+-- createConfigurationResponse
+--
+-- , responseCreateBroker $
+-- createBrokerResponse
+--
+-- , responseDeleteBroker $
+-- deleteBrokerResponse
+--
+-- , responseUpdateBroker $
+-- updateBrokerResponse
+--
+-- , responseRebootBroker $
+-- rebootBrokerResponse
+--
+-- , responseListConfigurationRevisions $
+-- listConfigurationRevisionsResponse
+--
+-- , responseListUsers $
+-- listUsersResponse
+--
+-- , responseListConfigurations $
+-- listConfigurationsResponse
+--
+-- , responseDescribeUser $
+-- describeUserResponse
+--
+-- , responseListBrokers $
+-- listBrokersResponse
+--
+-- , responseCreateUser $
+-- createUserResponse
+--
+-- , responseDescribeConfiguration $
+-- describeConfigurationResponse
+--
+-- , responseUpdateUser $
+-- updateUserResponse
+--
+-- , responseDeleteUser $
+-- deleteUserResponse
+--
+-- , responseDescribeConfigurationRevision $
+-- describeConfigurationRevisionResponse
+--
+-- , responseDescribeBroker $
+-- describeBrokerResponse
+--
+-- , responseUpdateConfiguration $
+-- updateConfigurationResponse
+--
+-- ]
+-- ]
+
+-- Requests
+
+requestCreateConfiguration :: CreateConfiguration -> TestTree
+requestCreateConfiguration = req
+ "CreateConfiguration"
+ "fixture/CreateConfiguration.yaml"
+
+requestCreateBroker :: CreateBroker -> TestTree
+requestCreateBroker = req
+ "CreateBroker"
+ "fixture/CreateBroker.yaml"
+
+requestDeleteBroker :: DeleteBroker -> TestTree
+requestDeleteBroker = req
+ "DeleteBroker"
+ "fixture/DeleteBroker.yaml"
+
+requestUpdateBroker :: UpdateBroker -> TestTree
+requestUpdateBroker = req
+ "UpdateBroker"
+ "fixture/UpdateBroker.yaml"
+
+requestRebootBroker :: RebootBroker -> TestTree
+requestRebootBroker = req
+ "RebootBroker"
+ "fixture/RebootBroker.yaml"
+
+requestListConfigurationRevisions :: ListConfigurationRevisions -> TestTree
+requestListConfigurationRevisions = req
+ "ListConfigurationRevisions"
+ "fixture/ListConfigurationRevisions.yaml"
+
+requestListUsers :: ListUsers -> TestTree
+requestListUsers = req
+ "ListUsers"
+ "fixture/ListUsers.yaml"
+
+requestListConfigurations :: ListConfigurations -> TestTree
+requestListConfigurations = req
+ "ListConfigurations"
+ "fixture/ListConfigurations.yaml"
+
+requestDescribeUser :: DescribeUser -> TestTree
+requestDescribeUser = req
+ "DescribeUser"
+ "fixture/DescribeUser.yaml"
+
+requestListBrokers :: ListBrokers -> TestTree
+requestListBrokers = req
+ "ListBrokers"
+ "fixture/ListBrokers.yaml"
+
+requestCreateUser :: CreateUser -> TestTree
+requestCreateUser = req
+ "CreateUser"
+ "fixture/CreateUser.yaml"
+
+requestDescribeConfiguration :: DescribeConfiguration -> TestTree
+requestDescribeConfiguration = req
+ "DescribeConfiguration"
+ "fixture/DescribeConfiguration.yaml"
+
+requestUpdateUser :: UpdateUser -> TestTree
+requestUpdateUser = req
+ "UpdateUser"
+ "fixture/UpdateUser.yaml"
+
+requestDeleteUser :: DeleteUser -> TestTree
+requestDeleteUser = req
+ "DeleteUser"
+ "fixture/DeleteUser.yaml"
+
+requestDescribeConfigurationRevision :: DescribeConfigurationRevision -> TestTree
+requestDescribeConfigurationRevision = req
+ "DescribeConfigurationRevision"
+ "fixture/DescribeConfigurationRevision.yaml"
+
+requestDescribeBroker :: DescribeBroker -> TestTree
+requestDescribeBroker = req
+ "DescribeBroker"
+ "fixture/DescribeBroker.yaml"
+
+requestUpdateConfiguration :: UpdateConfiguration -> TestTree
+requestUpdateConfiguration = req
+ "UpdateConfiguration"
+ "fixture/UpdateConfiguration.yaml"
+
+-- Responses
+
+responseCreateConfiguration :: CreateConfigurationResponse -> TestTree
+responseCreateConfiguration = res
+ "CreateConfigurationResponse"
+ "fixture/CreateConfigurationResponse.proto"
+ mq
+ (Proxy :: Proxy CreateConfiguration)
+
+responseCreateBroker :: CreateBrokerResponse -> TestTree
+responseCreateBroker = res
+ "CreateBrokerResponse"
+ "fixture/CreateBrokerResponse.proto"
+ mq
+ (Proxy :: Proxy CreateBroker)
+
+responseDeleteBroker :: DeleteBrokerResponse -> TestTree
+responseDeleteBroker = res
+ "DeleteBrokerResponse"
+ "fixture/DeleteBrokerResponse.proto"
+ mq
+ (Proxy :: Proxy DeleteBroker)
+
+responseUpdateBroker :: UpdateBrokerResponse -> TestTree
+responseUpdateBroker = res
+ "UpdateBrokerResponse"
+ "fixture/UpdateBrokerResponse.proto"
+ mq
+ (Proxy :: Proxy UpdateBroker)
+
+responseRebootBroker :: RebootBrokerResponse -> TestTree
+responseRebootBroker = res
+ "RebootBrokerResponse"
+ "fixture/RebootBrokerResponse.proto"
+ mq
+ (Proxy :: Proxy RebootBroker)
+
+responseListConfigurationRevisions :: ListConfigurationRevisionsResponse -> TestTree
+responseListConfigurationRevisions = res
+ "ListConfigurationRevisionsResponse"
+ "fixture/ListConfigurationRevisionsResponse.proto"
+ mq
+ (Proxy :: Proxy ListConfigurationRevisions)
+
+responseListUsers :: ListUsersResponse -> TestTree
+responseListUsers = res
+ "ListUsersResponse"
+ "fixture/ListUsersResponse.proto"
+ mq
+ (Proxy :: Proxy ListUsers)
+
+responseListConfigurations :: ListConfigurationsResponse -> TestTree
+responseListConfigurations = res
+ "ListConfigurationsResponse"
+ "fixture/ListConfigurationsResponse.proto"
+ mq
+ (Proxy :: Proxy ListConfigurations)
+
+responseDescribeUser :: DescribeUserResponse -> TestTree
+responseDescribeUser = res
+ "DescribeUserResponse"
+ "fixture/DescribeUserResponse.proto"
+ mq
+ (Proxy :: Proxy DescribeUser)
+
+responseListBrokers :: ListBrokersResponse -> TestTree
+responseListBrokers = res
+ "ListBrokersResponse"
+ "fixture/ListBrokersResponse.proto"
+ mq
+ (Proxy :: Proxy ListBrokers)
+
+responseCreateUser :: CreateUserResponse -> TestTree
+responseCreateUser = res
+ "CreateUserResponse"
+ "fixture/CreateUserResponse.proto"
+ mq
+ (Proxy :: Proxy CreateUser)
+
+responseDescribeConfiguration :: DescribeConfigurationResponse -> TestTree
+responseDescribeConfiguration = res
+ "DescribeConfigurationResponse"
+ "fixture/DescribeConfigurationResponse.proto"
+ mq
+ (Proxy :: Proxy DescribeConfiguration)
+
+responseUpdateUser :: UpdateUserResponse -> TestTree
+responseUpdateUser = res
+ "UpdateUserResponse"
+ "fixture/UpdateUserResponse.proto"
+ mq
+ (Proxy :: Proxy UpdateUser)
+
+responseDeleteUser :: DeleteUserResponse -> TestTree
+responseDeleteUser = res
+ "DeleteUserResponse"
+ "fixture/DeleteUserResponse.proto"
+ mq
+ (Proxy :: Proxy DeleteUser)
+
+responseDescribeConfigurationRevision :: DescribeConfigurationRevisionResponse -> TestTree
+responseDescribeConfigurationRevision = res
+ "DescribeConfigurationRevisionResponse"
+ "fixture/DescribeConfigurationRevisionResponse.proto"
+ mq
+ (Proxy :: Proxy DescribeConfigurationRevision)
+
+responseDescribeBroker :: DescribeBrokerResponse -> TestTree
+responseDescribeBroker = res
+ "DescribeBrokerResponse"
+ "fixture/DescribeBrokerResponse.proto"
+ mq
+ (Proxy :: Proxy DescribeBroker)
+
+responseUpdateConfiguration :: UpdateConfigurationResponse -> TestTree
+responseUpdateConfiguration = res
+ "UpdateConfigurationResponse"
+ "fixture/UpdateConfigurationResponse.proto"
+ mq
+ (Proxy :: Proxy UpdateConfiguration)
diff --git a/test/Test/AWS/MQ.hs b/test/Test/AWS/MQ.hs
new file mode 100644
index 0000000..bfe77b0
--- /dev/null
+++ b/test/Test/AWS/MQ.hs
@@ -0,0 +1,20 @@
+-- |
+-- Module : Test.AWS.MQ
+-- Copyright : (c) 2013-2018 Brendan Hay
+-- License : Mozilla Public License, v. 2.0.
+-- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
+-- Stability : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+module Test.AWS.MQ
+ ( tests
+ , fixtures
+ ) where
+
+import Test.Tasty (TestTree)
+
+tests :: [TestTree]
+tests = []
+
+fixtures :: [TestTree]
+fixtures = []
diff --git a/test/Test/AWS/MQ/Internal.hs b/test/Test/AWS/MQ/Internal.hs
new file mode 100644
index 0000000..ec2167c
--- /dev/null
+++ b/test/Test/AWS/MQ/Internal.hs
@@ -0,0 +1,9 @@
+-- |
+-- Module : Test.AWS.MQ.Internal
+-- Copyright : (c) 2013-2018 Brendan Hay
+-- License : Mozilla Public License, v. 2.0.
+-- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
+-- Stability : auto-generated
+-- Portability : non-portable (GHC extensions)
+--
+module Test.AWS.MQ.Internal where