packages feed

amazonka-iot-roborunner (empty) → 2.0

raw patch · 81 files changed

+7919/−0 lines, 81 filesdep +amazonka-coredep +amazonka-iot-roborunnerdep +amazonka-test

Dependencies added: amazonka-core, amazonka-iot-roborunner, amazonka-test, base, bytestring, case-insensitive, tasty, tasty-hunit, text, time, unordered-containers

Files

+ LICENSE view
@@ -0,0 +1,367 @@+Mozilla Public License Version 2.0+==================================++1. Definitions+--------------++1.1. "Contributor"+    means each individual or legal entity that creates, contributes to+    the creation of, or owns Covered Software.++1.2. "Contributor Version"+    means the combination of the Contributions of others (if any) used+    by a Contributor and that particular Contributor's Contribution.++1.3. "Contribution"+    means Covered Software of a particular Contributor.++1.4. "Covered Software"+    means Source Code Form to which the initial Contributor has attached+    the notice in Exhibit A, the Executable Form of such Source Code+    Form, and Modifications of such Source Code Form, in each case+    including portions thereof.++1.5. "Incompatible With Secondary Licenses"+    means++    (a) that the initial Contributor has attached the notice described+        in Exhibit B to the Covered Software; or++    (b) that the Covered Software was made available under the terms of+        version 1.1 or earlier of the License, but not also under the+        terms of a Secondary License.++1.6. "Executable Form"+    means any form of the work other than Source Code Form.++1.7. "Larger Work"+    means a work that combines Covered Software with other material, in+    a separate file or files, that is not Covered Software.++1.8. "License"+    means this document.++1.9. "Licensable"+    means having the right to grant, to the maximum extent possible,+    whether at the time of the initial grant or subsequently, any and+    all of the rights conveyed by this License.++1.10. "Modifications"+    means any of the following:++    (a) any file in Source Code Form that results from an addition to,+        deletion from, or modification of the contents of Covered+        Software; or++    (b) any new file in Source Code Form that contains any Covered+        Software.++1.11. "Patent Claims" of a Contributor+    means any patent claim(s), including without limitation, method,+    process, and apparatus claims, in any patent Licensable by such+    Contributor that would be infringed, but for the grant of the+    License, by the making, using, selling, offering for sale, having+    made, import, or transfer of either its Contributions or its+    Contributor Version.++1.12. "Secondary License"+    means either the GNU General Public License, Version 2.0, the GNU+    Lesser General Public License, Version 2.1, the GNU Affero General+    Public License, Version 3.0, or any later versions of those+    licenses.++1.13. "Source Code Form"+    means the form of the work preferred for making modifications.++1.14. "You" (or "Your")+    means an individual or a legal entity exercising rights under this+    License. For legal entities, "You" includes any entity that+    controls, is controlled by, or is under common control with You. For+    purposes of this definition, "control" means (a) the power, direct+    or indirect, to cause the direction or management of such entity,+    whether by contract or otherwise, or (b) ownership of more than+    fifty percent (50%) of the outstanding shares or beneficial+    ownership of such entity.++2. License Grants and Conditions+--------------------------------++2.1. Grants++Each Contributor hereby grants You a world-wide, royalty-free,+non-exclusive license:++(a) under intellectual property rights (other than patent or trademark)+    Licensable by such Contributor to use, reproduce, make available,+    modify, display, perform, distribute, and otherwise exploit its+    Contributions, either on an unmodified basis, with Modifications, or+    as part of a Larger Work; and++(b) under Patent Claims of such Contributor to make, use, sell, offer+    for sale, have made, import, and otherwise transfer either its+    Contributions or its Contributor Version.++2.2. Effective Date++The licenses granted in Section 2.1 with respect to any Contribution+become effective for each Contribution on the date the Contributor first+distributes such Contribution.++2.3. Limitations on Grant Scope++The licenses granted in this Section 2 are the only rights granted under+this License. No additional rights or licenses will be implied from the+distribution or licensing of Covered Software under this License.+Notwithstanding Section 2.1(b) above, no patent license is granted by a+Contributor:++(a) for any code that a Contributor has removed from Covered Software;+    or++(b) for infringements caused by: (i) Your and any other third party's+    modifications of Covered Software, or (ii) the combination of its+    Contributions with other software (except as part of its Contributor+    Version); or++(c) under Patent Claims infringed by Covered Software in the absence of+    its Contributions.++This License does not grant any rights in the trademarks, service marks,+or logos of any Contributor (except as may be necessary to comply with+the notice requirements in Section 3.4).++2.4. Subsequent Licenses++No Contributor makes additional grants as a result of Your choice to+distribute the Covered Software under a subsequent version of this+License (see Section 10.2) or under the terms of a Secondary License (if+permitted under the terms of Section 3.3).++2.5. Representation++Each Contributor represents that the Contributor believes its+Contributions are its original creation(s) or it has sufficient rights+to grant the rights to its Contributions conveyed by this License.++2.6. Fair Use++This License is not intended to limit any rights You have under+applicable copyright doctrines of fair use, fair dealing, or other+equivalents.++2.7. Conditions++Sections 3.1, 3.2, 3.3, and 3.4 are conditions of the licenses granted+in Section 2.1.++3. Responsibilities+-------------------++3.1. Distribution of Source Form++All distribution of Covered Software in Source Code Form, including any+Modifications that You create or to which You contribute, must be under+the terms of this License. You must inform recipients that the Source+Code Form of the Covered Software is governed by the terms of this+License, and how they can obtain a copy of this License. You may not+attempt to alter or restrict the recipients' rights in the Source Code+Form.++3.2. Distribution of Executable Form++If You distribute Covered Software in Executable Form then:++(a) such Covered Software must also be made available in Source Code+    Form, as described in Section 3.1, and You must inform recipients of+    the Executable Form how they can obtain a copy of such Source Code+    Form by reasonable means in a timely manner, at a charge no more+    than the cost of distribution to the recipient; and++(b) You may distribute such Executable Form under the terms of this+    License, or sublicense it under different terms, provided that the+    license for the Executable Form does not attempt to limit or alter+    the recipients' rights in the Source Code Form under this License.++3.3. Distribution of a Larger Work++You may create and distribute a Larger Work under terms of Your choice,+provided that You also comply with the requirements of this License for+the Covered Software. If the Larger Work is a combination of Covered+Software with a work governed by one or more Secondary Licenses, and the+Covered Software is not Incompatible With Secondary Licenses, this+License permits You to additionally distribute such Covered Software+under the terms of such Secondary License(s), so that the recipient of+the Larger Work may, at their option, further distribute the Covered+Software under the terms of either this License or such Secondary+License(s).++3.4. Notices++You may not remove or alter the substance of any license notices+(including copyright notices, patent notices, disclaimers of warranty,+or limitations of liability) contained within the Source Code Form of+the Covered Software, except that You may alter any license notices to+the extent required to remedy known factual inaccuracies.++3.5. Application of Additional Terms++You may choose to offer, and to charge a fee for, warranty, support,+indemnity or liability obligations to one or more recipients of Covered+Software. However, You may do so only on Your own behalf, and not on+behalf of any Contributor. You must make it absolutely clear that any+such warranty, support, indemnity, or liability obligation is offered by+You alone, and You hereby agree to indemnify every Contributor for any+liability incurred by such Contributor as a result of warranty, support,+indemnity or liability terms You offer. You may include additional+disclaimers of warranty and limitations of liability specific to any+jurisdiction.++4. Inability to Comply Due to Statute or Regulation+---------------------------------------------------++If it is impossible for You to comply with any of the terms of this+License with respect to some or all of the Covered Software due to+statute, judicial order, or regulation then You must: (a) comply with+the terms of this License to the maximum extent possible; and (b)+describe the limitations and the code they affect. Such description must+be placed in a text file included with all distributions of the Covered+Software under this License. Except to the extent prohibited by statute+or regulation, such description must be sufficiently detailed for a+recipient of ordinary skill to be able to understand it.++5. Termination+--------------++5.1. The rights granted under this License will terminate automatically+if You fail to comply with any of its terms. However, if You become+compliant, then the rights granted under this License from a particular+Contributor are reinstated (a) provisionally, unless and until such+Contributor explicitly and finally terminates Your grants, and (b) on an+ongoing basis, if such Contributor fails to notify You of the+non-compliance by some reasonable means prior to 60 days after You have+come back into compliance. Moreover, Your grants from a particular+Contributor are reinstated on an ongoing basis if such Contributor+notifies You of the non-compliance by some reasonable means, this is the+first time You have received notice of non-compliance with this License+from such Contributor, and You become compliant prior to 30 days after+Your receipt of the notice.++5.2. If You initiate litigation against any entity by asserting a patent+infringement claim (excluding declaratory judgment actions,+counter-claims, and cross-claims) alleging that a Contributor Version+directly or indirectly infringes any patent, then the rights granted to+You by any and all Contributors for the Covered Software under Section+2.1 of this License shall terminate.++5.3. In the event of termination under Sections 5.1 or 5.2 above, all+end user license agreements (excluding distributors and resellers) which+have been validly granted by You or Your distributors under this License+prior to termination shall survive termination.++************************************************************************+*                                                                      *+*  6. Disclaimer of Warranty                                           *+*  -------------------------                                           *+*                                                                      *+*  Covered Software is provided under this License on an "as is"       *+*  basis, without warranty of any kind, either expressed, implied, or  *+*  statutory, including, without limitation, warranties that the       *+*  Covered Software is free of defects, merchantable, fit for a        *+*  particular purpose or non-infringing. The entire risk as to the     *+*  quality and performance of the Covered Software is with You.        *+*  Should any Covered Software prove defective in any respect, You     *+*  (not any Contributor) assume the cost of any necessary servicing,   *+*  repair, or correction. This disclaimer of warranty constitutes an   *+*  essential part of this License. No use of any Covered Software is   *+*  authorized under this License except under this disclaimer.         *+*                                                                      *+************************************************************************++************************************************************************+*                                                                      *+*  7. Limitation of Liability                                          *+*  --------------------------                                          *+*                                                                      *+*  Under no circumstances and under no legal theory, whether tort      *+*  (including negligence), contract, or otherwise, shall any           *+*  Contributor, or anyone who distributes Covered Software as          *+*  permitted above, be liable to You for any direct, indirect,         *+*  special, incidental, or consequential damages of any character      *+*  including, without limitation, damages for lost profits, loss of    *+*  goodwill, work stoppage, computer failure or malfunction, or any    *+*  and all other commercial damages or losses, even if such party      *+*  shall have been informed of the possibility of such damages. This   *+*  limitation of liability shall not apply to liability for death or   *+*  personal injury resulting from such party's negligence to the       *+*  extent applicable law prohibits such limitation. Some               *+*  jurisdictions do not allow the exclusion or limitation of           *+*  incidental or consequential damages, so this exclusion and          *+*  limitation may not apply to You.                                    *+*                                                                      *+************************************************************************++8. Litigation+-------------++Any litigation relating to this License may be brought only in the+courts of a jurisdiction where the defendant maintains its principal+place of business and such litigation shall be governed by laws of that+jurisdiction, without reference to its conflict-of-law provisions.+Nothing in this Section shall prevent a party's ability to bring+cross-claims or counter-claims.++9. Miscellaneous+----------------++This License represents the complete agreement concerning the subject+matter hereof. If any provision of this License is held to be+unenforceable, such provision shall be reformed only to the extent+necessary to make it enforceable. Any law or regulation which provides+that the language of a contract shall be construed against the drafter+shall not be used to construe this License against a Contributor.++10. Versions of the License+---------------------------++10.1. New Versions++Mozilla Foundation is the license steward. Except as provided in Section+10.3, no one other than the license steward has the right to modify or+publish new versions of this License. Each version will be given a+distinguishing version number.++10.2. Effect of New Versions++You may distribute the Covered Software under the terms of the version+of the License under which You originally received the Covered Software,+or under the terms of any subsequent version published by the license+steward.++10.3. Modified Versions++If you create software not governed by this License, and you want to+create a new license for such software, you may create and use a+modified version of this License if you rename the license and remove+any references to the name of the license steward (except to note that+such modified license differs from this License).++10.4. Distributing Source Code Form that is Incompatible With Secondary+Licenses++If You choose to distribute Source Code Form that is Incompatible With+Secondary Licenses under the terms of this version of the License, the+notice described in Exhibit B of this License must be attached.++Exhibit A - Source Code Form License Notice+-------------------------------------------++  This Source Code Form is subject to the terms of the Mozilla Public+  License, v. 2.0. If a copy of the MPL was not distributed with this+  file, You can obtain one at http://mozilla.org/MPL/2.0/.++If it is not possible or desirable to put the notice in a particular+file, then You may include the notice in a location (such as a LICENSE+file in a relevant directory) where a recipient would be likely to look+for such a notice.++You may add additional accurate notices of copyright ownership.
+ README.md view
@@ -0,0 +1,44 @@+# Amazon IoT RoboRunner SDK++* [Version](#version)+* [Description](#description)+* [Contribute](#contribute)+* [Licence](#licence)+++## Version+ +`2.0` - Derived from API version @2018-05-10@ of the AWS service descriptions, licensed under Apache 2.0.++## Description++Documentation is available via [Hackage](http://hackage.haskell.org/package/amazonka-iot-roborunner)+and the [AWS API Reference](https://aws.amazon.com/documentation/).++The types from this library are intended to be used with [amazonka](http://hackage.haskell.org/package/amazonka),+which provides mechanisms for specifying AuthN/AuthZ information, sending requests,+and receiving responses.++Lenses are used for constructing and manipulating types,+due to the depth of nesting of AWS types and transparency regarding+de/serialisation into more palatable Haskell values.+The provided lenses should be compatible with any of the major lens libraries+[lens](http://hackage.haskell.org/package/lens) or [lens-family-core](http://hackage.haskell.org/package/lens-family-core).++See [Amazonka.IoTRoboRunner](http://hackage.haskell.org/package/amazonka-iot-roborunner/docs/Amazonka-IoTRoboRunner.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-iot-roborunner` is released under the [Mozilla Public License Version 2.0](http://www.mozilla.org/MPL/).++Parts of the code are derived from AWS service descriptions, licensed under Apache 2.0.+Source files subject to this contain an additional licensing clause in their header.
+ amazonka-iot-roborunner.cabal view
@@ -0,0 +1,112 @@+cabal-version:      2.2+name:               amazonka-iot-roborunner+version:            2.0+synopsis:           Amazon IoT RoboRunner SDK.+homepage:           https://github.com/brendanhay/amazonka+bug-reports:        https://github.com/brendanhay/amazonka/issues+license:            MPL-2.0+license-file:       LICENSE+author:             Brendan Hay+maintainer:+  Brendan Hay <brendan.g.hay+amazonka@gmail.com>, Jack Kelly <jack@jackkelly.name>++copyright:          Copyright (c) 2013-2023 Brendan Hay+category:           AWS+build-type:         Simple+extra-source-files:+  fixture/*.proto+  fixture/*.yaml+  README.md+  src/.gitkeep++description:+  Derived from API version @2018-05-10@ of the AWS service descriptions, licensed under Apache 2.0.+  .+  The types from this library are intended to be used with <http://hackage.haskell.org/package/amazonka amazonka>,+  which provides mechanisms for specifying AuthN/AuthZ information, sending requests, and receiving responses.+  .+  It is recommended to use generic lenses or optics from packages such as <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify optional fields and deconstruct responses.+  .+  Generated lenses can be found in "Amazonka.IoTRoboRunner.Lens" and are+  suitable for use with a lens package such as <http://hackage.haskell.org/package/lens lens> or <http://hackage.haskell.org/package/lens-family-core lens-family-core>.+  .+  See "Amazonka.IoTRoboRunner" and the <https://aws.amazon.com/documentation/ AWS documentation> to get started.++source-repository head+  type:     git+  location: git://github.com/brendanhay/amazonka.git+  subdir:   amazonka-iot-roborunner++library+  default-language: Haskell2010+  hs-source-dirs:   src gen+  ghc-options:+    -Wall -fwarn-incomplete-uni-patterns+    -fwarn-incomplete-record-updates -funbox-strict-fields++  exposed-modules:+    Amazonka.IoTRoboRunner+    Amazonka.IoTRoboRunner.CreateDestination+    Amazonka.IoTRoboRunner.CreateSite+    Amazonka.IoTRoboRunner.CreateWorker+    Amazonka.IoTRoboRunner.CreateWorkerFleet+    Amazonka.IoTRoboRunner.DeleteDestination+    Amazonka.IoTRoboRunner.DeleteSite+    Amazonka.IoTRoboRunner.DeleteWorker+    Amazonka.IoTRoboRunner.DeleteWorkerFleet+    Amazonka.IoTRoboRunner.GetDestination+    Amazonka.IoTRoboRunner.GetSite+    Amazonka.IoTRoboRunner.GetWorker+    Amazonka.IoTRoboRunner.GetWorkerFleet+    Amazonka.IoTRoboRunner.Lens+    Amazonka.IoTRoboRunner.ListDestinations+    Amazonka.IoTRoboRunner.ListSites+    Amazonka.IoTRoboRunner.ListWorkerFleets+    Amazonka.IoTRoboRunner.ListWorkers+    Amazonka.IoTRoboRunner.Types+    Amazonka.IoTRoboRunner.Types.CartesianCoordinates+    Amazonka.IoTRoboRunner.Types.Destination+    Amazonka.IoTRoboRunner.Types.DestinationState+    Amazonka.IoTRoboRunner.Types.Orientation+    Amazonka.IoTRoboRunner.Types.PositionCoordinates+    Amazonka.IoTRoboRunner.Types.Site+    Amazonka.IoTRoboRunner.Types.VendorProperties+    Amazonka.IoTRoboRunner.Types.Worker+    Amazonka.IoTRoboRunner.Types.WorkerFleet+    Amazonka.IoTRoboRunner.UpdateDestination+    Amazonka.IoTRoboRunner.UpdateSite+    Amazonka.IoTRoboRunner.UpdateWorker+    Amazonka.IoTRoboRunner.UpdateWorkerFleet+    Amazonka.IoTRoboRunner.Waiters++  build-depends:+    , amazonka-core  >=2.0  && <2.1+    , base           >=4.12 && <5++test-suite amazonka-iot-roborunner-test+  type:             exitcode-stdio-1.0+  default-language: Haskell2010+  hs-source-dirs:   test+  main-is:          Main.hs+  ghc-options:      -Wall -threaded++  -- This section is encoded by the template and any modules added by+  -- hand outside these namespaces will not correctly be added to the+  -- distribution package.+  other-modules:+    Test.Amazonka.Gen.IoTRoboRunner+    Test.Amazonka.IoTRoboRunner+    Test.Amazonka.IoTRoboRunner.Internal++  build-depends:+    , amazonka-core            >=2.0 && <2.1+    , amazonka-iot-roborunner+    , amazonka-test            >=2.0 && <2.1+    , base+    , bytestring+    , case-insensitive+    , tasty+    , tasty-hunit+    , text+    , time+    , unordered-containers
+ fixture/CreateDestination.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iotroborunner/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  iotroborunner.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/CreateDestinationResponse.proto view
+ fixture/CreateSite.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iotroborunner/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  iotroborunner.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/CreateSiteResponse.proto view
+ fixture/CreateWorker.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iotroborunner/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  iotroborunner.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/CreateWorkerFleet.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iotroborunner/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  iotroborunner.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/CreateWorkerFleetResponse.proto view
+ fixture/CreateWorkerResponse.proto view
+ fixture/DeleteDestination.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iotroborunner/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  iotroborunner.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/DeleteDestinationResponse.proto view
+ fixture/DeleteSite.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iotroborunner/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  iotroborunner.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/DeleteSiteResponse.proto view
+ fixture/DeleteWorker.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iotroborunner/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  iotroborunner.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/DeleteWorkerFleet.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iotroborunner/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  iotroborunner.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/DeleteWorkerFleetResponse.proto view
+ fixture/DeleteWorkerResponse.proto view
+ fixture/GetDestination.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iotroborunner/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  iotroborunner.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/GetDestinationResponse.proto view
+ fixture/GetSite.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iotroborunner/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  iotroborunner.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/GetSiteResponse.proto view
+ fixture/GetWorker.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iotroborunner/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  iotroborunner.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/GetWorkerFleet.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iotroborunner/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  iotroborunner.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/GetWorkerFleetResponse.proto view
+ fixture/GetWorkerResponse.proto view
+ fixture/ListDestinations.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iotroborunner/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  iotroborunner.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/ListDestinationsResponse.proto view
+ fixture/ListSites.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iotroborunner/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  iotroborunner.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/ListSitesResponse.proto view
+ fixture/ListWorkerFleets.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iotroborunner/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  iotroborunner.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/ListWorkerFleetsResponse.proto view
+ fixture/ListWorkers.yaml view
@@ -0,0 +1,10 @@+---+method: GET+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iotroborunner/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  iotroborunner.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/ListWorkersResponse.proto view
+ fixture/UpdateDestination.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iotroborunner/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  iotroborunner.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/UpdateDestinationResponse.proto view
+ fixture/UpdateSite.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iotroborunner/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  iotroborunner.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/UpdateSiteResponse.proto view
+ fixture/UpdateWorker.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iotroborunner/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  iotroborunner.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/UpdateWorkerFleet.yaml view
@@ -0,0 +1,10 @@+---+method: POST+headers:+  Authorization:         AWS4-HMAC-SHA256 Credential=access/20091028/us-east-1/iotroborunner/aws4_request, SignedHeaders=content-type;host;x-amz-content-sha256;x-amz-date, Signature=?+  Host:                  iotroborunner.us-east-1.amazonaws.com+  Content-Type:          application/x-www-form-urlencoded; charset=utf-8+  X-Amz-Content-SHA256:  abcdef+  X-Amz-Date:            20091028T223200Z+body:+  ''
+ fixture/UpdateWorkerFleetResponse.proto view
+ fixture/UpdateWorkerResponse.proto view
+ gen/Amazonka/IoTRoboRunner.hs view
@@ -0,0 +1,258 @@+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module      : Amazonka.IoTRoboRunner+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Derived from API version @2018-05-10@ of the AWS service descriptions, licensed under Apache 2.0.+--+-- An example service, deployed with the Octane Service creator, which will+-- echo the string+module Amazonka.IoTRoboRunner+  ( -- * Service Configuration+    defaultService,++    -- * Errors+    -- $errors++    -- ** AccessDeniedException+    _AccessDeniedException,++    -- ** ConflictException+    _ConflictException,++    -- ** InternalServerException+    _InternalServerException,++    -- ** ResourceNotFoundException+    _ResourceNotFoundException,++    -- ** ServiceQuotaExceededException+    _ServiceQuotaExceededException,++    -- ** ThrottlingException+    _ThrottlingException,++    -- ** ValidationException+    _ValidationException,++    -- * Waiters+    -- $waiters++    -- * Operations+    -- $operations++    -- ** CreateDestination+    CreateDestination (CreateDestination'),+    newCreateDestination,+    CreateDestinationResponse (CreateDestinationResponse'),+    newCreateDestinationResponse,++    -- ** CreateSite+    CreateSite (CreateSite'),+    newCreateSite,+    CreateSiteResponse (CreateSiteResponse'),+    newCreateSiteResponse,++    -- ** CreateWorker+    CreateWorker (CreateWorker'),+    newCreateWorker,+    CreateWorkerResponse (CreateWorkerResponse'),+    newCreateWorkerResponse,++    -- ** CreateWorkerFleet+    CreateWorkerFleet (CreateWorkerFleet'),+    newCreateWorkerFleet,+    CreateWorkerFleetResponse (CreateWorkerFleetResponse'),+    newCreateWorkerFleetResponse,++    -- ** DeleteDestination+    DeleteDestination (DeleteDestination'),+    newDeleteDestination,+    DeleteDestinationResponse (DeleteDestinationResponse'),+    newDeleteDestinationResponse,++    -- ** DeleteSite+    DeleteSite (DeleteSite'),+    newDeleteSite,+    DeleteSiteResponse (DeleteSiteResponse'),+    newDeleteSiteResponse,++    -- ** DeleteWorker+    DeleteWorker (DeleteWorker'),+    newDeleteWorker,+    DeleteWorkerResponse (DeleteWorkerResponse'),+    newDeleteWorkerResponse,++    -- ** DeleteWorkerFleet+    DeleteWorkerFleet (DeleteWorkerFleet'),+    newDeleteWorkerFleet,+    DeleteWorkerFleetResponse (DeleteWorkerFleetResponse'),+    newDeleteWorkerFleetResponse,++    -- ** GetDestination+    GetDestination (GetDestination'),+    newGetDestination,+    GetDestinationResponse (GetDestinationResponse'),+    newGetDestinationResponse,++    -- ** GetSite+    GetSite (GetSite'),+    newGetSite,+    GetSiteResponse (GetSiteResponse'),+    newGetSiteResponse,++    -- ** GetWorker+    GetWorker (GetWorker'),+    newGetWorker,+    GetWorkerResponse (GetWorkerResponse'),+    newGetWorkerResponse,++    -- ** GetWorkerFleet+    GetWorkerFleet (GetWorkerFleet'),+    newGetWorkerFleet,+    GetWorkerFleetResponse (GetWorkerFleetResponse'),+    newGetWorkerFleetResponse,++    -- ** ListDestinations (Paginated)+    ListDestinations (ListDestinations'),+    newListDestinations,+    ListDestinationsResponse (ListDestinationsResponse'),+    newListDestinationsResponse,++    -- ** ListSites (Paginated)+    ListSites (ListSites'),+    newListSites,+    ListSitesResponse (ListSitesResponse'),+    newListSitesResponse,++    -- ** ListWorkerFleets (Paginated)+    ListWorkerFleets (ListWorkerFleets'),+    newListWorkerFleets,+    ListWorkerFleetsResponse (ListWorkerFleetsResponse'),+    newListWorkerFleetsResponse,++    -- ** ListWorkers (Paginated)+    ListWorkers (ListWorkers'),+    newListWorkers,+    ListWorkersResponse (ListWorkersResponse'),+    newListWorkersResponse,++    -- ** UpdateDestination+    UpdateDestination (UpdateDestination'),+    newUpdateDestination,+    UpdateDestinationResponse (UpdateDestinationResponse'),+    newUpdateDestinationResponse,++    -- ** UpdateSite+    UpdateSite (UpdateSite'),+    newUpdateSite,+    UpdateSiteResponse (UpdateSiteResponse'),+    newUpdateSiteResponse,++    -- ** UpdateWorker+    UpdateWorker (UpdateWorker'),+    newUpdateWorker,+    UpdateWorkerResponse (UpdateWorkerResponse'),+    newUpdateWorkerResponse,++    -- ** UpdateWorkerFleet+    UpdateWorkerFleet (UpdateWorkerFleet'),+    newUpdateWorkerFleet,+    UpdateWorkerFleetResponse (UpdateWorkerFleetResponse'),+    newUpdateWorkerFleetResponse,++    -- * Types++    -- ** DestinationState+    DestinationState (..),++    -- ** CartesianCoordinates+    CartesianCoordinates (CartesianCoordinates'),+    newCartesianCoordinates,++    -- ** Destination+    Destination (Destination'),+    newDestination,++    -- ** Orientation+    Orientation (Orientation'),+    newOrientation,++    -- ** PositionCoordinates+    PositionCoordinates (PositionCoordinates'),+    newPositionCoordinates,++    -- ** Site+    Site (Site'),+    newSite,++    -- ** VendorProperties+    VendorProperties (VendorProperties'),+    newVendorProperties,++    -- ** Worker+    Worker (Worker'),+    newWorker,++    -- ** WorkerFleet+    WorkerFleet (WorkerFleet'),+    newWorkerFleet,+  )+where++import Amazonka.IoTRoboRunner.CreateDestination+import Amazonka.IoTRoboRunner.CreateSite+import Amazonka.IoTRoboRunner.CreateWorker+import Amazonka.IoTRoboRunner.CreateWorkerFleet+import Amazonka.IoTRoboRunner.DeleteDestination+import Amazonka.IoTRoboRunner.DeleteSite+import Amazonka.IoTRoboRunner.DeleteWorker+import Amazonka.IoTRoboRunner.DeleteWorkerFleet+import Amazonka.IoTRoboRunner.GetDestination+import Amazonka.IoTRoboRunner.GetSite+import Amazonka.IoTRoboRunner.GetWorker+import Amazonka.IoTRoboRunner.GetWorkerFleet+import Amazonka.IoTRoboRunner.Lens+import Amazonka.IoTRoboRunner.ListDestinations+import Amazonka.IoTRoboRunner.ListSites+import Amazonka.IoTRoboRunner.ListWorkerFleets+import Amazonka.IoTRoboRunner.ListWorkers+import Amazonka.IoTRoboRunner.Types+import Amazonka.IoTRoboRunner.UpdateDestination+import Amazonka.IoTRoboRunner.UpdateSite+import Amazonka.IoTRoboRunner.UpdateWorker+import Amazonka.IoTRoboRunner.UpdateWorkerFleet+import Amazonka.IoTRoboRunner.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 'IoTRoboRunner'.++-- $operations+-- Some AWS operations return results that are incomplete and require subsequent+-- requests in order to obtain the entire result set. The process of sending+-- subsequent requests to continue where a previous request left off is called+-- pagination. For example, the 'ListObjects' operation of Amazon S3 returns up to+-- 1000 objects at a time, and you must send subsequent requests with the+-- appropriate Marker in order to retrieve the next page of results.+--+-- Operations that have an 'AWSPager' instance can transparently perform subsequent+-- requests, correctly setting Markers and other request facets to iterate through+-- the entire result set of a truncated API operation. Operations which support+-- this have an additional note in the documentation.+--+-- Many operations have the ability to filter results on the server side. See the+-- individual operation parameters for details.++-- $waiters+-- Waiters poll by repeatedly sending a request until some remote success condition+-- configured by the 'Wait' specification is fulfilled. The 'Wait' specification+-- determines how many attempts should be made, in addition to delay and retry strategies.
+ gen/Amazonka/IoTRoboRunner/CreateDestination.hs view
@@ -0,0 +1,280 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.IoTRoboRunner.CreateDestination+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Grants permission to create a destination+module Amazonka.IoTRoboRunner.CreateDestination+  ( -- * Creating a Request+    CreateDestination (..),+    newCreateDestination,++    -- * Request Lenses+    createDestination_additionalFixedProperties,+    createDestination_clientToken,+    createDestination_state,+    createDestination_name,+    createDestination_site,++    -- * Destructuring the Response+    CreateDestinationResponse (..),+    newCreateDestinationResponse,++    -- * Response Lenses+    createDestinationResponse_httpStatus,+    createDestinationResponse_arn,+    createDestinationResponse_id,+    createDestinationResponse_createdAt,+    createDestinationResponse_updatedAt,+    createDestinationResponse_state,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IoTRoboRunner.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateDestination' smart constructor.+data CreateDestination = CreateDestination'+  { additionalFixedProperties :: Prelude.Maybe Prelude.Text,+    clientToken :: Prelude.Maybe Prelude.Text,+    -- | The state of the destination. Default used if not specified.+    state :: Prelude.Maybe DestinationState,+    name :: Prelude.Text,+    site :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateDestination' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'additionalFixedProperties', 'createDestination_additionalFixedProperties' - Undocumented member.+--+-- 'clientToken', 'createDestination_clientToken' - Undocumented member.+--+-- 'state', 'createDestination_state' - The state of the destination. Default used if not specified.+--+-- 'name', 'createDestination_name' - Undocumented member.+--+-- 'site', 'createDestination_site' - Undocumented member.+newCreateDestination ::+  -- | 'name'+  Prelude.Text ->+  -- | 'site'+  Prelude.Text ->+  CreateDestination+newCreateDestination pName_ pSite_ =+  CreateDestination'+    { additionalFixedProperties =+        Prelude.Nothing,+      clientToken = Prelude.Nothing,+      state = Prelude.Nothing,+      name = pName_,+      site = pSite_+    }++-- | Undocumented member.+createDestination_additionalFixedProperties :: Lens.Lens' CreateDestination (Prelude.Maybe Prelude.Text)+createDestination_additionalFixedProperties = Lens.lens (\CreateDestination' {additionalFixedProperties} -> additionalFixedProperties) (\s@CreateDestination' {} a -> s {additionalFixedProperties = a} :: CreateDestination)++-- | Undocumented member.+createDestination_clientToken :: Lens.Lens' CreateDestination (Prelude.Maybe Prelude.Text)+createDestination_clientToken = Lens.lens (\CreateDestination' {clientToken} -> clientToken) (\s@CreateDestination' {} a -> s {clientToken = a} :: CreateDestination)++-- | The state of the destination. Default used if not specified.+createDestination_state :: Lens.Lens' CreateDestination (Prelude.Maybe DestinationState)+createDestination_state = Lens.lens (\CreateDestination' {state} -> state) (\s@CreateDestination' {} a -> s {state = a} :: CreateDestination)++-- | Undocumented member.+createDestination_name :: Lens.Lens' CreateDestination Prelude.Text+createDestination_name = Lens.lens (\CreateDestination' {name} -> name) (\s@CreateDestination' {} a -> s {name = a} :: CreateDestination)++-- | Undocumented member.+createDestination_site :: Lens.Lens' CreateDestination Prelude.Text+createDestination_site = Lens.lens (\CreateDestination' {site} -> site) (\s@CreateDestination' {} a -> s {site = a} :: CreateDestination)++instance Core.AWSRequest CreateDestination where+  type+    AWSResponse CreateDestination =+      CreateDestinationResponse+  request overrides =+    Request.postJSON (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          CreateDestinationResponse'+            Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+            Prelude.<*> (x Data..:> "arn")+            Prelude.<*> (x Data..:> "id")+            Prelude.<*> (x Data..:> "createdAt")+            Prelude.<*> (x Data..:> "updatedAt")+            Prelude.<*> (x Data..:> "state")+      )++instance Prelude.Hashable CreateDestination where+  hashWithSalt _salt CreateDestination' {..} =+    _salt+      `Prelude.hashWithSalt` additionalFixedProperties+      `Prelude.hashWithSalt` clientToken+      `Prelude.hashWithSalt` state+      `Prelude.hashWithSalt` name+      `Prelude.hashWithSalt` site++instance Prelude.NFData CreateDestination where+  rnf CreateDestination' {..} =+    Prelude.rnf additionalFixedProperties+      `Prelude.seq` Prelude.rnf clientToken+      `Prelude.seq` Prelude.rnf state+      `Prelude.seq` Prelude.rnf name+      `Prelude.seq` Prelude.rnf site++instance Data.ToHeaders CreateDestination where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToJSON CreateDestination where+  toJSON CreateDestination' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("additionalFixedProperties" Data..=)+              Prelude.<$> additionalFixedProperties,+            ("clientToken" Data..=) Prelude.<$> clientToken,+            ("state" Data..=) Prelude.<$> state,+            Prelude.Just ("name" Data..= name),+            Prelude.Just ("site" Data..= site)+          ]+      )++instance Data.ToPath CreateDestination where+  toPath = Prelude.const "/createDestination"++instance Data.ToQuery CreateDestination where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateDestinationResponse' smart constructor.+data CreateDestinationResponse = CreateDestinationResponse'+  { -- | The response's http status code.+    httpStatus :: Prelude.Int,+    arn :: Prelude.Text,+    id :: Prelude.Text,+    createdAt :: Data.POSIX,+    updatedAt :: Data.POSIX,+    state :: DestinationState+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateDestinationResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'createDestinationResponse_httpStatus' - The response's http status code.+--+-- 'arn', 'createDestinationResponse_arn' - Undocumented member.+--+-- 'id', 'createDestinationResponse_id' - Undocumented member.+--+-- 'createdAt', 'createDestinationResponse_createdAt' - Undocumented member.+--+-- 'updatedAt', 'createDestinationResponse_updatedAt' - Undocumented member.+--+-- 'state', 'createDestinationResponse_state' - Undocumented member.+newCreateDestinationResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  -- | 'arn'+  Prelude.Text ->+  -- | 'id'+  Prelude.Text ->+  -- | 'createdAt'+  Prelude.UTCTime ->+  -- | 'updatedAt'+  Prelude.UTCTime ->+  -- | 'state'+  DestinationState ->+  CreateDestinationResponse+newCreateDestinationResponse+  pHttpStatus_+  pArn_+  pId_+  pCreatedAt_+  pUpdatedAt_+  pState_ =+    CreateDestinationResponse'+      { httpStatus =+          pHttpStatus_,+        arn = pArn_,+        id = pId_,+        createdAt = Data._Time Lens.# pCreatedAt_,+        updatedAt = Data._Time Lens.# pUpdatedAt_,+        state = pState_+      }++-- | The response's http status code.+createDestinationResponse_httpStatus :: Lens.Lens' CreateDestinationResponse Prelude.Int+createDestinationResponse_httpStatus = Lens.lens (\CreateDestinationResponse' {httpStatus} -> httpStatus) (\s@CreateDestinationResponse' {} a -> s {httpStatus = a} :: CreateDestinationResponse)++-- | Undocumented member.+createDestinationResponse_arn :: Lens.Lens' CreateDestinationResponse Prelude.Text+createDestinationResponse_arn = Lens.lens (\CreateDestinationResponse' {arn} -> arn) (\s@CreateDestinationResponse' {} a -> s {arn = a} :: CreateDestinationResponse)++-- | Undocumented member.+createDestinationResponse_id :: Lens.Lens' CreateDestinationResponse Prelude.Text+createDestinationResponse_id = Lens.lens (\CreateDestinationResponse' {id} -> id) (\s@CreateDestinationResponse' {} a -> s {id = a} :: CreateDestinationResponse)++-- | Undocumented member.+createDestinationResponse_createdAt :: Lens.Lens' CreateDestinationResponse Prelude.UTCTime+createDestinationResponse_createdAt = Lens.lens (\CreateDestinationResponse' {createdAt} -> createdAt) (\s@CreateDestinationResponse' {} a -> s {createdAt = a} :: CreateDestinationResponse) Prelude.. Data._Time++-- | Undocumented member.+createDestinationResponse_updatedAt :: Lens.Lens' CreateDestinationResponse Prelude.UTCTime+createDestinationResponse_updatedAt = Lens.lens (\CreateDestinationResponse' {updatedAt} -> updatedAt) (\s@CreateDestinationResponse' {} a -> s {updatedAt = a} :: CreateDestinationResponse) Prelude.. Data._Time++-- | Undocumented member.+createDestinationResponse_state :: Lens.Lens' CreateDestinationResponse DestinationState+createDestinationResponse_state = Lens.lens (\CreateDestinationResponse' {state} -> state) (\s@CreateDestinationResponse' {} a -> s {state = a} :: CreateDestinationResponse)++instance Prelude.NFData CreateDestinationResponse where+  rnf CreateDestinationResponse' {..} =+    Prelude.rnf httpStatus+      `Prelude.seq` Prelude.rnf arn+      `Prelude.seq` Prelude.rnf id+      `Prelude.seq` Prelude.rnf createdAt+      `Prelude.seq` Prelude.rnf updatedAt+      `Prelude.seq` Prelude.rnf state
+ gen/Amazonka/IoTRoboRunner/CreateSite.hs view
@@ -0,0 +1,248 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.IoTRoboRunner.CreateSite+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Grants permission to create a site+module Amazonka.IoTRoboRunner.CreateSite+  ( -- * Creating a Request+    CreateSite (..),+    newCreateSite,++    -- * Request Lenses+    createSite_clientToken,+    createSite_description,+    createSite_name,+    createSite_countryCode,++    -- * Destructuring the Response+    CreateSiteResponse (..),+    newCreateSiteResponse,++    -- * Response Lenses+    createSiteResponse_httpStatus,+    createSiteResponse_arn,+    createSiteResponse_id,+    createSiteResponse_createdAt,+    createSiteResponse_updatedAt,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IoTRoboRunner.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateSite' smart constructor.+data CreateSite = CreateSite'+  { clientToken :: Prelude.Maybe Prelude.Text,+    description :: Prelude.Maybe Prelude.Text,+    name :: Prelude.Text,+    countryCode :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateSite' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'clientToken', 'createSite_clientToken' - Undocumented member.+--+-- 'description', 'createSite_description' - Undocumented member.+--+-- 'name', 'createSite_name' - Undocumented member.+--+-- 'countryCode', 'createSite_countryCode' - Undocumented member.+newCreateSite ::+  -- | 'name'+  Prelude.Text ->+  -- | 'countryCode'+  Prelude.Text ->+  CreateSite+newCreateSite pName_ pCountryCode_ =+  CreateSite'+    { clientToken = Prelude.Nothing,+      description = Prelude.Nothing,+      name = pName_,+      countryCode = pCountryCode_+    }++-- | Undocumented member.+createSite_clientToken :: Lens.Lens' CreateSite (Prelude.Maybe Prelude.Text)+createSite_clientToken = Lens.lens (\CreateSite' {clientToken} -> clientToken) (\s@CreateSite' {} a -> s {clientToken = a} :: CreateSite)++-- | Undocumented member.+createSite_description :: Lens.Lens' CreateSite (Prelude.Maybe Prelude.Text)+createSite_description = Lens.lens (\CreateSite' {description} -> description) (\s@CreateSite' {} a -> s {description = a} :: CreateSite)++-- | Undocumented member.+createSite_name :: Lens.Lens' CreateSite Prelude.Text+createSite_name = Lens.lens (\CreateSite' {name} -> name) (\s@CreateSite' {} a -> s {name = a} :: CreateSite)++-- | Undocumented member.+createSite_countryCode :: Lens.Lens' CreateSite Prelude.Text+createSite_countryCode = Lens.lens (\CreateSite' {countryCode} -> countryCode) (\s@CreateSite' {} a -> s {countryCode = a} :: CreateSite)++instance Core.AWSRequest CreateSite where+  type AWSResponse CreateSite = CreateSiteResponse+  request overrides =+    Request.postJSON (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          CreateSiteResponse'+            Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+            Prelude.<*> (x Data..:> "arn")+            Prelude.<*> (x Data..:> "id")+            Prelude.<*> (x Data..:> "createdAt")+            Prelude.<*> (x Data..:> "updatedAt")+      )++instance Prelude.Hashable CreateSite where+  hashWithSalt _salt CreateSite' {..} =+    _salt+      `Prelude.hashWithSalt` clientToken+      `Prelude.hashWithSalt` description+      `Prelude.hashWithSalt` name+      `Prelude.hashWithSalt` countryCode++instance Prelude.NFData CreateSite where+  rnf CreateSite' {..} =+    Prelude.rnf clientToken+      `Prelude.seq` Prelude.rnf description+      `Prelude.seq` Prelude.rnf name+      `Prelude.seq` Prelude.rnf countryCode++instance Data.ToHeaders CreateSite where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToJSON CreateSite where+  toJSON CreateSite' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("clientToken" Data..=) Prelude.<$> clientToken,+            ("description" Data..=) Prelude.<$> description,+            Prelude.Just ("name" Data..= name),+            Prelude.Just ("countryCode" Data..= countryCode)+          ]+      )++instance Data.ToPath CreateSite where+  toPath = Prelude.const "/createSite"++instance Data.ToQuery CreateSite where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateSiteResponse' smart constructor.+data CreateSiteResponse = CreateSiteResponse'+  { -- | The response's http status code.+    httpStatus :: Prelude.Int,+    arn :: Prelude.Text,+    id :: Prelude.Text,+    createdAt :: Data.POSIX,+    updatedAt :: Data.POSIX+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateSiteResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'createSiteResponse_httpStatus' - The response's http status code.+--+-- 'arn', 'createSiteResponse_arn' - Undocumented member.+--+-- 'id', 'createSiteResponse_id' - Undocumented member.+--+-- 'createdAt', 'createSiteResponse_createdAt' - Undocumented member.+--+-- 'updatedAt', 'createSiteResponse_updatedAt' - Undocumented member.+newCreateSiteResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  -- | 'arn'+  Prelude.Text ->+  -- | 'id'+  Prelude.Text ->+  -- | 'createdAt'+  Prelude.UTCTime ->+  -- | 'updatedAt'+  Prelude.UTCTime ->+  CreateSiteResponse+newCreateSiteResponse+  pHttpStatus_+  pArn_+  pId_+  pCreatedAt_+  pUpdatedAt_ =+    CreateSiteResponse'+      { httpStatus = pHttpStatus_,+        arn = pArn_,+        id = pId_,+        createdAt = Data._Time Lens.# pCreatedAt_,+        updatedAt = Data._Time Lens.# pUpdatedAt_+      }++-- | The response's http status code.+createSiteResponse_httpStatus :: Lens.Lens' CreateSiteResponse Prelude.Int+createSiteResponse_httpStatus = Lens.lens (\CreateSiteResponse' {httpStatus} -> httpStatus) (\s@CreateSiteResponse' {} a -> s {httpStatus = a} :: CreateSiteResponse)++-- | Undocumented member.+createSiteResponse_arn :: Lens.Lens' CreateSiteResponse Prelude.Text+createSiteResponse_arn = Lens.lens (\CreateSiteResponse' {arn} -> arn) (\s@CreateSiteResponse' {} a -> s {arn = a} :: CreateSiteResponse)++-- | Undocumented member.+createSiteResponse_id :: Lens.Lens' CreateSiteResponse Prelude.Text+createSiteResponse_id = Lens.lens (\CreateSiteResponse' {id} -> id) (\s@CreateSiteResponse' {} a -> s {id = a} :: CreateSiteResponse)++-- | Undocumented member.+createSiteResponse_createdAt :: Lens.Lens' CreateSiteResponse Prelude.UTCTime+createSiteResponse_createdAt = Lens.lens (\CreateSiteResponse' {createdAt} -> createdAt) (\s@CreateSiteResponse' {} a -> s {createdAt = a} :: CreateSiteResponse) Prelude.. Data._Time++-- | Undocumented member.+createSiteResponse_updatedAt :: Lens.Lens' CreateSiteResponse Prelude.UTCTime+createSiteResponse_updatedAt = Lens.lens (\CreateSiteResponse' {updatedAt} -> updatedAt) (\s@CreateSiteResponse' {} a -> s {updatedAt = a} :: CreateSiteResponse) Prelude.. Data._Time++instance Prelude.NFData CreateSiteResponse where+  rnf CreateSiteResponse' {..} =+    Prelude.rnf httpStatus+      `Prelude.seq` Prelude.rnf arn+      `Prelude.seq` Prelude.rnf id+      `Prelude.seq` Prelude.rnf createdAt+      `Prelude.seq` Prelude.rnf updatedAt
+ gen/Amazonka/IoTRoboRunner/CreateWorker.hs view
@@ -0,0 +1,314 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.IoTRoboRunner.CreateWorker+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Grants permission to create a worker+module Amazonka.IoTRoboRunner.CreateWorker+  ( -- * Creating a Request+    CreateWorker (..),+    newCreateWorker,++    -- * Request Lenses+    createWorker_additionalFixedProperties,+    createWorker_additionalTransientProperties,+    createWorker_clientToken,+    createWorker_orientation,+    createWorker_position,+    createWorker_vendorProperties,+    createWorker_name,+    createWorker_fleet,++    -- * Destructuring the Response+    CreateWorkerResponse (..),+    newCreateWorkerResponse,++    -- * Response Lenses+    createWorkerResponse_httpStatus,+    createWorkerResponse_arn,+    createWorkerResponse_id,+    createWorkerResponse_createdAt,+    createWorkerResponse_updatedAt,+    createWorkerResponse_site,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IoTRoboRunner.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateWorker' smart constructor.+data CreateWorker = CreateWorker'+  { additionalFixedProperties :: Prelude.Maybe Prelude.Text,+    additionalTransientProperties :: Prelude.Maybe Prelude.Text,+    clientToken :: Prelude.Maybe Prelude.Text,+    orientation :: Prelude.Maybe Orientation,+    position :: Prelude.Maybe PositionCoordinates,+    vendorProperties :: Prelude.Maybe VendorProperties,+    name :: Prelude.Text,+    fleet :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateWorker' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'additionalFixedProperties', 'createWorker_additionalFixedProperties' - Undocumented member.+--+-- 'additionalTransientProperties', 'createWorker_additionalTransientProperties' - Undocumented member.+--+-- 'clientToken', 'createWorker_clientToken' - Undocumented member.+--+-- 'orientation', 'createWorker_orientation' - Undocumented member.+--+-- 'position', 'createWorker_position' - Undocumented member.+--+-- 'vendorProperties', 'createWorker_vendorProperties' - Undocumented member.+--+-- 'name', 'createWorker_name' - Undocumented member.+--+-- 'fleet', 'createWorker_fleet' - Undocumented member.+newCreateWorker ::+  -- | 'name'+  Prelude.Text ->+  -- | 'fleet'+  Prelude.Text ->+  CreateWorker+newCreateWorker pName_ pFleet_ =+  CreateWorker'+    { additionalFixedProperties =+        Prelude.Nothing,+      additionalTransientProperties = Prelude.Nothing,+      clientToken = Prelude.Nothing,+      orientation = Prelude.Nothing,+      position = Prelude.Nothing,+      vendorProperties = Prelude.Nothing,+      name = pName_,+      fleet = pFleet_+    }++-- | Undocumented member.+createWorker_additionalFixedProperties :: Lens.Lens' CreateWorker (Prelude.Maybe Prelude.Text)+createWorker_additionalFixedProperties = Lens.lens (\CreateWorker' {additionalFixedProperties} -> additionalFixedProperties) (\s@CreateWorker' {} a -> s {additionalFixedProperties = a} :: CreateWorker)++-- | Undocumented member.+createWorker_additionalTransientProperties :: Lens.Lens' CreateWorker (Prelude.Maybe Prelude.Text)+createWorker_additionalTransientProperties = Lens.lens (\CreateWorker' {additionalTransientProperties} -> additionalTransientProperties) (\s@CreateWorker' {} a -> s {additionalTransientProperties = a} :: CreateWorker)++-- | Undocumented member.+createWorker_clientToken :: Lens.Lens' CreateWorker (Prelude.Maybe Prelude.Text)+createWorker_clientToken = Lens.lens (\CreateWorker' {clientToken} -> clientToken) (\s@CreateWorker' {} a -> s {clientToken = a} :: CreateWorker)++-- | Undocumented member.+createWorker_orientation :: Lens.Lens' CreateWorker (Prelude.Maybe Orientation)+createWorker_orientation = Lens.lens (\CreateWorker' {orientation} -> orientation) (\s@CreateWorker' {} a -> s {orientation = a} :: CreateWorker)++-- | Undocumented member.+createWorker_position :: Lens.Lens' CreateWorker (Prelude.Maybe PositionCoordinates)+createWorker_position = Lens.lens (\CreateWorker' {position} -> position) (\s@CreateWorker' {} a -> s {position = a} :: CreateWorker)++-- | Undocumented member.+createWorker_vendorProperties :: Lens.Lens' CreateWorker (Prelude.Maybe VendorProperties)+createWorker_vendorProperties = Lens.lens (\CreateWorker' {vendorProperties} -> vendorProperties) (\s@CreateWorker' {} a -> s {vendorProperties = a} :: CreateWorker)++-- | Undocumented member.+createWorker_name :: Lens.Lens' CreateWorker Prelude.Text+createWorker_name = Lens.lens (\CreateWorker' {name} -> name) (\s@CreateWorker' {} a -> s {name = a} :: CreateWorker)++-- | Undocumented member.+createWorker_fleet :: Lens.Lens' CreateWorker Prelude.Text+createWorker_fleet = Lens.lens (\CreateWorker' {fleet} -> fleet) (\s@CreateWorker' {} a -> s {fleet = a} :: CreateWorker)++instance Core.AWSRequest CreateWorker where+  type AWSResponse CreateWorker = CreateWorkerResponse+  request overrides =+    Request.postJSON (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          CreateWorkerResponse'+            Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+            Prelude.<*> (x Data..:> "arn")+            Prelude.<*> (x Data..:> "id")+            Prelude.<*> (x Data..:> "createdAt")+            Prelude.<*> (x Data..:> "updatedAt")+            Prelude.<*> (x Data..:> "site")+      )++instance Prelude.Hashable CreateWorker where+  hashWithSalt _salt CreateWorker' {..} =+    _salt+      `Prelude.hashWithSalt` additionalFixedProperties+      `Prelude.hashWithSalt` additionalTransientProperties+      `Prelude.hashWithSalt` clientToken+      `Prelude.hashWithSalt` orientation+      `Prelude.hashWithSalt` position+      `Prelude.hashWithSalt` vendorProperties+      `Prelude.hashWithSalt` name+      `Prelude.hashWithSalt` fleet++instance Prelude.NFData CreateWorker where+  rnf CreateWorker' {..} =+    Prelude.rnf additionalFixedProperties+      `Prelude.seq` Prelude.rnf additionalTransientProperties+      `Prelude.seq` Prelude.rnf clientToken+      `Prelude.seq` Prelude.rnf orientation+      `Prelude.seq` Prelude.rnf position+      `Prelude.seq` Prelude.rnf vendorProperties+      `Prelude.seq` Prelude.rnf name+      `Prelude.seq` Prelude.rnf fleet++instance Data.ToHeaders CreateWorker where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToJSON CreateWorker where+  toJSON CreateWorker' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("additionalFixedProperties" Data..=)+              Prelude.<$> additionalFixedProperties,+            ("additionalTransientProperties" Data..=)+              Prelude.<$> additionalTransientProperties,+            ("clientToken" Data..=) Prelude.<$> clientToken,+            ("orientation" Data..=) Prelude.<$> orientation,+            ("position" Data..=) Prelude.<$> position,+            ("vendorProperties" Data..=)+              Prelude.<$> vendorProperties,+            Prelude.Just ("name" Data..= name),+            Prelude.Just ("fleet" Data..= fleet)+          ]+      )++instance Data.ToPath CreateWorker where+  toPath = Prelude.const "/createWorker"++instance Data.ToQuery CreateWorker where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateWorkerResponse' smart constructor.+data CreateWorkerResponse = CreateWorkerResponse'+  { -- | The response's http status code.+    httpStatus :: Prelude.Int,+    arn :: Prelude.Text,+    id :: Prelude.Text,+    createdAt :: Data.POSIX,+    updatedAt :: Data.POSIX,+    site :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateWorkerResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'createWorkerResponse_httpStatus' - The response's http status code.+--+-- 'arn', 'createWorkerResponse_arn' - Undocumented member.+--+-- 'id', 'createWorkerResponse_id' - Undocumented member.+--+-- 'createdAt', 'createWorkerResponse_createdAt' - Undocumented member.+--+-- 'updatedAt', 'createWorkerResponse_updatedAt' - Undocumented member.+--+-- 'site', 'createWorkerResponse_site' - Undocumented member.+newCreateWorkerResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  -- | 'arn'+  Prelude.Text ->+  -- | 'id'+  Prelude.Text ->+  -- | 'createdAt'+  Prelude.UTCTime ->+  -- | 'updatedAt'+  Prelude.UTCTime ->+  -- | 'site'+  Prelude.Text ->+  CreateWorkerResponse+newCreateWorkerResponse+  pHttpStatus_+  pArn_+  pId_+  pCreatedAt_+  pUpdatedAt_+  pSite_ =+    CreateWorkerResponse'+      { httpStatus = pHttpStatus_,+        arn = pArn_,+        id = pId_,+        createdAt = Data._Time Lens.# pCreatedAt_,+        updatedAt = Data._Time Lens.# pUpdatedAt_,+        site = pSite_+      }++-- | The response's http status code.+createWorkerResponse_httpStatus :: Lens.Lens' CreateWorkerResponse Prelude.Int+createWorkerResponse_httpStatus = Lens.lens (\CreateWorkerResponse' {httpStatus} -> httpStatus) (\s@CreateWorkerResponse' {} a -> s {httpStatus = a} :: CreateWorkerResponse)++-- | Undocumented member.+createWorkerResponse_arn :: Lens.Lens' CreateWorkerResponse Prelude.Text+createWorkerResponse_arn = Lens.lens (\CreateWorkerResponse' {arn} -> arn) (\s@CreateWorkerResponse' {} a -> s {arn = a} :: CreateWorkerResponse)++-- | Undocumented member.+createWorkerResponse_id :: Lens.Lens' CreateWorkerResponse Prelude.Text+createWorkerResponse_id = Lens.lens (\CreateWorkerResponse' {id} -> id) (\s@CreateWorkerResponse' {} a -> s {id = a} :: CreateWorkerResponse)++-- | Undocumented member.+createWorkerResponse_createdAt :: Lens.Lens' CreateWorkerResponse Prelude.UTCTime+createWorkerResponse_createdAt = Lens.lens (\CreateWorkerResponse' {createdAt} -> createdAt) (\s@CreateWorkerResponse' {} a -> s {createdAt = a} :: CreateWorkerResponse) Prelude.. Data._Time++-- | Undocumented member.+createWorkerResponse_updatedAt :: Lens.Lens' CreateWorkerResponse Prelude.UTCTime+createWorkerResponse_updatedAt = Lens.lens (\CreateWorkerResponse' {updatedAt} -> updatedAt) (\s@CreateWorkerResponse' {} a -> s {updatedAt = a} :: CreateWorkerResponse) Prelude.. Data._Time++-- | Undocumented member.+createWorkerResponse_site :: Lens.Lens' CreateWorkerResponse Prelude.Text+createWorkerResponse_site = Lens.lens (\CreateWorkerResponse' {site} -> site) (\s@CreateWorkerResponse' {} a -> s {site = a} :: CreateWorkerResponse)++instance Prelude.NFData CreateWorkerResponse where+  rnf CreateWorkerResponse' {..} =+    Prelude.rnf httpStatus+      `Prelude.seq` Prelude.rnf arn+      `Prelude.seq` Prelude.rnf id+      `Prelude.seq` Prelude.rnf createdAt+      `Prelude.seq` Prelude.rnf updatedAt+      `Prelude.seq` Prelude.rnf site
+ gen/Amazonka/IoTRoboRunner/CreateWorkerFleet.hs view
@@ -0,0 +1,253 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.IoTRoboRunner.CreateWorkerFleet+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Grants permission to create a worker fleet+module Amazonka.IoTRoboRunner.CreateWorkerFleet+  ( -- * Creating a Request+    CreateWorkerFleet (..),+    newCreateWorkerFleet,++    -- * Request Lenses+    createWorkerFleet_additionalFixedProperties,+    createWorkerFleet_clientToken,+    createWorkerFleet_name,+    createWorkerFleet_site,++    -- * Destructuring the Response+    CreateWorkerFleetResponse (..),+    newCreateWorkerFleetResponse,++    -- * Response Lenses+    createWorkerFleetResponse_httpStatus,+    createWorkerFleetResponse_arn,+    createWorkerFleetResponse_id,+    createWorkerFleetResponse_createdAt,+    createWorkerFleetResponse_updatedAt,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IoTRoboRunner.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newCreateWorkerFleet' smart constructor.+data CreateWorkerFleet = CreateWorkerFleet'+  { additionalFixedProperties :: Prelude.Maybe Prelude.Text,+    clientToken :: Prelude.Maybe Prelude.Text,+    name :: Prelude.Text,+    site :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateWorkerFleet' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'additionalFixedProperties', 'createWorkerFleet_additionalFixedProperties' - Undocumented member.+--+-- 'clientToken', 'createWorkerFleet_clientToken' - Undocumented member.+--+-- 'name', 'createWorkerFleet_name' - Undocumented member.+--+-- 'site', 'createWorkerFleet_site' - Undocumented member.+newCreateWorkerFleet ::+  -- | 'name'+  Prelude.Text ->+  -- | 'site'+  Prelude.Text ->+  CreateWorkerFleet+newCreateWorkerFleet pName_ pSite_ =+  CreateWorkerFleet'+    { additionalFixedProperties =+        Prelude.Nothing,+      clientToken = Prelude.Nothing,+      name = pName_,+      site = pSite_+    }++-- | Undocumented member.+createWorkerFleet_additionalFixedProperties :: Lens.Lens' CreateWorkerFleet (Prelude.Maybe Prelude.Text)+createWorkerFleet_additionalFixedProperties = Lens.lens (\CreateWorkerFleet' {additionalFixedProperties} -> additionalFixedProperties) (\s@CreateWorkerFleet' {} a -> s {additionalFixedProperties = a} :: CreateWorkerFleet)++-- | Undocumented member.+createWorkerFleet_clientToken :: Lens.Lens' CreateWorkerFleet (Prelude.Maybe Prelude.Text)+createWorkerFleet_clientToken = Lens.lens (\CreateWorkerFleet' {clientToken} -> clientToken) (\s@CreateWorkerFleet' {} a -> s {clientToken = a} :: CreateWorkerFleet)++-- | Undocumented member.+createWorkerFleet_name :: Lens.Lens' CreateWorkerFleet Prelude.Text+createWorkerFleet_name = Lens.lens (\CreateWorkerFleet' {name} -> name) (\s@CreateWorkerFleet' {} a -> s {name = a} :: CreateWorkerFleet)++-- | Undocumented member.+createWorkerFleet_site :: Lens.Lens' CreateWorkerFleet Prelude.Text+createWorkerFleet_site = Lens.lens (\CreateWorkerFleet' {site} -> site) (\s@CreateWorkerFleet' {} a -> s {site = a} :: CreateWorkerFleet)++instance Core.AWSRequest CreateWorkerFleet where+  type+    AWSResponse CreateWorkerFleet =+      CreateWorkerFleetResponse+  request overrides =+    Request.postJSON (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          CreateWorkerFleetResponse'+            Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+            Prelude.<*> (x Data..:> "arn")+            Prelude.<*> (x Data..:> "id")+            Prelude.<*> (x Data..:> "createdAt")+            Prelude.<*> (x Data..:> "updatedAt")+      )++instance Prelude.Hashable CreateWorkerFleet where+  hashWithSalt _salt CreateWorkerFleet' {..} =+    _salt+      `Prelude.hashWithSalt` additionalFixedProperties+      `Prelude.hashWithSalt` clientToken+      `Prelude.hashWithSalt` name+      `Prelude.hashWithSalt` site++instance Prelude.NFData CreateWorkerFleet where+  rnf CreateWorkerFleet' {..} =+    Prelude.rnf additionalFixedProperties+      `Prelude.seq` Prelude.rnf clientToken+      `Prelude.seq` Prelude.rnf name+      `Prelude.seq` Prelude.rnf site++instance Data.ToHeaders CreateWorkerFleet where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToJSON CreateWorkerFleet where+  toJSON CreateWorkerFleet' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("additionalFixedProperties" Data..=)+              Prelude.<$> additionalFixedProperties,+            ("clientToken" Data..=) Prelude.<$> clientToken,+            Prelude.Just ("name" Data..= name),+            Prelude.Just ("site" Data..= site)+          ]+      )++instance Data.ToPath CreateWorkerFleet where+  toPath = Prelude.const "/createWorkerFleet"++instance Data.ToQuery CreateWorkerFleet where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newCreateWorkerFleetResponse' smart constructor.+data CreateWorkerFleetResponse = CreateWorkerFleetResponse'+  { -- | The response's http status code.+    httpStatus :: Prelude.Int,+    arn :: Prelude.Text,+    id :: Prelude.Text,+    createdAt :: Data.POSIX,+    updatedAt :: Data.POSIX+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CreateWorkerFleetResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'createWorkerFleetResponse_httpStatus' - The response's http status code.+--+-- 'arn', 'createWorkerFleetResponse_arn' - Undocumented member.+--+-- 'id', 'createWorkerFleetResponse_id' - Undocumented member.+--+-- 'createdAt', 'createWorkerFleetResponse_createdAt' - Undocumented member.+--+-- 'updatedAt', 'createWorkerFleetResponse_updatedAt' - Undocumented member.+newCreateWorkerFleetResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  -- | 'arn'+  Prelude.Text ->+  -- | 'id'+  Prelude.Text ->+  -- | 'createdAt'+  Prelude.UTCTime ->+  -- | 'updatedAt'+  Prelude.UTCTime ->+  CreateWorkerFleetResponse+newCreateWorkerFleetResponse+  pHttpStatus_+  pArn_+  pId_+  pCreatedAt_+  pUpdatedAt_ =+    CreateWorkerFleetResponse'+      { httpStatus =+          pHttpStatus_,+        arn = pArn_,+        id = pId_,+        createdAt = Data._Time Lens.# pCreatedAt_,+        updatedAt = Data._Time Lens.# pUpdatedAt_+      }++-- | The response's http status code.+createWorkerFleetResponse_httpStatus :: Lens.Lens' CreateWorkerFleetResponse Prelude.Int+createWorkerFleetResponse_httpStatus = Lens.lens (\CreateWorkerFleetResponse' {httpStatus} -> httpStatus) (\s@CreateWorkerFleetResponse' {} a -> s {httpStatus = a} :: CreateWorkerFleetResponse)++-- | Undocumented member.+createWorkerFleetResponse_arn :: Lens.Lens' CreateWorkerFleetResponse Prelude.Text+createWorkerFleetResponse_arn = Lens.lens (\CreateWorkerFleetResponse' {arn} -> arn) (\s@CreateWorkerFleetResponse' {} a -> s {arn = a} :: CreateWorkerFleetResponse)++-- | Undocumented member.+createWorkerFleetResponse_id :: Lens.Lens' CreateWorkerFleetResponse Prelude.Text+createWorkerFleetResponse_id = Lens.lens (\CreateWorkerFleetResponse' {id} -> id) (\s@CreateWorkerFleetResponse' {} a -> s {id = a} :: CreateWorkerFleetResponse)++-- | Undocumented member.+createWorkerFleetResponse_createdAt :: Lens.Lens' CreateWorkerFleetResponse Prelude.UTCTime+createWorkerFleetResponse_createdAt = Lens.lens (\CreateWorkerFleetResponse' {createdAt} -> createdAt) (\s@CreateWorkerFleetResponse' {} a -> s {createdAt = a} :: CreateWorkerFleetResponse) Prelude.. Data._Time++-- | Undocumented member.+createWorkerFleetResponse_updatedAt :: Lens.Lens' CreateWorkerFleetResponse Prelude.UTCTime+createWorkerFleetResponse_updatedAt = Lens.lens (\CreateWorkerFleetResponse' {updatedAt} -> updatedAt) (\s@CreateWorkerFleetResponse' {} a -> s {updatedAt = a} :: CreateWorkerFleetResponse) Prelude.. Data._Time++instance Prelude.NFData CreateWorkerFleetResponse where+  rnf CreateWorkerFleetResponse' {..} =+    Prelude.rnf httpStatus+      `Prelude.seq` Prelude.rnf arn+      `Prelude.seq` Prelude.rnf id+      `Prelude.seq` Prelude.rnf createdAt+      `Prelude.seq` Prelude.rnf updatedAt
+ gen/Amazonka/IoTRoboRunner/DeleteDestination.hs view
@@ -0,0 +1,149 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.IoTRoboRunner.DeleteDestination+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Grants permission to delete a destination+module Amazonka.IoTRoboRunner.DeleteDestination+  ( -- * Creating a Request+    DeleteDestination (..),+    newDeleteDestination,++    -- * Request Lenses+    deleteDestination_id,++    -- * Destructuring the Response+    DeleteDestinationResponse (..),+    newDeleteDestinationResponse,++    -- * Response Lenses+    deleteDestinationResponse_httpStatus,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IoTRoboRunner.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteDestination' smart constructor.+data DeleteDestination = DeleteDestination'+  { id :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteDestination' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'id', 'deleteDestination_id' - Undocumented member.+newDeleteDestination ::+  -- | 'id'+  Prelude.Text ->+  DeleteDestination+newDeleteDestination pId_ =+  DeleteDestination' {id = pId_}++-- | Undocumented member.+deleteDestination_id :: Lens.Lens' DeleteDestination Prelude.Text+deleteDestination_id = Lens.lens (\DeleteDestination' {id} -> id) (\s@DeleteDestination' {} a -> s {id = a} :: DeleteDestination)++instance Core.AWSRequest DeleteDestination where+  type+    AWSResponse DeleteDestination =+      DeleteDestinationResponse+  request overrides =+    Request.postJSON (overrides defaultService)+  response =+    Response.receiveEmpty+      ( \s h x ->+          DeleteDestinationResponse'+            Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+      )++instance Prelude.Hashable DeleteDestination where+  hashWithSalt _salt DeleteDestination' {..} =+    _salt `Prelude.hashWithSalt` id++instance Prelude.NFData DeleteDestination where+  rnf DeleteDestination' {..} = Prelude.rnf id++instance Data.ToHeaders DeleteDestination where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToJSON DeleteDestination where+  toJSON DeleteDestination' {..} =+    Data.object+      (Prelude.catMaybes [Prelude.Just ("id" Data..= id)])++instance Data.ToPath DeleteDestination where+  toPath = Prelude.const "/deleteDestination"++instance Data.ToQuery DeleteDestination where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteDestinationResponse' smart constructor.+data DeleteDestinationResponse = DeleteDestinationResponse'+  { -- | The response's http status code.+    httpStatus :: Prelude.Int+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteDestinationResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'deleteDestinationResponse_httpStatus' - The response's http status code.+newDeleteDestinationResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  DeleteDestinationResponse+newDeleteDestinationResponse pHttpStatus_ =+  DeleteDestinationResponse'+    { httpStatus =+        pHttpStatus_+    }++-- | The response's http status code.+deleteDestinationResponse_httpStatus :: Lens.Lens' DeleteDestinationResponse Prelude.Int+deleteDestinationResponse_httpStatus = Lens.lens (\DeleteDestinationResponse' {httpStatus} -> httpStatus) (\s@DeleteDestinationResponse' {} a -> s {httpStatus = a} :: DeleteDestinationResponse)++instance Prelude.NFData DeleteDestinationResponse where+  rnf DeleteDestinationResponse' {..} =+    Prelude.rnf httpStatus
+ gen/Amazonka/IoTRoboRunner/DeleteSite.hs view
@@ -0,0 +1,142 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.IoTRoboRunner.DeleteSite+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Grants permission to delete a site+module Amazonka.IoTRoboRunner.DeleteSite+  ( -- * Creating a Request+    DeleteSite (..),+    newDeleteSite,++    -- * Request Lenses+    deleteSite_id,++    -- * Destructuring the Response+    DeleteSiteResponse (..),+    newDeleteSiteResponse,++    -- * Response Lenses+    deleteSiteResponse_httpStatus,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IoTRoboRunner.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteSite' smart constructor.+data DeleteSite = DeleteSite'+  { id :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteSite' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'id', 'deleteSite_id' - Undocumented member.+newDeleteSite ::+  -- | 'id'+  Prelude.Text ->+  DeleteSite+newDeleteSite pId_ = DeleteSite' {id = pId_}++-- | Undocumented member.+deleteSite_id :: Lens.Lens' DeleteSite Prelude.Text+deleteSite_id = Lens.lens (\DeleteSite' {id} -> id) (\s@DeleteSite' {} a -> s {id = a} :: DeleteSite)++instance Core.AWSRequest DeleteSite where+  type AWSResponse DeleteSite = DeleteSiteResponse+  request overrides =+    Request.postJSON (overrides defaultService)+  response =+    Response.receiveEmpty+      ( \s h x ->+          DeleteSiteResponse'+            Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+      )++instance Prelude.Hashable DeleteSite where+  hashWithSalt _salt DeleteSite' {..} =+    _salt `Prelude.hashWithSalt` id++instance Prelude.NFData DeleteSite where+  rnf DeleteSite' {..} = Prelude.rnf id++instance Data.ToHeaders DeleteSite where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToJSON DeleteSite where+  toJSON DeleteSite' {..} =+    Data.object+      (Prelude.catMaybes [Prelude.Just ("id" Data..= id)])++instance Data.ToPath DeleteSite where+  toPath = Prelude.const "/deleteSite"++instance Data.ToQuery DeleteSite where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteSiteResponse' smart constructor.+data DeleteSiteResponse = DeleteSiteResponse'+  { -- | The response's http status code.+    httpStatus :: Prelude.Int+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteSiteResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'deleteSiteResponse_httpStatus' - The response's http status code.+newDeleteSiteResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  DeleteSiteResponse+newDeleteSiteResponse pHttpStatus_ =+  DeleteSiteResponse' {httpStatus = pHttpStatus_}++-- | The response's http status code.+deleteSiteResponse_httpStatus :: Lens.Lens' DeleteSiteResponse Prelude.Int+deleteSiteResponse_httpStatus = Lens.lens (\DeleteSiteResponse' {httpStatus} -> httpStatus) (\s@DeleteSiteResponse' {} a -> s {httpStatus = a} :: DeleteSiteResponse)++instance Prelude.NFData DeleteSiteResponse where+  rnf DeleteSiteResponse' {..} = Prelude.rnf httpStatus
+ gen/Amazonka/IoTRoboRunner/DeleteWorker.hs view
@@ -0,0 +1,143 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.IoTRoboRunner.DeleteWorker+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Grants permission to delete a worker+module Amazonka.IoTRoboRunner.DeleteWorker+  ( -- * Creating a Request+    DeleteWorker (..),+    newDeleteWorker,++    -- * Request Lenses+    deleteWorker_id,++    -- * Destructuring the Response+    DeleteWorkerResponse (..),+    newDeleteWorkerResponse,++    -- * Response Lenses+    deleteWorkerResponse_httpStatus,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IoTRoboRunner.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteWorker' smart constructor.+data DeleteWorker = DeleteWorker'+  { id :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteWorker' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'id', 'deleteWorker_id' - Undocumented member.+newDeleteWorker ::+  -- | 'id'+  Prelude.Text ->+  DeleteWorker+newDeleteWorker pId_ = DeleteWorker' {id = pId_}++-- | Undocumented member.+deleteWorker_id :: Lens.Lens' DeleteWorker Prelude.Text+deleteWorker_id = Lens.lens (\DeleteWorker' {id} -> id) (\s@DeleteWorker' {} a -> s {id = a} :: DeleteWorker)++instance Core.AWSRequest DeleteWorker where+  type AWSResponse DeleteWorker = DeleteWorkerResponse+  request overrides =+    Request.postJSON (overrides defaultService)+  response =+    Response.receiveEmpty+      ( \s h x ->+          DeleteWorkerResponse'+            Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+      )++instance Prelude.Hashable DeleteWorker where+  hashWithSalt _salt DeleteWorker' {..} =+    _salt `Prelude.hashWithSalt` id++instance Prelude.NFData DeleteWorker where+  rnf DeleteWorker' {..} = Prelude.rnf id++instance Data.ToHeaders DeleteWorker where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToJSON DeleteWorker where+  toJSON DeleteWorker' {..} =+    Data.object+      (Prelude.catMaybes [Prelude.Just ("id" Data..= id)])++instance Data.ToPath DeleteWorker where+  toPath = Prelude.const "/deleteWorker"++instance Data.ToQuery DeleteWorker where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteWorkerResponse' smart constructor.+data DeleteWorkerResponse = DeleteWorkerResponse'+  { -- | The response's http status code.+    httpStatus :: Prelude.Int+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteWorkerResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'deleteWorkerResponse_httpStatus' - The response's http status code.+newDeleteWorkerResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  DeleteWorkerResponse+newDeleteWorkerResponse pHttpStatus_ =+  DeleteWorkerResponse' {httpStatus = pHttpStatus_}++-- | The response's http status code.+deleteWorkerResponse_httpStatus :: Lens.Lens' DeleteWorkerResponse Prelude.Int+deleteWorkerResponse_httpStatus = Lens.lens (\DeleteWorkerResponse' {httpStatus} -> httpStatus) (\s@DeleteWorkerResponse' {} a -> s {httpStatus = a} :: DeleteWorkerResponse)++instance Prelude.NFData DeleteWorkerResponse where+  rnf DeleteWorkerResponse' {..} =+    Prelude.rnf httpStatus
+ gen/Amazonka/IoTRoboRunner/DeleteWorkerFleet.hs view
@@ -0,0 +1,149 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.IoTRoboRunner.DeleteWorkerFleet+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Grants permission to delete a worker fleet+module Amazonka.IoTRoboRunner.DeleteWorkerFleet+  ( -- * Creating a Request+    DeleteWorkerFleet (..),+    newDeleteWorkerFleet,++    -- * Request Lenses+    deleteWorkerFleet_id,++    -- * Destructuring the Response+    DeleteWorkerFleetResponse (..),+    newDeleteWorkerFleetResponse,++    -- * Response Lenses+    deleteWorkerFleetResponse_httpStatus,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IoTRoboRunner.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newDeleteWorkerFleet' smart constructor.+data DeleteWorkerFleet = DeleteWorkerFleet'+  { id :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteWorkerFleet' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'id', 'deleteWorkerFleet_id' - Undocumented member.+newDeleteWorkerFleet ::+  -- | 'id'+  Prelude.Text ->+  DeleteWorkerFleet+newDeleteWorkerFleet pId_ =+  DeleteWorkerFleet' {id = pId_}++-- | Undocumented member.+deleteWorkerFleet_id :: Lens.Lens' DeleteWorkerFleet Prelude.Text+deleteWorkerFleet_id = Lens.lens (\DeleteWorkerFleet' {id} -> id) (\s@DeleteWorkerFleet' {} a -> s {id = a} :: DeleteWorkerFleet)++instance Core.AWSRequest DeleteWorkerFleet where+  type+    AWSResponse DeleteWorkerFleet =+      DeleteWorkerFleetResponse+  request overrides =+    Request.postJSON (overrides defaultService)+  response =+    Response.receiveEmpty+      ( \s h x ->+          DeleteWorkerFleetResponse'+            Prelude.<$> (Prelude.pure (Prelude.fromEnum s))+      )++instance Prelude.Hashable DeleteWorkerFleet where+  hashWithSalt _salt DeleteWorkerFleet' {..} =+    _salt `Prelude.hashWithSalt` id++instance Prelude.NFData DeleteWorkerFleet where+  rnf DeleteWorkerFleet' {..} = Prelude.rnf id++instance Data.ToHeaders DeleteWorkerFleet where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToJSON DeleteWorkerFleet where+  toJSON DeleteWorkerFleet' {..} =+    Data.object+      (Prelude.catMaybes [Prelude.Just ("id" Data..= id)])++instance Data.ToPath DeleteWorkerFleet where+  toPath = Prelude.const "/deleteWorkerFleet"++instance Data.ToQuery DeleteWorkerFleet where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newDeleteWorkerFleetResponse' smart constructor.+data DeleteWorkerFleetResponse = DeleteWorkerFleetResponse'+  { -- | The response's http status code.+    httpStatus :: Prelude.Int+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'DeleteWorkerFleetResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'httpStatus', 'deleteWorkerFleetResponse_httpStatus' - The response's http status code.+newDeleteWorkerFleetResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  DeleteWorkerFleetResponse+newDeleteWorkerFleetResponse pHttpStatus_ =+  DeleteWorkerFleetResponse'+    { httpStatus =+        pHttpStatus_+    }++-- | The response's http status code.+deleteWorkerFleetResponse_httpStatus :: Lens.Lens' DeleteWorkerFleetResponse Prelude.Int+deleteWorkerFleetResponse_httpStatus = Lens.lens (\DeleteWorkerFleetResponse' {httpStatus} -> httpStatus) (\s@DeleteWorkerFleetResponse' {} a -> s {httpStatus = a} :: DeleteWorkerFleetResponse)++instance Prelude.NFData DeleteWorkerFleetResponse where+  rnf DeleteWorkerFleetResponse' {..} =+    Prelude.rnf httpStatus
+ gen/Amazonka/IoTRoboRunner/GetDestination.hs view
@@ -0,0 +1,254 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.IoTRoboRunner.GetDestination+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Grants permission to get a destination+module Amazonka.IoTRoboRunner.GetDestination+  ( -- * Creating a Request+    GetDestination (..),+    newGetDestination,++    -- * Request Lenses+    getDestination_id,++    -- * Destructuring the Response+    GetDestinationResponse (..),+    newGetDestinationResponse,++    -- * Response Lenses+    getDestinationResponse_additionalFixedProperties,+    getDestinationResponse_httpStatus,+    getDestinationResponse_arn,+    getDestinationResponse_id,+    getDestinationResponse_name,+    getDestinationResponse_site,+    getDestinationResponse_createdAt,+    getDestinationResponse_updatedAt,+    getDestinationResponse_state,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IoTRoboRunner.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetDestination' smart constructor.+data GetDestination = GetDestination'+  { id :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetDestination' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'id', 'getDestination_id' - Undocumented member.+newGetDestination ::+  -- | 'id'+  Prelude.Text ->+  GetDestination+newGetDestination pId_ = GetDestination' {id = pId_}++-- | Undocumented member.+getDestination_id :: Lens.Lens' GetDestination Prelude.Text+getDestination_id = Lens.lens (\GetDestination' {id} -> id) (\s@GetDestination' {} a -> s {id = a} :: GetDestination)++instance Core.AWSRequest GetDestination where+  type+    AWSResponse GetDestination =+      GetDestinationResponse+  request overrides =+    Request.get (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          GetDestinationResponse'+            Prelude.<$> (x Data..?> "additionalFixedProperties")+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+            Prelude.<*> (x Data..:> "arn")+            Prelude.<*> (x Data..:> "id")+            Prelude.<*> (x Data..:> "name")+            Prelude.<*> (x Data..:> "site")+            Prelude.<*> (x Data..:> "createdAt")+            Prelude.<*> (x Data..:> "updatedAt")+            Prelude.<*> (x Data..:> "state")+      )++instance Prelude.Hashable GetDestination where+  hashWithSalt _salt GetDestination' {..} =+    _salt `Prelude.hashWithSalt` id++instance Prelude.NFData GetDestination where+  rnf GetDestination' {..} = Prelude.rnf id++instance Data.ToHeaders GetDestination where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToPath GetDestination where+  toPath = Prelude.const "/getDestination"++instance Data.ToQuery GetDestination where+  toQuery GetDestination' {..} =+    Prelude.mconcat ["id" Data.=: id]++-- | /See:/ 'newGetDestinationResponse' smart constructor.+data GetDestinationResponse = GetDestinationResponse'+  { additionalFixedProperties :: Prelude.Maybe Prelude.Text,+    -- | The response's http status code.+    httpStatus :: Prelude.Int,+    arn :: Prelude.Text,+    id :: Prelude.Text,+    name :: Prelude.Text,+    site :: Prelude.Text,+    createdAt :: Data.POSIX,+    updatedAt :: Data.POSIX,+    state :: DestinationState+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetDestinationResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'additionalFixedProperties', 'getDestinationResponse_additionalFixedProperties' - Undocumented member.+--+-- 'httpStatus', 'getDestinationResponse_httpStatus' - The response's http status code.+--+-- 'arn', 'getDestinationResponse_arn' - Undocumented member.+--+-- 'id', 'getDestinationResponse_id' - Undocumented member.+--+-- 'name', 'getDestinationResponse_name' - Undocumented member.+--+-- 'site', 'getDestinationResponse_site' - Undocumented member.+--+-- 'createdAt', 'getDestinationResponse_createdAt' - Undocumented member.+--+-- 'updatedAt', 'getDestinationResponse_updatedAt' - Undocumented member.+--+-- 'state', 'getDestinationResponse_state' - Undocumented member.+newGetDestinationResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  -- | 'arn'+  Prelude.Text ->+  -- | 'id'+  Prelude.Text ->+  -- | 'name'+  Prelude.Text ->+  -- | 'site'+  Prelude.Text ->+  -- | 'createdAt'+  Prelude.UTCTime ->+  -- | 'updatedAt'+  Prelude.UTCTime ->+  -- | 'state'+  DestinationState ->+  GetDestinationResponse+newGetDestinationResponse+  pHttpStatus_+  pArn_+  pId_+  pName_+  pSite_+  pCreatedAt_+  pUpdatedAt_+  pState_ =+    GetDestinationResponse'+      { additionalFixedProperties =+          Prelude.Nothing,+        httpStatus = pHttpStatus_,+        arn = pArn_,+        id = pId_,+        name = pName_,+        site = pSite_,+        createdAt = Data._Time Lens.# pCreatedAt_,+        updatedAt = Data._Time Lens.# pUpdatedAt_,+        state = pState_+      }++-- | Undocumented member.+getDestinationResponse_additionalFixedProperties :: Lens.Lens' GetDestinationResponse (Prelude.Maybe Prelude.Text)+getDestinationResponse_additionalFixedProperties = Lens.lens (\GetDestinationResponse' {additionalFixedProperties} -> additionalFixedProperties) (\s@GetDestinationResponse' {} a -> s {additionalFixedProperties = a} :: GetDestinationResponse)++-- | The response's http status code.+getDestinationResponse_httpStatus :: Lens.Lens' GetDestinationResponse Prelude.Int+getDestinationResponse_httpStatus = Lens.lens (\GetDestinationResponse' {httpStatus} -> httpStatus) (\s@GetDestinationResponse' {} a -> s {httpStatus = a} :: GetDestinationResponse)++-- | Undocumented member.+getDestinationResponse_arn :: Lens.Lens' GetDestinationResponse Prelude.Text+getDestinationResponse_arn = Lens.lens (\GetDestinationResponse' {arn} -> arn) (\s@GetDestinationResponse' {} a -> s {arn = a} :: GetDestinationResponse)++-- | Undocumented member.+getDestinationResponse_id :: Lens.Lens' GetDestinationResponse Prelude.Text+getDestinationResponse_id = Lens.lens (\GetDestinationResponse' {id} -> id) (\s@GetDestinationResponse' {} a -> s {id = a} :: GetDestinationResponse)++-- | Undocumented member.+getDestinationResponse_name :: Lens.Lens' GetDestinationResponse Prelude.Text+getDestinationResponse_name = Lens.lens (\GetDestinationResponse' {name} -> name) (\s@GetDestinationResponse' {} a -> s {name = a} :: GetDestinationResponse)++-- | Undocumented member.+getDestinationResponse_site :: Lens.Lens' GetDestinationResponse Prelude.Text+getDestinationResponse_site = Lens.lens (\GetDestinationResponse' {site} -> site) (\s@GetDestinationResponse' {} a -> s {site = a} :: GetDestinationResponse)++-- | Undocumented member.+getDestinationResponse_createdAt :: Lens.Lens' GetDestinationResponse Prelude.UTCTime+getDestinationResponse_createdAt = Lens.lens (\GetDestinationResponse' {createdAt} -> createdAt) (\s@GetDestinationResponse' {} a -> s {createdAt = a} :: GetDestinationResponse) Prelude.. Data._Time++-- | Undocumented member.+getDestinationResponse_updatedAt :: Lens.Lens' GetDestinationResponse Prelude.UTCTime+getDestinationResponse_updatedAt = Lens.lens (\GetDestinationResponse' {updatedAt} -> updatedAt) (\s@GetDestinationResponse' {} a -> s {updatedAt = a} :: GetDestinationResponse) Prelude.. Data._Time++-- | Undocumented member.+getDestinationResponse_state :: Lens.Lens' GetDestinationResponse DestinationState+getDestinationResponse_state = Lens.lens (\GetDestinationResponse' {state} -> state) (\s@GetDestinationResponse' {} a -> s {state = a} :: GetDestinationResponse)++instance Prelude.NFData GetDestinationResponse where+  rnf GetDestinationResponse' {..} =+    Prelude.rnf additionalFixedProperties+      `Prelude.seq` Prelude.rnf httpStatus+      `Prelude.seq` Prelude.rnf arn+      `Prelude.seq` Prelude.rnf id+      `Prelude.seq` Prelude.rnf name+      `Prelude.seq` Prelude.rnf site+      `Prelude.seq` Prelude.rnf createdAt+      `Prelude.seq` Prelude.rnf updatedAt+      `Prelude.seq` Prelude.rnf state
+ gen/Amazonka/IoTRoboRunner/GetSite.hs view
@@ -0,0 +1,237 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.IoTRoboRunner.GetSite+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Grants permission to get a site+module Amazonka.IoTRoboRunner.GetSite+  ( -- * Creating a Request+    GetSite (..),+    newGetSite,++    -- * Request Lenses+    getSite_id,++    -- * Destructuring the Response+    GetSiteResponse (..),+    newGetSiteResponse,++    -- * Response Lenses+    getSiteResponse_description,+    getSiteResponse_httpStatus,+    getSiteResponse_arn,+    getSiteResponse_id,+    getSiteResponse_name,+    getSiteResponse_countryCode,+    getSiteResponse_createdAt,+    getSiteResponse_updatedAt,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IoTRoboRunner.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetSite' smart constructor.+data GetSite = GetSite'+  { id :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetSite' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'id', 'getSite_id' - Undocumented member.+newGetSite ::+  -- | 'id'+  Prelude.Text ->+  GetSite+newGetSite pId_ = GetSite' {id = pId_}++-- | Undocumented member.+getSite_id :: Lens.Lens' GetSite Prelude.Text+getSite_id = Lens.lens (\GetSite' {id} -> id) (\s@GetSite' {} a -> s {id = a} :: GetSite)++instance Core.AWSRequest GetSite where+  type AWSResponse GetSite = GetSiteResponse+  request overrides =+    Request.get (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          GetSiteResponse'+            Prelude.<$> (x Data..?> "description")+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+            Prelude.<*> (x Data..:> "arn")+            Prelude.<*> (x Data..:> "id")+            Prelude.<*> (x Data..:> "name")+            Prelude.<*> (x Data..:> "countryCode")+            Prelude.<*> (x Data..:> "createdAt")+            Prelude.<*> (x Data..:> "updatedAt")+      )++instance Prelude.Hashable GetSite where+  hashWithSalt _salt GetSite' {..} =+    _salt `Prelude.hashWithSalt` id++instance Prelude.NFData GetSite where+  rnf GetSite' {..} = Prelude.rnf id++instance Data.ToHeaders GetSite where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToPath GetSite where+  toPath = Prelude.const "/getSite"++instance Data.ToQuery GetSite where+  toQuery GetSite' {..} =+    Prelude.mconcat ["id" Data.=: id]++-- | /See:/ 'newGetSiteResponse' smart constructor.+data GetSiteResponse = GetSiteResponse'+  { description :: Prelude.Maybe Prelude.Text,+    -- | The response's http status code.+    httpStatus :: Prelude.Int,+    arn :: Prelude.Text,+    id :: Prelude.Text,+    name :: Prelude.Text,+    countryCode :: Prelude.Text,+    createdAt :: Data.POSIX,+    updatedAt :: Data.POSIX+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetSiteResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'description', 'getSiteResponse_description' - Undocumented member.+--+-- 'httpStatus', 'getSiteResponse_httpStatus' - The response's http status code.+--+-- 'arn', 'getSiteResponse_arn' - Undocumented member.+--+-- 'id', 'getSiteResponse_id' - Undocumented member.+--+-- 'name', 'getSiteResponse_name' - Undocumented member.+--+-- 'countryCode', 'getSiteResponse_countryCode' - Undocumented member.+--+-- 'createdAt', 'getSiteResponse_createdAt' - Undocumented member.+--+-- 'updatedAt', 'getSiteResponse_updatedAt' - Undocumented member.+newGetSiteResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  -- | 'arn'+  Prelude.Text ->+  -- | 'id'+  Prelude.Text ->+  -- | 'name'+  Prelude.Text ->+  -- | 'countryCode'+  Prelude.Text ->+  -- | 'createdAt'+  Prelude.UTCTime ->+  -- | 'updatedAt'+  Prelude.UTCTime ->+  GetSiteResponse+newGetSiteResponse+  pHttpStatus_+  pArn_+  pId_+  pName_+  pCountryCode_+  pCreatedAt_+  pUpdatedAt_ =+    GetSiteResponse'+      { description = Prelude.Nothing,+        httpStatus = pHttpStatus_,+        arn = pArn_,+        id = pId_,+        name = pName_,+        countryCode = pCountryCode_,+        createdAt = Data._Time Lens.# pCreatedAt_,+        updatedAt = Data._Time Lens.# pUpdatedAt_+      }++-- | Undocumented member.+getSiteResponse_description :: Lens.Lens' GetSiteResponse (Prelude.Maybe Prelude.Text)+getSiteResponse_description = Lens.lens (\GetSiteResponse' {description} -> description) (\s@GetSiteResponse' {} a -> s {description = a} :: GetSiteResponse)++-- | The response's http status code.+getSiteResponse_httpStatus :: Lens.Lens' GetSiteResponse Prelude.Int+getSiteResponse_httpStatus = Lens.lens (\GetSiteResponse' {httpStatus} -> httpStatus) (\s@GetSiteResponse' {} a -> s {httpStatus = a} :: GetSiteResponse)++-- | Undocumented member.+getSiteResponse_arn :: Lens.Lens' GetSiteResponse Prelude.Text+getSiteResponse_arn = Lens.lens (\GetSiteResponse' {arn} -> arn) (\s@GetSiteResponse' {} a -> s {arn = a} :: GetSiteResponse)++-- | Undocumented member.+getSiteResponse_id :: Lens.Lens' GetSiteResponse Prelude.Text+getSiteResponse_id = Lens.lens (\GetSiteResponse' {id} -> id) (\s@GetSiteResponse' {} a -> s {id = a} :: GetSiteResponse)++-- | Undocumented member.+getSiteResponse_name :: Lens.Lens' GetSiteResponse Prelude.Text+getSiteResponse_name = Lens.lens (\GetSiteResponse' {name} -> name) (\s@GetSiteResponse' {} a -> s {name = a} :: GetSiteResponse)++-- | Undocumented member.+getSiteResponse_countryCode :: Lens.Lens' GetSiteResponse Prelude.Text+getSiteResponse_countryCode = Lens.lens (\GetSiteResponse' {countryCode} -> countryCode) (\s@GetSiteResponse' {} a -> s {countryCode = a} :: GetSiteResponse)++-- | Undocumented member.+getSiteResponse_createdAt :: Lens.Lens' GetSiteResponse Prelude.UTCTime+getSiteResponse_createdAt = Lens.lens (\GetSiteResponse' {createdAt} -> createdAt) (\s@GetSiteResponse' {} a -> s {createdAt = a} :: GetSiteResponse) Prelude.. Data._Time++-- | Undocumented member.+getSiteResponse_updatedAt :: Lens.Lens' GetSiteResponse Prelude.UTCTime+getSiteResponse_updatedAt = Lens.lens (\GetSiteResponse' {updatedAt} -> updatedAt) (\s@GetSiteResponse' {} a -> s {updatedAt = a} :: GetSiteResponse) Prelude.. Data._Time++instance Prelude.NFData GetSiteResponse where+  rnf GetSiteResponse' {..} =+    Prelude.rnf description+      `Prelude.seq` Prelude.rnf httpStatus+      `Prelude.seq` Prelude.rnf arn+      `Prelude.seq` Prelude.rnf id+      `Prelude.seq` Prelude.rnf name+      `Prelude.seq` Prelude.rnf countryCode+      `Prelude.seq` Prelude.rnf createdAt+      `Prelude.seq` Prelude.rnf updatedAt
+ gen/Amazonka/IoTRoboRunner/GetWorker.hs view
@@ -0,0 +1,296 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.IoTRoboRunner.GetWorker+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Grants permission to get a worker+module Amazonka.IoTRoboRunner.GetWorker+  ( -- * Creating a Request+    GetWorker (..),+    newGetWorker,++    -- * Request Lenses+    getWorker_id,++    -- * Destructuring the Response+    GetWorkerResponse (..),+    newGetWorkerResponse,++    -- * Response Lenses+    getWorkerResponse_additionalFixedProperties,+    getWorkerResponse_additionalTransientProperties,+    getWorkerResponse_orientation,+    getWorkerResponse_position,+    getWorkerResponse_vendorProperties,+    getWorkerResponse_httpStatus,+    getWorkerResponse_arn,+    getWorkerResponse_id,+    getWorkerResponse_fleet,+    getWorkerResponse_site,+    getWorkerResponse_createdAt,+    getWorkerResponse_updatedAt,+    getWorkerResponse_name,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IoTRoboRunner.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetWorker' smart constructor.+data GetWorker = GetWorker'+  { id :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetWorker' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'id', 'getWorker_id' - Undocumented member.+newGetWorker ::+  -- | 'id'+  Prelude.Text ->+  GetWorker+newGetWorker pId_ = GetWorker' {id = pId_}++-- | Undocumented member.+getWorker_id :: Lens.Lens' GetWorker Prelude.Text+getWorker_id = Lens.lens (\GetWorker' {id} -> id) (\s@GetWorker' {} a -> s {id = a} :: GetWorker)++instance Core.AWSRequest GetWorker where+  type AWSResponse GetWorker = GetWorkerResponse+  request overrides =+    Request.get (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          GetWorkerResponse'+            Prelude.<$> (x Data..?> "additionalFixedProperties")+            Prelude.<*> (x Data..?> "additionalTransientProperties")+            Prelude.<*> (x Data..?> "orientation")+            Prelude.<*> (x Data..?> "position")+            Prelude.<*> (x Data..?> "vendorProperties")+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+            Prelude.<*> (x Data..:> "arn")+            Prelude.<*> (x Data..:> "id")+            Prelude.<*> (x Data..:> "fleet")+            Prelude.<*> (x Data..:> "site")+            Prelude.<*> (x Data..:> "createdAt")+            Prelude.<*> (x Data..:> "updatedAt")+            Prelude.<*> (x Data..:> "name")+      )++instance Prelude.Hashable GetWorker where+  hashWithSalt _salt GetWorker' {..} =+    _salt `Prelude.hashWithSalt` id++instance Prelude.NFData GetWorker where+  rnf GetWorker' {..} = Prelude.rnf id++instance Data.ToHeaders GetWorker where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToPath GetWorker where+  toPath = Prelude.const "/getWorker"++instance Data.ToQuery GetWorker where+  toQuery GetWorker' {..} =+    Prelude.mconcat ["id" Data.=: id]++-- | /See:/ 'newGetWorkerResponse' smart constructor.+data GetWorkerResponse = GetWorkerResponse'+  { additionalFixedProperties :: Prelude.Maybe Prelude.Text,+    additionalTransientProperties :: Prelude.Maybe Prelude.Text,+    orientation :: Prelude.Maybe Orientation,+    position :: Prelude.Maybe PositionCoordinates,+    vendorProperties :: Prelude.Maybe VendorProperties,+    -- | The response's http status code.+    httpStatus :: Prelude.Int,+    arn :: Prelude.Text,+    id :: Prelude.Text,+    fleet :: Prelude.Text,+    site :: Prelude.Text,+    createdAt :: Data.POSIX,+    updatedAt :: Data.POSIX,+    name :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetWorkerResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'additionalFixedProperties', 'getWorkerResponse_additionalFixedProperties' - Undocumented member.+--+-- 'additionalTransientProperties', 'getWorkerResponse_additionalTransientProperties' - Undocumented member.+--+-- 'orientation', 'getWorkerResponse_orientation' - Undocumented member.+--+-- 'position', 'getWorkerResponse_position' - Undocumented member.+--+-- 'vendorProperties', 'getWorkerResponse_vendorProperties' - Undocumented member.+--+-- 'httpStatus', 'getWorkerResponse_httpStatus' - The response's http status code.+--+-- 'arn', 'getWorkerResponse_arn' - Undocumented member.+--+-- 'id', 'getWorkerResponse_id' - Undocumented member.+--+-- 'fleet', 'getWorkerResponse_fleet' - Undocumented member.+--+-- 'site', 'getWorkerResponse_site' - Undocumented member.+--+-- 'createdAt', 'getWorkerResponse_createdAt' - Undocumented member.+--+-- 'updatedAt', 'getWorkerResponse_updatedAt' - Undocumented member.+--+-- 'name', 'getWorkerResponse_name' - Undocumented member.+newGetWorkerResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  -- | 'arn'+  Prelude.Text ->+  -- | 'id'+  Prelude.Text ->+  -- | 'fleet'+  Prelude.Text ->+  -- | 'site'+  Prelude.Text ->+  -- | 'createdAt'+  Prelude.UTCTime ->+  -- | 'updatedAt'+  Prelude.UTCTime ->+  -- | 'name'+  Prelude.Text ->+  GetWorkerResponse+newGetWorkerResponse+  pHttpStatus_+  pArn_+  pId_+  pFleet_+  pSite_+  pCreatedAt_+  pUpdatedAt_+  pName_ =+    GetWorkerResponse'+      { additionalFixedProperties =+          Prelude.Nothing,+        additionalTransientProperties = Prelude.Nothing,+        orientation = Prelude.Nothing,+        position = Prelude.Nothing,+        vendorProperties = Prelude.Nothing,+        httpStatus = pHttpStatus_,+        arn = pArn_,+        id = pId_,+        fleet = pFleet_,+        site = pSite_,+        createdAt = Data._Time Lens.# pCreatedAt_,+        updatedAt = Data._Time Lens.# pUpdatedAt_,+        name = pName_+      }++-- | Undocumented member.+getWorkerResponse_additionalFixedProperties :: Lens.Lens' GetWorkerResponse (Prelude.Maybe Prelude.Text)+getWorkerResponse_additionalFixedProperties = Lens.lens (\GetWorkerResponse' {additionalFixedProperties} -> additionalFixedProperties) (\s@GetWorkerResponse' {} a -> s {additionalFixedProperties = a} :: GetWorkerResponse)++-- | Undocumented member.+getWorkerResponse_additionalTransientProperties :: Lens.Lens' GetWorkerResponse (Prelude.Maybe Prelude.Text)+getWorkerResponse_additionalTransientProperties = Lens.lens (\GetWorkerResponse' {additionalTransientProperties} -> additionalTransientProperties) (\s@GetWorkerResponse' {} a -> s {additionalTransientProperties = a} :: GetWorkerResponse)++-- | Undocumented member.+getWorkerResponse_orientation :: Lens.Lens' GetWorkerResponse (Prelude.Maybe Orientation)+getWorkerResponse_orientation = Lens.lens (\GetWorkerResponse' {orientation} -> orientation) (\s@GetWorkerResponse' {} a -> s {orientation = a} :: GetWorkerResponse)++-- | Undocumented member.+getWorkerResponse_position :: Lens.Lens' GetWorkerResponse (Prelude.Maybe PositionCoordinates)+getWorkerResponse_position = Lens.lens (\GetWorkerResponse' {position} -> position) (\s@GetWorkerResponse' {} a -> s {position = a} :: GetWorkerResponse)++-- | Undocumented member.+getWorkerResponse_vendorProperties :: Lens.Lens' GetWorkerResponse (Prelude.Maybe VendorProperties)+getWorkerResponse_vendorProperties = Lens.lens (\GetWorkerResponse' {vendorProperties} -> vendorProperties) (\s@GetWorkerResponse' {} a -> s {vendorProperties = a} :: GetWorkerResponse)++-- | The response's http status code.+getWorkerResponse_httpStatus :: Lens.Lens' GetWorkerResponse Prelude.Int+getWorkerResponse_httpStatus = Lens.lens (\GetWorkerResponse' {httpStatus} -> httpStatus) (\s@GetWorkerResponse' {} a -> s {httpStatus = a} :: GetWorkerResponse)++-- | Undocumented member.+getWorkerResponse_arn :: Lens.Lens' GetWorkerResponse Prelude.Text+getWorkerResponse_arn = Lens.lens (\GetWorkerResponse' {arn} -> arn) (\s@GetWorkerResponse' {} a -> s {arn = a} :: GetWorkerResponse)++-- | Undocumented member.+getWorkerResponse_id :: Lens.Lens' GetWorkerResponse Prelude.Text+getWorkerResponse_id = Lens.lens (\GetWorkerResponse' {id} -> id) (\s@GetWorkerResponse' {} a -> s {id = a} :: GetWorkerResponse)++-- | Undocumented member.+getWorkerResponse_fleet :: Lens.Lens' GetWorkerResponse Prelude.Text+getWorkerResponse_fleet = Lens.lens (\GetWorkerResponse' {fleet} -> fleet) (\s@GetWorkerResponse' {} a -> s {fleet = a} :: GetWorkerResponse)++-- | Undocumented member.+getWorkerResponse_site :: Lens.Lens' GetWorkerResponse Prelude.Text+getWorkerResponse_site = Lens.lens (\GetWorkerResponse' {site} -> site) (\s@GetWorkerResponse' {} a -> s {site = a} :: GetWorkerResponse)++-- | Undocumented member.+getWorkerResponse_createdAt :: Lens.Lens' GetWorkerResponse Prelude.UTCTime+getWorkerResponse_createdAt = Lens.lens (\GetWorkerResponse' {createdAt} -> createdAt) (\s@GetWorkerResponse' {} a -> s {createdAt = a} :: GetWorkerResponse) Prelude.. Data._Time++-- | Undocumented member.+getWorkerResponse_updatedAt :: Lens.Lens' GetWorkerResponse Prelude.UTCTime+getWorkerResponse_updatedAt = Lens.lens (\GetWorkerResponse' {updatedAt} -> updatedAt) (\s@GetWorkerResponse' {} a -> s {updatedAt = a} :: GetWorkerResponse) Prelude.. Data._Time++-- | Undocumented member.+getWorkerResponse_name :: Lens.Lens' GetWorkerResponse Prelude.Text+getWorkerResponse_name = Lens.lens (\GetWorkerResponse' {name} -> name) (\s@GetWorkerResponse' {} a -> s {name = a} :: GetWorkerResponse)++instance Prelude.NFData GetWorkerResponse where+  rnf GetWorkerResponse' {..} =+    Prelude.rnf additionalFixedProperties+      `Prelude.seq` Prelude.rnf additionalTransientProperties+      `Prelude.seq` Prelude.rnf orientation+      `Prelude.seq` Prelude.rnf position+      `Prelude.seq` Prelude.rnf vendorProperties+      `Prelude.seq` Prelude.rnf httpStatus+      `Prelude.seq` Prelude.rnf arn+      `Prelude.seq` Prelude.rnf id+      `Prelude.seq` Prelude.rnf fleet+      `Prelude.seq` Prelude.rnf site+      `Prelude.seq` Prelude.rnf createdAt+      `Prelude.seq` Prelude.rnf updatedAt+      `Prelude.seq` Prelude.rnf name
+ gen/Amazonka/IoTRoboRunner/GetWorkerFleet.hs view
@@ -0,0 +1,240 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.IoTRoboRunner.GetWorkerFleet+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Grants permission to get a worker fleet+module Amazonka.IoTRoboRunner.GetWorkerFleet+  ( -- * Creating a Request+    GetWorkerFleet (..),+    newGetWorkerFleet,++    -- * Request Lenses+    getWorkerFleet_id,++    -- * Destructuring the Response+    GetWorkerFleetResponse (..),+    newGetWorkerFleetResponse,++    -- * Response Lenses+    getWorkerFleetResponse_additionalFixedProperties,+    getWorkerFleetResponse_httpStatus,+    getWorkerFleetResponse_id,+    getWorkerFleetResponse_arn,+    getWorkerFleetResponse_name,+    getWorkerFleetResponse_site,+    getWorkerFleetResponse_createdAt,+    getWorkerFleetResponse_updatedAt,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IoTRoboRunner.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newGetWorkerFleet' smart constructor.+data GetWorkerFleet = GetWorkerFleet'+  { id :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetWorkerFleet' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'id', 'getWorkerFleet_id' - Undocumented member.+newGetWorkerFleet ::+  -- | 'id'+  Prelude.Text ->+  GetWorkerFleet+newGetWorkerFleet pId_ = GetWorkerFleet' {id = pId_}++-- | Undocumented member.+getWorkerFleet_id :: Lens.Lens' GetWorkerFleet Prelude.Text+getWorkerFleet_id = Lens.lens (\GetWorkerFleet' {id} -> id) (\s@GetWorkerFleet' {} a -> s {id = a} :: GetWorkerFleet)++instance Core.AWSRequest GetWorkerFleet where+  type+    AWSResponse GetWorkerFleet =+      GetWorkerFleetResponse+  request overrides =+    Request.get (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          GetWorkerFleetResponse'+            Prelude.<$> (x Data..?> "additionalFixedProperties")+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+            Prelude.<*> (x Data..:> "id")+            Prelude.<*> (x Data..:> "arn")+            Prelude.<*> (x Data..:> "name")+            Prelude.<*> (x Data..:> "site")+            Prelude.<*> (x Data..:> "createdAt")+            Prelude.<*> (x Data..:> "updatedAt")+      )++instance Prelude.Hashable GetWorkerFleet where+  hashWithSalt _salt GetWorkerFleet' {..} =+    _salt `Prelude.hashWithSalt` id++instance Prelude.NFData GetWorkerFleet where+  rnf GetWorkerFleet' {..} = Prelude.rnf id++instance Data.ToHeaders GetWorkerFleet where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToPath GetWorkerFleet where+  toPath = Prelude.const "/getWorkerFleet"++instance Data.ToQuery GetWorkerFleet where+  toQuery GetWorkerFleet' {..} =+    Prelude.mconcat ["id" Data.=: id]++-- | /See:/ 'newGetWorkerFleetResponse' smart constructor.+data GetWorkerFleetResponse = GetWorkerFleetResponse'+  { additionalFixedProperties :: Prelude.Maybe Prelude.Text,+    -- | The response's http status code.+    httpStatus :: Prelude.Int,+    id :: Prelude.Text,+    arn :: Prelude.Text,+    name :: Prelude.Text,+    site :: Prelude.Text,+    createdAt :: Data.POSIX,+    updatedAt :: Data.POSIX+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'GetWorkerFleetResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'additionalFixedProperties', 'getWorkerFleetResponse_additionalFixedProperties' - Undocumented member.+--+-- 'httpStatus', 'getWorkerFleetResponse_httpStatus' - The response's http status code.+--+-- 'id', 'getWorkerFleetResponse_id' - Undocumented member.+--+-- 'arn', 'getWorkerFleetResponse_arn' - Undocumented member.+--+-- 'name', 'getWorkerFleetResponse_name' - Undocumented member.+--+-- 'site', 'getWorkerFleetResponse_site' - Undocumented member.+--+-- 'createdAt', 'getWorkerFleetResponse_createdAt' - Undocumented member.+--+-- 'updatedAt', 'getWorkerFleetResponse_updatedAt' - Undocumented member.+newGetWorkerFleetResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  -- | 'id'+  Prelude.Text ->+  -- | 'arn'+  Prelude.Text ->+  -- | 'name'+  Prelude.Text ->+  -- | 'site'+  Prelude.Text ->+  -- | 'createdAt'+  Prelude.UTCTime ->+  -- | 'updatedAt'+  Prelude.UTCTime ->+  GetWorkerFleetResponse+newGetWorkerFleetResponse+  pHttpStatus_+  pId_+  pArn_+  pName_+  pSite_+  pCreatedAt_+  pUpdatedAt_ =+    GetWorkerFleetResponse'+      { additionalFixedProperties =+          Prelude.Nothing,+        httpStatus = pHttpStatus_,+        id = pId_,+        arn = pArn_,+        name = pName_,+        site = pSite_,+        createdAt = Data._Time Lens.# pCreatedAt_,+        updatedAt = Data._Time Lens.# pUpdatedAt_+      }++-- | Undocumented member.+getWorkerFleetResponse_additionalFixedProperties :: Lens.Lens' GetWorkerFleetResponse (Prelude.Maybe Prelude.Text)+getWorkerFleetResponse_additionalFixedProperties = Lens.lens (\GetWorkerFleetResponse' {additionalFixedProperties} -> additionalFixedProperties) (\s@GetWorkerFleetResponse' {} a -> s {additionalFixedProperties = a} :: GetWorkerFleetResponse)++-- | The response's http status code.+getWorkerFleetResponse_httpStatus :: Lens.Lens' GetWorkerFleetResponse Prelude.Int+getWorkerFleetResponse_httpStatus = Lens.lens (\GetWorkerFleetResponse' {httpStatus} -> httpStatus) (\s@GetWorkerFleetResponse' {} a -> s {httpStatus = a} :: GetWorkerFleetResponse)++-- | Undocumented member.+getWorkerFleetResponse_id :: Lens.Lens' GetWorkerFleetResponse Prelude.Text+getWorkerFleetResponse_id = Lens.lens (\GetWorkerFleetResponse' {id} -> id) (\s@GetWorkerFleetResponse' {} a -> s {id = a} :: GetWorkerFleetResponse)++-- | Undocumented member.+getWorkerFleetResponse_arn :: Lens.Lens' GetWorkerFleetResponse Prelude.Text+getWorkerFleetResponse_arn = Lens.lens (\GetWorkerFleetResponse' {arn} -> arn) (\s@GetWorkerFleetResponse' {} a -> s {arn = a} :: GetWorkerFleetResponse)++-- | Undocumented member.+getWorkerFleetResponse_name :: Lens.Lens' GetWorkerFleetResponse Prelude.Text+getWorkerFleetResponse_name = Lens.lens (\GetWorkerFleetResponse' {name} -> name) (\s@GetWorkerFleetResponse' {} a -> s {name = a} :: GetWorkerFleetResponse)++-- | Undocumented member.+getWorkerFleetResponse_site :: Lens.Lens' GetWorkerFleetResponse Prelude.Text+getWorkerFleetResponse_site = Lens.lens (\GetWorkerFleetResponse' {site} -> site) (\s@GetWorkerFleetResponse' {} a -> s {site = a} :: GetWorkerFleetResponse)++-- | Undocumented member.+getWorkerFleetResponse_createdAt :: Lens.Lens' GetWorkerFleetResponse Prelude.UTCTime+getWorkerFleetResponse_createdAt = Lens.lens (\GetWorkerFleetResponse' {createdAt} -> createdAt) (\s@GetWorkerFleetResponse' {} a -> s {createdAt = a} :: GetWorkerFleetResponse) Prelude.. Data._Time++-- | Undocumented member.+getWorkerFleetResponse_updatedAt :: Lens.Lens' GetWorkerFleetResponse Prelude.UTCTime+getWorkerFleetResponse_updatedAt = Lens.lens (\GetWorkerFleetResponse' {updatedAt} -> updatedAt) (\s@GetWorkerFleetResponse' {} a -> s {updatedAt = a} :: GetWorkerFleetResponse) Prelude.. Data._Time++instance Prelude.NFData GetWorkerFleetResponse where+  rnf GetWorkerFleetResponse' {..} =+    Prelude.rnf additionalFixedProperties+      `Prelude.seq` Prelude.rnf httpStatus+      `Prelude.seq` Prelude.rnf id+      `Prelude.seq` Prelude.rnf arn+      `Prelude.seq` Prelude.rnf name+      `Prelude.seq` Prelude.rnf site+      `Prelude.seq` Prelude.rnf createdAt+      `Prelude.seq` Prelude.rnf updatedAt
+ gen/Amazonka/IoTRoboRunner/Lens.hs view
@@ -0,0 +1,311 @@+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.IoTRoboRunner.Lens+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IoTRoboRunner.Lens+  ( -- * Operations++    -- ** CreateDestination+    createDestination_additionalFixedProperties,+    createDestination_clientToken,+    createDestination_state,+    createDestination_name,+    createDestination_site,+    createDestinationResponse_httpStatus,+    createDestinationResponse_arn,+    createDestinationResponse_id,+    createDestinationResponse_createdAt,+    createDestinationResponse_updatedAt,+    createDestinationResponse_state,++    -- ** CreateSite+    createSite_clientToken,+    createSite_description,+    createSite_name,+    createSite_countryCode,+    createSiteResponse_httpStatus,+    createSiteResponse_arn,+    createSiteResponse_id,+    createSiteResponse_createdAt,+    createSiteResponse_updatedAt,++    -- ** CreateWorker+    createWorker_additionalFixedProperties,+    createWorker_additionalTransientProperties,+    createWorker_clientToken,+    createWorker_orientation,+    createWorker_position,+    createWorker_vendorProperties,+    createWorker_name,+    createWorker_fleet,+    createWorkerResponse_httpStatus,+    createWorkerResponse_arn,+    createWorkerResponse_id,+    createWorkerResponse_createdAt,+    createWorkerResponse_updatedAt,+    createWorkerResponse_site,++    -- ** CreateWorkerFleet+    createWorkerFleet_additionalFixedProperties,+    createWorkerFleet_clientToken,+    createWorkerFleet_name,+    createWorkerFleet_site,+    createWorkerFleetResponse_httpStatus,+    createWorkerFleetResponse_arn,+    createWorkerFleetResponse_id,+    createWorkerFleetResponse_createdAt,+    createWorkerFleetResponse_updatedAt,++    -- ** DeleteDestination+    deleteDestination_id,+    deleteDestinationResponse_httpStatus,++    -- ** DeleteSite+    deleteSite_id,+    deleteSiteResponse_httpStatus,++    -- ** DeleteWorker+    deleteWorker_id,+    deleteWorkerResponse_httpStatus,++    -- ** DeleteWorkerFleet+    deleteWorkerFleet_id,+    deleteWorkerFleetResponse_httpStatus,++    -- ** GetDestination+    getDestination_id,+    getDestinationResponse_additionalFixedProperties,+    getDestinationResponse_httpStatus,+    getDestinationResponse_arn,+    getDestinationResponse_id,+    getDestinationResponse_name,+    getDestinationResponse_site,+    getDestinationResponse_createdAt,+    getDestinationResponse_updatedAt,+    getDestinationResponse_state,++    -- ** GetSite+    getSite_id,+    getSiteResponse_description,+    getSiteResponse_httpStatus,+    getSiteResponse_arn,+    getSiteResponse_id,+    getSiteResponse_name,+    getSiteResponse_countryCode,+    getSiteResponse_createdAt,+    getSiteResponse_updatedAt,++    -- ** GetWorker+    getWorker_id,+    getWorkerResponse_additionalFixedProperties,+    getWorkerResponse_additionalTransientProperties,+    getWorkerResponse_orientation,+    getWorkerResponse_position,+    getWorkerResponse_vendorProperties,+    getWorkerResponse_httpStatus,+    getWorkerResponse_arn,+    getWorkerResponse_id,+    getWorkerResponse_fleet,+    getWorkerResponse_site,+    getWorkerResponse_createdAt,+    getWorkerResponse_updatedAt,+    getWorkerResponse_name,++    -- ** GetWorkerFleet+    getWorkerFleet_id,+    getWorkerFleetResponse_additionalFixedProperties,+    getWorkerFleetResponse_httpStatus,+    getWorkerFleetResponse_id,+    getWorkerFleetResponse_arn,+    getWorkerFleetResponse_name,+    getWorkerFleetResponse_site,+    getWorkerFleetResponse_createdAt,+    getWorkerFleetResponse_updatedAt,++    -- ** ListDestinations+    listDestinations_maxResults,+    listDestinations_nextToken,+    listDestinations_state,+    listDestinations_site,+    listDestinationsResponse_destinations,+    listDestinationsResponse_nextToken,+    listDestinationsResponse_httpStatus,++    -- ** ListSites+    listSites_maxResults,+    listSites_nextToken,+    listSitesResponse_nextToken,+    listSitesResponse_sites,+    listSitesResponse_httpStatus,++    -- ** ListWorkerFleets+    listWorkerFleets_maxResults,+    listWorkerFleets_nextToken,+    listWorkerFleets_site,+    listWorkerFleetsResponse_nextToken,+    listWorkerFleetsResponse_workerFleets,+    listWorkerFleetsResponse_httpStatus,++    -- ** ListWorkers+    listWorkers_fleet,+    listWorkers_maxResults,+    listWorkers_nextToken,+    listWorkers_site,+    listWorkersResponse_nextToken,+    listWorkersResponse_workers,+    listWorkersResponse_httpStatus,++    -- ** UpdateDestination+    updateDestination_additionalFixedProperties,+    updateDestination_name,+    updateDestination_state,+    updateDestination_id,+    updateDestinationResponse_additionalFixedProperties,+    updateDestinationResponse_httpStatus,+    updateDestinationResponse_arn,+    updateDestinationResponse_id,+    updateDestinationResponse_name,+    updateDestinationResponse_updatedAt,+    updateDestinationResponse_state,++    -- ** UpdateSite+    updateSite_countryCode,+    updateSite_description,+    updateSite_name,+    updateSite_id,+    updateSiteResponse_countryCode,+    updateSiteResponse_description,+    updateSiteResponse_httpStatus,+    updateSiteResponse_arn,+    updateSiteResponse_id,+    updateSiteResponse_name,+    updateSiteResponse_updatedAt,++    -- ** UpdateWorker+    updateWorker_additionalFixedProperties,+    updateWorker_additionalTransientProperties,+    updateWorker_name,+    updateWorker_orientation,+    updateWorker_position,+    updateWorker_vendorProperties,+    updateWorker_id,+    updateWorkerResponse_additionalFixedProperties,+    updateWorkerResponse_additionalTransientProperties,+    updateWorkerResponse_orientation,+    updateWorkerResponse_position,+    updateWorkerResponse_vendorProperties,+    updateWorkerResponse_httpStatus,+    updateWorkerResponse_arn,+    updateWorkerResponse_id,+    updateWorkerResponse_fleet,+    updateWorkerResponse_updatedAt,+    updateWorkerResponse_name,++    -- ** UpdateWorkerFleet+    updateWorkerFleet_additionalFixedProperties,+    updateWorkerFleet_name,+    updateWorkerFleet_id,+    updateWorkerFleetResponse_additionalFixedProperties,+    updateWorkerFleetResponse_httpStatus,+    updateWorkerFleetResponse_arn,+    updateWorkerFleetResponse_id,+    updateWorkerFleetResponse_name,+    updateWorkerFleetResponse_updatedAt,++    -- * Types++    -- ** CartesianCoordinates+    cartesianCoordinates_z,+    cartesianCoordinates_x,+    cartesianCoordinates_y,++    -- ** Destination+    destination_additionalFixedProperties,+    destination_arn,+    destination_id,+    destination_name,+    destination_site,+    destination_createdAt,+    destination_updatedAt,+    destination_state,++    -- ** Orientation+    orientation_degrees,++    -- ** PositionCoordinates+    positionCoordinates_cartesianCoordinates,++    -- ** Site+    site_arn,+    site_name,+    site_countryCode,+    site_createdAt,++    -- ** VendorProperties+    vendorProperties_vendorAdditionalFixedProperties,+    vendorProperties_vendorAdditionalTransientProperties,+    vendorProperties_vendorWorkerIpAddress,+    vendorProperties_vendorWorkerId,++    -- ** Worker+    worker_additionalFixedProperties,+    worker_additionalTransientProperties,+    worker_orientation,+    worker_position,+    worker_vendorProperties,+    worker_arn,+    worker_id,+    worker_fleet,+    worker_createdAt,+    worker_updatedAt,+    worker_name,+    worker_site,++    -- ** WorkerFleet+    workerFleet_additionalFixedProperties,+    workerFleet_arn,+    workerFleet_id,+    workerFleet_name,+    workerFleet_site,+    workerFleet_createdAt,+    workerFleet_updatedAt,+  )+where++import Amazonka.IoTRoboRunner.CreateDestination+import Amazonka.IoTRoboRunner.CreateSite+import Amazonka.IoTRoboRunner.CreateWorker+import Amazonka.IoTRoboRunner.CreateWorkerFleet+import Amazonka.IoTRoboRunner.DeleteDestination+import Amazonka.IoTRoboRunner.DeleteSite+import Amazonka.IoTRoboRunner.DeleteWorker+import Amazonka.IoTRoboRunner.DeleteWorkerFleet+import Amazonka.IoTRoboRunner.GetDestination+import Amazonka.IoTRoboRunner.GetSite+import Amazonka.IoTRoboRunner.GetWorker+import Amazonka.IoTRoboRunner.GetWorkerFleet+import Amazonka.IoTRoboRunner.ListDestinations+import Amazonka.IoTRoboRunner.ListSites+import Amazonka.IoTRoboRunner.ListWorkerFleets+import Amazonka.IoTRoboRunner.ListWorkers+import Amazonka.IoTRoboRunner.Types.CartesianCoordinates+import Amazonka.IoTRoboRunner.Types.Destination+import Amazonka.IoTRoboRunner.Types.Orientation+import Amazonka.IoTRoboRunner.Types.PositionCoordinates+import Amazonka.IoTRoboRunner.Types.Site+import Amazonka.IoTRoboRunner.Types.VendorProperties+import Amazonka.IoTRoboRunner.Types.Worker+import Amazonka.IoTRoboRunner.Types.WorkerFleet+import Amazonka.IoTRoboRunner.UpdateDestination+import Amazonka.IoTRoboRunner.UpdateSite+import Amazonka.IoTRoboRunner.UpdateWorker+import Amazonka.IoTRoboRunner.UpdateWorkerFleet
+ gen/Amazonka/IoTRoboRunner/ListDestinations.hs view
@@ -0,0 +1,233 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.IoTRoboRunner.ListDestinations+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Grants permission to list destinations+--+-- This operation returns paginated results.+module Amazonka.IoTRoboRunner.ListDestinations+  ( -- * Creating a Request+    ListDestinations (..),+    newListDestinations,++    -- * Request Lenses+    listDestinations_maxResults,+    listDestinations_nextToken,+    listDestinations_state,+    listDestinations_site,++    -- * Destructuring the Response+    ListDestinationsResponse (..),+    newListDestinationsResponse,++    -- * Response Lenses+    listDestinationsResponse_destinations,+    listDestinationsResponse_nextToken,+    listDestinationsResponse_httpStatus,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IoTRoboRunner.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListDestinations' smart constructor.+data ListDestinations = ListDestinations'+  { maxResults :: Prelude.Maybe Prelude.Natural,+    nextToken :: Prelude.Maybe Prelude.Text,+    state :: Prelude.Maybe DestinationState,+    site :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListDestinations' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'maxResults', 'listDestinations_maxResults' - Undocumented member.+--+-- 'nextToken', 'listDestinations_nextToken' - Undocumented member.+--+-- 'state', 'listDestinations_state' - Undocumented member.+--+-- 'site', 'listDestinations_site' - Undocumented member.+newListDestinations ::+  -- | 'site'+  Prelude.Text ->+  ListDestinations+newListDestinations pSite_ =+  ListDestinations'+    { maxResults = Prelude.Nothing,+      nextToken = Prelude.Nothing,+      state = Prelude.Nothing,+      site = pSite_+    }++-- | Undocumented member.+listDestinations_maxResults :: Lens.Lens' ListDestinations (Prelude.Maybe Prelude.Natural)+listDestinations_maxResults = Lens.lens (\ListDestinations' {maxResults} -> maxResults) (\s@ListDestinations' {} a -> s {maxResults = a} :: ListDestinations)++-- | Undocumented member.+listDestinations_nextToken :: Lens.Lens' ListDestinations (Prelude.Maybe Prelude.Text)+listDestinations_nextToken = Lens.lens (\ListDestinations' {nextToken} -> nextToken) (\s@ListDestinations' {} a -> s {nextToken = a} :: ListDestinations)++-- | Undocumented member.+listDestinations_state :: Lens.Lens' ListDestinations (Prelude.Maybe DestinationState)+listDestinations_state = Lens.lens (\ListDestinations' {state} -> state) (\s@ListDestinations' {} a -> s {state = a} :: ListDestinations)++-- | Undocumented member.+listDestinations_site :: Lens.Lens' ListDestinations Prelude.Text+listDestinations_site = Lens.lens (\ListDestinations' {site} -> site) (\s@ListDestinations' {} a -> s {site = a} :: ListDestinations)++instance Core.AWSPager ListDestinations where+  page rq rs+    | Core.stop+        ( rs+            Lens.^? listDestinationsResponse_nextToken+            Prelude.. Lens._Just+        ) =+        Prelude.Nothing+    | Core.stop+        ( rs+            Lens.^? listDestinationsResponse_destinations+            Prelude.. Lens._Just+        ) =+        Prelude.Nothing+    | Prelude.otherwise =+        Prelude.Just+          Prelude.$ rq+          Prelude.& listDestinations_nextToken+          Lens..~ rs+          Lens.^? listDestinationsResponse_nextToken+          Prelude.. Lens._Just++instance Core.AWSRequest ListDestinations where+  type+    AWSResponse ListDestinations =+      ListDestinationsResponse+  request overrides =+    Request.get (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          ListDestinationsResponse'+            Prelude.<$> (x Data..?> "destinations" Core..!@ Prelude.mempty)+            Prelude.<*> (x Data..?> "nextToken")+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+      )++instance Prelude.Hashable ListDestinations where+  hashWithSalt _salt ListDestinations' {..} =+    _salt+      `Prelude.hashWithSalt` maxResults+      `Prelude.hashWithSalt` nextToken+      `Prelude.hashWithSalt` state+      `Prelude.hashWithSalt` site++instance Prelude.NFData ListDestinations where+  rnf ListDestinations' {..} =+    Prelude.rnf maxResults+      `Prelude.seq` Prelude.rnf nextToken+      `Prelude.seq` Prelude.rnf state+      `Prelude.seq` Prelude.rnf site++instance Data.ToHeaders ListDestinations where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToPath ListDestinations where+  toPath = Prelude.const "/listDestinations"++instance Data.ToQuery ListDestinations where+  toQuery ListDestinations' {..} =+    Prelude.mconcat+      [ "maxResults" Data.=: maxResults,+        "nextToken" Data.=: nextToken,+        "state" Data.=: state,+        "site" Data.=: site+      ]++-- | /See:/ 'newListDestinationsResponse' smart constructor.+data ListDestinationsResponse = ListDestinationsResponse'+  { destinations :: Prelude.Maybe [Destination],+    nextToken :: Prelude.Maybe Prelude.Text,+    -- | The response's http status code.+    httpStatus :: Prelude.Int+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListDestinationsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'destinations', 'listDestinationsResponse_destinations' - Undocumented member.+--+-- 'nextToken', 'listDestinationsResponse_nextToken' - Undocumented member.+--+-- 'httpStatus', 'listDestinationsResponse_httpStatus' - The response's http status code.+newListDestinationsResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  ListDestinationsResponse+newListDestinationsResponse pHttpStatus_ =+  ListDestinationsResponse'+    { destinations =+        Prelude.Nothing,+      nextToken = Prelude.Nothing,+      httpStatus = pHttpStatus_+    }++-- | Undocumented member.+listDestinationsResponse_destinations :: Lens.Lens' ListDestinationsResponse (Prelude.Maybe [Destination])+listDestinationsResponse_destinations = Lens.lens (\ListDestinationsResponse' {destinations} -> destinations) (\s@ListDestinationsResponse' {} a -> s {destinations = a} :: ListDestinationsResponse) Prelude.. Lens.mapping Lens.coerced++-- | Undocumented member.+listDestinationsResponse_nextToken :: Lens.Lens' ListDestinationsResponse (Prelude.Maybe Prelude.Text)+listDestinationsResponse_nextToken = Lens.lens (\ListDestinationsResponse' {nextToken} -> nextToken) (\s@ListDestinationsResponse' {} a -> s {nextToken = a} :: ListDestinationsResponse)++-- | The response's http status code.+listDestinationsResponse_httpStatus :: Lens.Lens' ListDestinationsResponse Prelude.Int+listDestinationsResponse_httpStatus = Lens.lens (\ListDestinationsResponse' {httpStatus} -> httpStatus) (\s@ListDestinationsResponse' {} a -> s {httpStatus = a} :: ListDestinationsResponse)++instance Prelude.NFData ListDestinationsResponse where+  rnf ListDestinationsResponse' {..} =+    Prelude.rnf destinations+      `Prelude.seq` Prelude.rnf nextToken+      `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IoTRoboRunner/ListSites.hs view
@@ -0,0 +1,204 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.IoTRoboRunner.ListSites+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Grants permission to list sites+--+-- This operation returns paginated results.+module Amazonka.IoTRoboRunner.ListSites+  ( -- * Creating a Request+    ListSites (..),+    newListSites,++    -- * Request Lenses+    listSites_maxResults,+    listSites_nextToken,++    -- * Destructuring the Response+    ListSitesResponse (..),+    newListSitesResponse,++    -- * Response Lenses+    listSitesResponse_nextToken,+    listSitesResponse_sites,+    listSitesResponse_httpStatus,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IoTRoboRunner.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListSites' smart constructor.+data ListSites = ListSites'+  { maxResults :: Prelude.Maybe Prelude.Natural,+    nextToken :: Prelude.Maybe Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListSites' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'maxResults', 'listSites_maxResults' - Undocumented member.+--+-- 'nextToken', 'listSites_nextToken' - Undocumented member.+newListSites ::+  ListSites+newListSites =+  ListSites'+    { maxResults = Prelude.Nothing,+      nextToken = Prelude.Nothing+    }++-- | Undocumented member.+listSites_maxResults :: Lens.Lens' ListSites (Prelude.Maybe Prelude.Natural)+listSites_maxResults = Lens.lens (\ListSites' {maxResults} -> maxResults) (\s@ListSites' {} a -> s {maxResults = a} :: ListSites)++-- | Undocumented member.+listSites_nextToken :: Lens.Lens' ListSites (Prelude.Maybe Prelude.Text)+listSites_nextToken = Lens.lens (\ListSites' {nextToken} -> nextToken) (\s@ListSites' {} a -> s {nextToken = a} :: ListSites)++instance Core.AWSPager ListSites where+  page rq rs+    | Core.stop+        ( rs+            Lens.^? listSitesResponse_nextToken+            Prelude.. Lens._Just+        ) =+        Prelude.Nothing+    | Core.stop+        ( rs+            Lens.^? listSitesResponse_sites+            Prelude.. Lens._Just+        ) =+        Prelude.Nothing+    | Prelude.otherwise =+        Prelude.Just+          Prelude.$ rq+          Prelude.& listSites_nextToken+          Lens..~ rs+          Lens.^? listSitesResponse_nextToken+          Prelude.. Lens._Just++instance Core.AWSRequest ListSites where+  type AWSResponse ListSites = ListSitesResponse+  request overrides =+    Request.get (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          ListSitesResponse'+            Prelude.<$> (x Data..?> "nextToken")+            Prelude.<*> (x Data..?> "sites" Core..!@ Prelude.mempty)+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+      )++instance Prelude.Hashable ListSites where+  hashWithSalt _salt ListSites' {..} =+    _salt+      `Prelude.hashWithSalt` maxResults+      `Prelude.hashWithSalt` nextToken++instance Prelude.NFData ListSites where+  rnf ListSites' {..} =+    Prelude.rnf maxResults+      `Prelude.seq` Prelude.rnf nextToken++instance Data.ToHeaders ListSites where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToPath ListSites where+  toPath = Prelude.const "/listSites"++instance Data.ToQuery ListSites where+  toQuery ListSites' {..} =+    Prelude.mconcat+      [ "maxResults" Data.=: maxResults,+        "nextToken" Data.=: nextToken+      ]++-- | /See:/ 'newListSitesResponse' smart constructor.+data ListSitesResponse = ListSitesResponse'+  { nextToken :: Prelude.Maybe Prelude.Text,+    sites :: Prelude.Maybe [Site],+    -- | The response's http status code.+    httpStatus :: Prelude.Int+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListSitesResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'nextToken', 'listSitesResponse_nextToken' - Undocumented member.+--+-- 'sites', 'listSitesResponse_sites' - Undocumented member.+--+-- 'httpStatus', 'listSitesResponse_httpStatus' - The response's http status code.+newListSitesResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  ListSitesResponse+newListSitesResponse pHttpStatus_ =+  ListSitesResponse'+    { nextToken = Prelude.Nothing,+      sites = Prelude.Nothing,+      httpStatus = pHttpStatus_+    }++-- | Undocumented member.+listSitesResponse_nextToken :: Lens.Lens' ListSitesResponse (Prelude.Maybe Prelude.Text)+listSitesResponse_nextToken = Lens.lens (\ListSitesResponse' {nextToken} -> nextToken) (\s@ListSitesResponse' {} a -> s {nextToken = a} :: ListSitesResponse)++-- | Undocumented member.+listSitesResponse_sites :: Lens.Lens' ListSitesResponse (Prelude.Maybe [Site])+listSitesResponse_sites = Lens.lens (\ListSitesResponse' {sites} -> sites) (\s@ListSitesResponse' {} a -> s {sites = a} :: ListSitesResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listSitesResponse_httpStatus :: Lens.Lens' ListSitesResponse Prelude.Int+listSitesResponse_httpStatus = Lens.lens (\ListSitesResponse' {httpStatus} -> httpStatus) (\s@ListSitesResponse' {} a -> s {httpStatus = a} :: ListSitesResponse)++instance Prelude.NFData ListSitesResponse where+  rnf ListSitesResponse' {..} =+    Prelude.rnf nextToken+      `Prelude.seq` Prelude.rnf sites+      `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IoTRoboRunner/ListWorkerFleets.hs view
@@ -0,0 +1,221 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.IoTRoboRunner.ListWorkerFleets+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Grants permission to list worker fleets+--+-- This operation returns paginated results.+module Amazonka.IoTRoboRunner.ListWorkerFleets+  ( -- * Creating a Request+    ListWorkerFleets (..),+    newListWorkerFleets,++    -- * Request Lenses+    listWorkerFleets_maxResults,+    listWorkerFleets_nextToken,+    listWorkerFleets_site,++    -- * Destructuring the Response+    ListWorkerFleetsResponse (..),+    newListWorkerFleetsResponse,++    -- * Response Lenses+    listWorkerFleetsResponse_nextToken,+    listWorkerFleetsResponse_workerFleets,+    listWorkerFleetsResponse_httpStatus,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IoTRoboRunner.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListWorkerFleets' smart constructor.+data ListWorkerFleets = ListWorkerFleets'+  { maxResults :: Prelude.Maybe Prelude.Natural,+    nextToken :: Prelude.Maybe Prelude.Text,+    site :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListWorkerFleets' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'maxResults', 'listWorkerFleets_maxResults' - Undocumented member.+--+-- 'nextToken', 'listWorkerFleets_nextToken' - Undocumented member.+--+-- 'site', 'listWorkerFleets_site' - Undocumented member.+newListWorkerFleets ::+  -- | 'site'+  Prelude.Text ->+  ListWorkerFleets+newListWorkerFleets pSite_ =+  ListWorkerFleets'+    { maxResults = Prelude.Nothing,+      nextToken = Prelude.Nothing,+      site = pSite_+    }++-- | Undocumented member.+listWorkerFleets_maxResults :: Lens.Lens' ListWorkerFleets (Prelude.Maybe Prelude.Natural)+listWorkerFleets_maxResults = Lens.lens (\ListWorkerFleets' {maxResults} -> maxResults) (\s@ListWorkerFleets' {} a -> s {maxResults = a} :: ListWorkerFleets)++-- | Undocumented member.+listWorkerFleets_nextToken :: Lens.Lens' ListWorkerFleets (Prelude.Maybe Prelude.Text)+listWorkerFleets_nextToken = Lens.lens (\ListWorkerFleets' {nextToken} -> nextToken) (\s@ListWorkerFleets' {} a -> s {nextToken = a} :: ListWorkerFleets)++-- | Undocumented member.+listWorkerFleets_site :: Lens.Lens' ListWorkerFleets Prelude.Text+listWorkerFleets_site = Lens.lens (\ListWorkerFleets' {site} -> site) (\s@ListWorkerFleets' {} a -> s {site = a} :: ListWorkerFleets)++instance Core.AWSPager ListWorkerFleets where+  page rq rs+    | Core.stop+        ( rs+            Lens.^? listWorkerFleetsResponse_nextToken+            Prelude.. Lens._Just+        ) =+        Prelude.Nothing+    | Core.stop+        ( rs+            Lens.^? listWorkerFleetsResponse_workerFleets+            Prelude.. Lens._Just+        ) =+        Prelude.Nothing+    | Prelude.otherwise =+        Prelude.Just+          Prelude.$ rq+          Prelude.& listWorkerFleets_nextToken+          Lens..~ rs+          Lens.^? listWorkerFleetsResponse_nextToken+          Prelude.. Lens._Just++instance Core.AWSRequest ListWorkerFleets where+  type+    AWSResponse ListWorkerFleets =+      ListWorkerFleetsResponse+  request overrides =+    Request.get (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          ListWorkerFleetsResponse'+            Prelude.<$> (x Data..?> "nextToken")+            Prelude.<*> (x Data..?> "workerFleets" Core..!@ Prelude.mempty)+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+      )++instance Prelude.Hashable ListWorkerFleets where+  hashWithSalt _salt ListWorkerFleets' {..} =+    _salt+      `Prelude.hashWithSalt` maxResults+      `Prelude.hashWithSalt` nextToken+      `Prelude.hashWithSalt` site++instance Prelude.NFData ListWorkerFleets where+  rnf ListWorkerFleets' {..} =+    Prelude.rnf maxResults+      `Prelude.seq` Prelude.rnf nextToken+      `Prelude.seq` Prelude.rnf site++instance Data.ToHeaders ListWorkerFleets where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToPath ListWorkerFleets where+  toPath = Prelude.const "/listWorkerFleets"++instance Data.ToQuery ListWorkerFleets where+  toQuery ListWorkerFleets' {..} =+    Prelude.mconcat+      [ "maxResults" Data.=: maxResults,+        "nextToken" Data.=: nextToken,+        "site" Data.=: site+      ]++-- | /See:/ 'newListWorkerFleetsResponse' smart constructor.+data ListWorkerFleetsResponse = ListWorkerFleetsResponse'+  { nextToken :: Prelude.Maybe Prelude.Text,+    workerFleets :: Prelude.Maybe [WorkerFleet],+    -- | The response's http status code.+    httpStatus :: Prelude.Int+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListWorkerFleetsResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'nextToken', 'listWorkerFleetsResponse_nextToken' - Undocumented member.+--+-- 'workerFleets', 'listWorkerFleetsResponse_workerFleets' - Undocumented member.+--+-- 'httpStatus', 'listWorkerFleetsResponse_httpStatus' - The response's http status code.+newListWorkerFleetsResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  ListWorkerFleetsResponse+newListWorkerFleetsResponse pHttpStatus_ =+  ListWorkerFleetsResponse'+    { nextToken =+        Prelude.Nothing,+      workerFleets = Prelude.Nothing,+      httpStatus = pHttpStatus_+    }++-- | Undocumented member.+listWorkerFleetsResponse_nextToken :: Lens.Lens' ListWorkerFleetsResponse (Prelude.Maybe Prelude.Text)+listWorkerFleetsResponse_nextToken = Lens.lens (\ListWorkerFleetsResponse' {nextToken} -> nextToken) (\s@ListWorkerFleetsResponse' {} a -> s {nextToken = a} :: ListWorkerFleetsResponse)++-- | Undocumented member.+listWorkerFleetsResponse_workerFleets :: Lens.Lens' ListWorkerFleetsResponse (Prelude.Maybe [WorkerFleet])+listWorkerFleetsResponse_workerFleets = Lens.lens (\ListWorkerFleetsResponse' {workerFleets} -> workerFleets) (\s@ListWorkerFleetsResponse' {} a -> s {workerFleets = a} :: ListWorkerFleetsResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listWorkerFleetsResponse_httpStatus :: Lens.Lens' ListWorkerFleetsResponse Prelude.Int+listWorkerFleetsResponse_httpStatus = Lens.lens (\ListWorkerFleetsResponse' {httpStatus} -> httpStatus) (\s@ListWorkerFleetsResponse' {} a -> s {httpStatus = a} :: ListWorkerFleetsResponse)++instance Prelude.NFData ListWorkerFleetsResponse where+  rnf ListWorkerFleetsResponse' {..} =+    Prelude.rnf nextToken+      `Prelude.seq` Prelude.rnf workerFleets+      `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IoTRoboRunner/ListWorkers.hs view
@@ -0,0 +1,230 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.IoTRoboRunner.ListWorkers+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Grants permission to list workers+--+-- This operation returns paginated results.+module Amazonka.IoTRoboRunner.ListWorkers+  ( -- * Creating a Request+    ListWorkers (..),+    newListWorkers,++    -- * Request Lenses+    listWorkers_fleet,+    listWorkers_maxResults,+    listWorkers_nextToken,+    listWorkers_site,++    -- * Destructuring the Response+    ListWorkersResponse (..),+    newListWorkersResponse,++    -- * Response Lenses+    listWorkersResponse_nextToken,+    listWorkersResponse_workers,+    listWorkersResponse_httpStatus,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IoTRoboRunner.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newListWorkers' smart constructor.+data ListWorkers = ListWorkers'+  { fleet :: Prelude.Maybe Prelude.Text,+    maxResults :: Prelude.Maybe Prelude.Natural,+    nextToken :: Prelude.Maybe Prelude.Text,+    site :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListWorkers' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'fleet', 'listWorkers_fleet' - Undocumented member.+--+-- 'maxResults', 'listWorkers_maxResults' - Undocumented member.+--+-- 'nextToken', 'listWorkers_nextToken' - Undocumented member.+--+-- 'site', 'listWorkers_site' - Undocumented member.+newListWorkers ::+  -- | 'site'+  Prelude.Text ->+  ListWorkers+newListWorkers pSite_ =+  ListWorkers'+    { fleet = Prelude.Nothing,+      maxResults = Prelude.Nothing,+      nextToken = Prelude.Nothing,+      site = pSite_+    }++-- | Undocumented member.+listWorkers_fleet :: Lens.Lens' ListWorkers (Prelude.Maybe Prelude.Text)+listWorkers_fleet = Lens.lens (\ListWorkers' {fleet} -> fleet) (\s@ListWorkers' {} a -> s {fleet = a} :: ListWorkers)++-- | Undocumented member.+listWorkers_maxResults :: Lens.Lens' ListWorkers (Prelude.Maybe Prelude.Natural)+listWorkers_maxResults = Lens.lens (\ListWorkers' {maxResults} -> maxResults) (\s@ListWorkers' {} a -> s {maxResults = a} :: ListWorkers)++-- | Undocumented member.+listWorkers_nextToken :: Lens.Lens' ListWorkers (Prelude.Maybe Prelude.Text)+listWorkers_nextToken = Lens.lens (\ListWorkers' {nextToken} -> nextToken) (\s@ListWorkers' {} a -> s {nextToken = a} :: ListWorkers)++-- | Undocumented member.+listWorkers_site :: Lens.Lens' ListWorkers Prelude.Text+listWorkers_site = Lens.lens (\ListWorkers' {site} -> site) (\s@ListWorkers' {} a -> s {site = a} :: ListWorkers)++instance Core.AWSPager ListWorkers where+  page rq rs+    | Core.stop+        ( rs+            Lens.^? listWorkersResponse_nextToken+            Prelude.. Lens._Just+        ) =+        Prelude.Nothing+    | Core.stop+        ( rs+            Lens.^? listWorkersResponse_workers+            Prelude.. Lens._Just+        ) =+        Prelude.Nothing+    | Prelude.otherwise =+        Prelude.Just+          Prelude.$ rq+          Prelude.& listWorkers_nextToken+          Lens..~ rs+          Lens.^? listWorkersResponse_nextToken+          Prelude.. Lens._Just++instance Core.AWSRequest ListWorkers where+  type AWSResponse ListWorkers = ListWorkersResponse+  request overrides =+    Request.get (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          ListWorkersResponse'+            Prelude.<$> (x Data..?> "nextToken")+            Prelude.<*> (x Data..?> "workers" Core..!@ Prelude.mempty)+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+      )++instance Prelude.Hashable ListWorkers where+  hashWithSalt _salt ListWorkers' {..} =+    _salt+      `Prelude.hashWithSalt` fleet+      `Prelude.hashWithSalt` maxResults+      `Prelude.hashWithSalt` nextToken+      `Prelude.hashWithSalt` site++instance Prelude.NFData ListWorkers where+  rnf ListWorkers' {..} =+    Prelude.rnf fleet+      `Prelude.seq` Prelude.rnf maxResults+      `Prelude.seq` Prelude.rnf nextToken+      `Prelude.seq` Prelude.rnf site++instance Data.ToHeaders ListWorkers where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToPath ListWorkers where+  toPath = Prelude.const "/listWorkers"++instance Data.ToQuery ListWorkers where+  toQuery ListWorkers' {..} =+    Prelude.mconcat+      [ "fleet" Data.=: fleet,+        "maxResults" Data.=: maxResults,+        "nextToken" Data.=: nextToken,+        "site" Data.=: site+      ]++-- | /See:/ 'newListWorkersResponse' smart constructor.+data ListWorkersResponse = ListWorkersResponse'+  { nextToken :: Prelude.Maybe Prelude.Text,+    workers :: Prelude.Maybe [Worker],+    -- | The response's http status code.+    httpStatus :: Prelude.Int+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'ListWorkersResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'nextToken', 'listWorkersResponse_nextToken' - Undocumented member.+--+-- 'workers', 'listWorkersResponse_workers' - Undocumented member.+--+-- 'httpStatus', 'listWorkersResponse_httpStatus' - The response's http status code.+newListWorkersResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  ListWorkersResponse+newListWorkersResponse pHttpStatus_ =+  ListWorkersResponse'+    { nextToken = Prelude.Nothing,+      workers = Prelude.Nothing,+      httpStatus = pHttpStatus_+    }++-- | Undocumented member.+listWorkersResponse_nextToken :: Lens.Lens' ListWorkersResponse (Prelude.Maybe Prelude.Text)+listWorkersResponse_nextToken = Lens.lens (\ListWorkersResponse' {nextToken} -> nextToken) (\s@ListWorkersResponse' {} a -> s {nextToken = a} :: ListWorkersResponse)++-- | Undocumented member.+listWorkersResponse_workers :: Lens.Lens' ListWorkersResponse (Prelude.Maybe [Worker])+listWorkersResponse_workers = Lens.lens (\ListWorkersResponse' {workers} -> workers) (\s@ListWorkersResponse' {} a -> s {workers = a} :: ListWorkersResponse) Prelude.. Lens.mapping Lens.coerced++-- | The response's http status code.+listWorkersResponse_httpStatus :: Lens.Lens' ListWorkersResponse Prelude.Int+listWorkersResponse_httpStatus = Lens.lens (\ListWorkersResponse' {httpStatus} -> httpStatus) (\s@ListWorkersResponse' {} a -> s {httpStatus = a} :: ListWorkersResponse)++instance Prelude.NFData ListWorkersResponse where+  rnf ListWorkersResponse' {..} =+    Prelude.rnf nextToken+      `Prelude.seq` Prelude.rnf workers+      `Prelude.seq` Prelude.rnf httpStatus
+ gen/Amazonka/IoTRoboRunner/Types.hs view
@@ -0,0 +1,245 @@+{-# LANGUAGE DisambiguateRecordFields #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.IoTRoboRunner.Types+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IoTRoboRunner.Types+  ( -- * Service Configuration+    defaultService,++    -- * Errors+    _AccessDeniedException,+    _ConflictException,+    _InternalServerException,+    _ResourceNotFoundException,+    _ServiceQuotaExceededException,+    _ThrottlingException,+    _ValidationException,++    -- * DestinationState+    DestinationState (..),++    -- * CartesianCoordinates+    CartesianCoordinates (..),+    newCartesianCoordinates,+    cartesianCoordinates_z,+    cartesianCoordinates_x,+    cartesianCoordinates_y,++    -- * Destination+    Destination (..),+    newDestination,+    destination_additionalFixedProperties,+    destination_arn,+    destination_id,+    destination_name,+    destination_site,+    destination_createdAt,+    destination_updatedAt,+    destination_state,++    -- * Orientation+    Orientation (..),+    newOrientation,+    orientation_degrees,++    -- * PositionCoordinates+    PositionCoordinates (..),+    newPositionCoordinates,+    positionCoordinates_cartesianCoordinates,++    -- * Site+    Site (..),+    newSite,+    site_arn,+    site_name,+    site_countryCode,+    site_createdAt,++    -- * VendorProperties+    VendorProperties (..),+    newVendorProperties,+    vendorProperties_vendorAdditionalFixedProperties,+    vendorProperties_vendorAdditionalTransientProperties,+    vendorProperties_vendorWorkerIpAddress,+    vendorProperties_vendorWorkerId,++    -- * Worker+    Worker (..),+    newWorker,+    worker_additionalFixedProperties,+    worker_additionalTransientProperties,+    worker_orientation,+    worker_position,+    worker_vendorProperties,+    worker_arn,+    worker_id,+    worker_fleet,+    worker_createdAt,+    worker_updatedAt,+    worker_name,+    worker_site,++    -- * WorkerFleet+    WorkerFleet (..),+    newWorkerFleet,+    workerFleet_additionalFixedProperties,+    workerFleet_arn,+    workerFleet_id,+    workerFleet_name,+    workerFleet_site,+    workerFleet_createdAt,+    workerFleet_updatedAt,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import Amazonka.IoTRoboRunner.Types.CartesianCoordinates+import Amazonka.IoTRoboRunner.Types.Destination+import Amazonka.IoTRoboRunner.Types.DestinationState+import Amazonka.IoTRoboRunner.Types.Orientation+import Amazonka.IoTRoboRunner.Types.PositionCoordinates+import Amazonka.IoTRoboRunner.Types.Site+import Amazonka.IoTRoboRunner.Types.VendorProperties+import Amazonka.IoTRoboRunner.Types.Worker+import Amazonka.IoTRoboRunner.Types.WorkerFleet+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Sign.V4 as Sign++-- | API version @2018-05-10@ of the Amazon IoT RoboRunner SDK configuration.+defaultService :: Core.Service+defaultService =+  Core.Service+    { Core.abbrev = "IoTRoboRunner",+      Core.signer = Sign.v4,+      Core.endpointPrefix = "iotroborunner",+      Core.signingName = "iotroborunner",+      Core.version = "2018-05-10",+      Core.s3AddressingStyle = Core.S3AddressingStyleAuto,+      Core.endpoint = Core.defaultEndpoint defaultService,+      Core.timeout = Prelude.Just 70,+      Core.check = Core.statusSuccess,+      Core.error = Core.parseJSONError "IoTRoboRunner",+      Core.retry = retry+    }+  where+    retry =+      Core.Exponential+        { Core.base = 5.0e-2,+          Core.growth = 2,+          Core.attempts = 5,+          Core.check = check+        }+    check e+      | Lens.has (Core.hasStatus 502) e =+          Prelude.Just "bad_gateway"+      | Lens.has (Core.hasStatus 504) e =+          Prelude.Just "gateway_timeout"+      | Lens.has (Core.hasStatus 500) e =+          Prelude.Just "general_server_error"+      | Lens.has (Core.hasStatus 509) e =+          Prelude.Just "limit_exceeded"+      | Lens.has+          ( Core.hasCode "RequestThrottledException"+              Prelude.. Core.hasStatus 400+          )+          e =+          Prelude.Just "request_throttled_exception"+      | Lens.has (Core.hasStatus 503) e =+          Prelude.Just "service_unavailable"+      | Lens.has+          ( Core.hasCode "ThrottledException"+              Prelude.. Core.hasStatus 400+          )+          e =+          Prelude.Just "throttled_exception"+      | Lens.has+          ( Core.hasCode "Throttling"+              Prelude.. Core.hasStatus 400+          )+          e =+          Prelude.Just "throttling"+      | Lens.has+          ( Core.hasCode "ThrottlingException"+              Prelude.. Core.hasStatus 400+          )+          e =+          Prelude.Just "throttling_exception"+      | Lens.has+          ( Core.hasCode+              "ProvisionedThroughputExceededException"+              Prelude.. Core.hasStatus 400+          )+          e =+          Prelude.Just "throughput_exceeded"+      | Lens.has (Core.hasStatus 429) e =+          Prelude.Just "too_many_requests"+      | Prelude.otherwise = Prelude.Nothing++-- | User does not have sufficient access to perform this action.+_AccessDeniedException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_AccessDeniedException =+  Core._MatchServiceError+    defaultService+    "AccessDeniedException"+    Prelude.. Core.hasStatus 403++-- | Exception thrown if a resource in a create request already exists.+_ConflictException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ConflictException =+  Core._MatchServiceError+    defaultService+    "ConflictException"+    Prelude.. Core.hasStatus 409++-- | Exception thrown if something goes wrong within the service.+_InternalServerException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_InternalServerException =+  Core._MatchServiceError+    defaultService+    "InternalServerException"+    Prelude.. Core.hasStatus 500++-- | Exception thrown if a resource referenced in the request doesn\'t exist.+_ResourceNotFoundException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ResourceNotFoundException =+  Core._MatchServiceError+    defaultService+    "ResourceNotFoundException"+    Prelude.. Core.hasStatus 404++-- | Exception thrown if the user\'s AWS account has reached a service limit+-- and the operation cannot proceed.+_ServiceQuotaExceededException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ServiceQuotaExceededException =+  Core._MatchServiceError+    defaultService+    "ServiceQuotaExceededException"+    Prelude.. Core.hasStatus 402++-- | Exception thrown if the api has been called too quickly be the client.+_ThrottlingException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ThrottlingException =+  Core._MatchServiceError+    defaultService+    "ThrottlingException"+    Prelude.. Core.hasStatus 429++-- | Exception thrown if an invalid parameter is provided to an API.+_ValidationException :: (Core.AsError a) => Lens.Fold a Core.ServiceError+_ValidationException =+  Core._MatchServiceError+    defaultService+    "ValidationException"+    Prelude.. Core.hasStatus 400
+ gen/Amazonka/IoTRoboRunner/Types/CartesianCoordinates.hs view
@@ -0,0 +1,110 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.IoTRoboRunner.Types.CartesianCoordinates+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IoTRoboRunner.Types.CartesianCoordinates where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Cartesian coordinates in 3D space relative to the RoboRunner origin.+--+-- /See:/ 'newCartesianCoordinates' smart constructor.+data CartesianCoordinates = CartesianCoordinates'+  { -- | Z coordinate.+    z :: Prelude.Maybe Prelude.Double,+    -- | X coordinate.+    x :: Prelude.Double,+    -- | Y coordinate.+    y :: Prelude.Double+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'CartesianCoordinates' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'z', 'cartesianCoordinates_z' - Z coordinate.+--+-- 'x', 'cartesianCoordinates_x' - X coordinate.+--+-- 'y', 'cartesianCoordinates_y' - Y coordinate.+newCartesianCoordinates ::+  -- | 'x'+  Prelude.Double ->+  -- | 'y'+  Prelude.Double ->+  CartesianCoordinates+newCartesianCoordinates pX_ pY_ =+  CartesianCoordinates'+    { z = Prelude.Nothing,+      x = pX_,+      y = pY_+    }++-- | Z coordinate.+cartesianCoordinates_z :: Lens.Lens' CartesianCoordinates (Prelude.Maybe Prelude.Double)+cartesianCoordinates_z = Lens.lens (\CartesianCoordinates' {z} -> z) (\s@CartesianCoordinates' {} a -> s {z = a} :: CartesianCoordinates)++-- | X coordinate.+cartesianCoordinates_x :: Lens.Lens' CartesianCoordinates Prelude.Double+cartesianCoordinates_x = Lens.lens (\CartesianCoordinates' {x} -> x) (\s@CartesianCoordinates' {} a -> s {x = a} :: CartesianCoordinates)++-- | Y coordinate.+cartesianCoordinates_y :: Lens.Lens' CartesianCoordinates Prelude.Double+cartesianCoordinates_y = Lens.lens (\CartesianCoordinates' {y} -> y) (\s@CartesianCoordinates' {} a -> s {y = a} :: CartesianCoordinates)++instance Data.FromJSON CartesianCoordinates where+  parseJSON =+    Data.withObject+      "CartesianCoordinates"+      ( \x ->+          CartesianCoordinates'+            Prelude.<$> (x Data..:? "z")+            Prelude.<*> (x Data..: "x")+            Prelude.<*> (x Data..: "y")+      )++instance Prelude.Hashable CartesianCoordinates where+  hashWithSalt _salt CartesianCoordinates' {..} =+    _salt+      `Prelude.hashWithSalt` z+      `Prelude.hashWithSalt` x+      `Prelude.hashWithSalt` y++instance Prelude.NFData CartesianCoordinates where+  rnf CartesianCoordinates' {..} =+    Prelude.rnf z+      `Prelude.seq` Prelude.rnf x+      `Prelude.seq` Prelude.rnf y++instance Data.ToJSON CartesianCoordinates where+  toJSON CartesianCoordinates' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("z" Data..=) Prelude.<$> z,+            Prelude.Just ("x" Data..= x),+            Prelude.Just ("y" Data..= y)+          ]+      )
+ gen/Amazonka/IoTRoboRunner/Types/Destination.hs view
@@ -0,0 +1,171 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.IoTRoboRunner.Types.Destination+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IoTRoboRunner.Types.Destination where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IoTRoboRunner.Types.DestinationState+import qualified Amazonka.Prelude as Prelude++-- | Area within a facility where work can be performed.+--+-- /See:/ 'newDestination' smart constructor.+data Destination = Destination'+  { additionalFixedProperties :: Prelude.Maybe Prelude.Text,+    arn :: Prelude.Text,+    id :: Prelude.Text,+    name :: Prelude.Text,+    site :: Prelude.Text,+    createdAt :: Data.POSIX,+    updatedAt :: Data.POSIX,+    state :: DestinationState+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Destination' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'additionalFixedProperties', 'destination_additionalFixedProperties' - Undocumented member.+--+-- 'arn', 'destination_arn' - Undocumented member.+--+-- 'id', 'destination_id' - Undocumented member.+--+-- 'name', 'destination_name' - Undocumented member.+--+-- 'site', 'destination_site' - Undocumented member.+--+-- 'createdAt', 'destination_createdAt' - Undocumented member.+--+-- 'updatedAt', 'destination_updatedAt' - Undocumented member.+--+-- 'state', 'destination_state' - Undocumented member.+newDestination ::+  -- | 'arn'+  Prelude.Text ->+  -- | 'id'+  Prelude.Text ->+  -- | 'name'+  Prelude.Text ->+  -- | 'site'+  Prelude.Text ->+  -- | 'createdAt'+  Prelude.UTCTime ->+  -- | 'updatedAt'+  Prelude.UTCTime ->+  -- | 'state'+  DestinationState ->+  Destination+newDestination+  pArn_+  pId_+  pName_+  pSite_+  pCreatedAt_+  pUpdatedAt_+  pState_ =+    Destination'+      { additionalFixedProperties =+          Prelude.Nothing,+        arn = pArn_,+        id = pId_,+        name = pName_,+        site = pSite_,+        createdAt = Data._Time Lens.# pCreatedAt_,+        updatedAt = Data._Time Lens.# pUpdatedAt_,+        state = pState_+      }++-- | Undocumented member.+destination_additionalFixedProperties :: Lens.Lens' Destination (Prelude.Maybe Prelude.Text)+destination_additionalFixedProperties = Lens.lens (\Destination' {additionalFixedProperties} -> additionalFixedProperties) (\s@Destination' {} a -> s {additionalFixedProperties = a} :: Destination)++-- | Undocumented member.+destination_arn :: Lens.Lens' Destination Prelude.Text+destination_arn = Lens.lens (\Destination' {arn} -> arn) (\s@Destination' {} a -> s {arn = a} :: Destination)++-- | Undocumented member.+destination_id :: Lens.Lens' Destination Prelude.Text+destination_id = Lens.lens (\Destination' {id} -> id) (\s@Destination' {} a -> s {id = a} :: Destination)++-- | Undocumented member.+destination_name :: Lens.Lens' Destination Prelude.Text+destination_name = Lens.lens (\Destination' {name} -> name) (\s@Destination' {} a -> s {name = a} :: Destination)++-- | Undocumented member.+destination_site :: Lens.Lens' Destination Prelude.Text+destination_site = Lens.lens (\Destination' {site} -> site) (\s@Destination' {} a -> s {site = a} :: Destination)++-- | Undocumented member.+destination_createdAt :: Lens.Lens' Destination Prelude.UTCTime+destination_createdAt = Lens.lens (\Destination' {createdAt} -> createdAt) (\s@Destination' {} a -> s {createdAt = a} :: Destination) Prelude.. Data._Time++-- | Undocumented member.+destination_updatedAt :: Lens.Lens' Destination Prelude.UTCTime+destination_updatedAt = Lens.lens (\Destination' {updatedAt} -> updatedAt) (\s@Destination' {} a -> s {updatedAt = a} :: Destination) Prelude.. Data._Time++-- | Undocumented member.+destination_state :: Lens.Lens' Destination DestinationState+destination_state = Lens.lens (\Destination' {state} -> state) (\s@Destination' {} a -> s {state = a} :: Destination)++instance Data.FromJSON Destination where+  parseJSON =+    Data.withObject+      "Destination"+      ( \x ->+          Destination'+            Prelude.<$> (x Data..:? "additionalFixedProperties")+            Prelude.<*> (x Data..: "arn")+            Prelude.<*> (x Data..: "id")+            Prelude.<*> (x Data..: "name")+            Prelude.<*> (x Data..: "site")+            Prelude.<*> (x Data..: "createdAt")+            Prelude.<*> (x Data..: "updatedAt")+            Prelude.<*> (x Data..: "state")+      )++instance Prelude.Hashable Destination where+  hashWithSalt _salt Destination' {..} =+    _salt+      `Prelude.hashWithSalt` additionalFixedProperties+      `Prelude.hashWithSalt` arn+      `Prelude.hashWithSalt` id+      `Prelude.hashWithSalt` name+      `Prelude.hashWithSalt` site+      `Prelude.hashWithSalt` createdAt+      `Prelude.hashWithSalt` updatedAt+      `Prelude.hashWithSalt` state++instance Prelude.NFData Destination where+  rnf Destination' {..} =+    Prelude.rnf additionalFixedProperties+      `Prelude.seq` Prelude.rnf arn+      `Prelude.seq` Prelude.rnf id+      `Prelude.seq` Prelude.rnf name+      `Prelude.seq` Prelude.rnf site+      `Prelude.seq` Prelude.rnf createdAt+      `Prelude.seq` Prelude.rnf updatedAt+      `Prelude.seq` Prelude.rnf state
+ gen/Amazonka/IoTRoboRunner/Types/DestinationState.hs view
@@ -0,0 +1,77 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DerivingStrategies #-}+{-# LANGUAGE GeneralizedNewtypeDeriving #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE PatternSynonyms #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.IoTRoboRunner.Types.DestinationState+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IoTRoboRunner.Types.DestinationState+  ( DestinationState+      ( ..,+        DestinationState_DECOMMISSIONED,+        DestinationState_DISABLED,+        DestinationState_ENABLED+      ),+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | State of the destination.+newtype DestinationState = DestinationState'+  { fromDestinationState ::+      Data.Text+  }+  deriving stock+    ( Prelude.Show,+      Prelude.Read,+      Prelude.Eq,+      Prelude.Ord,+      Prelude.Generic+    )+  deriving newtype+    ( Prelude.Hashable,+      Prelude.NFData,+      Data.FromText,+      Data.ToText,+      Data.ToByteString,+      Data.ToLog,+      Data.ToHeader,+      Data.ToQuery,+      Data.FromJSON,+      Data.FromJSONKey,+      Data.ToJSON,+      Data.ToJSONKey,+      Data.FromXML,+      Data.ToXML+    )++pattern DestinationState_DECOMMISSIONED :: DestinationState+pattern DestinationState_DECOMMISSIONED = DestinationState' "DECOMMISSIONED"++pattern DestinationState_DISABLED :: DestinationState+pattern DestinationState_DISABLED = DestinationState' "DISABLED"++pattern DestinationState_ENABLED :: DestinationState+pattern DestinationState_ENABLED = DestinationState' "ENABLED"++{-# COMPLETE+  DestinationState_DECOMMISSIONED,+  DestinationState_DISABLED,+  DestinationState_ENABLED,+  DestinationState'+  #-}
+ gen/Amazonka/IoTRoboRunner/Types/Orientation.hs view
@@ -0,0 +1,74 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.IoTRoboRunner.Types.Orientation+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IoTRoboRunner.Types.Orientation where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Worker orientation measured in units clockwise from north.+--+-- /See:/ 'newOrientation' smart constructor.+data Orientation = Orientation'+  { -- | Degrees, limited on [0, 360)+    degrees :: Prelude.Maybe Prelude.Double+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Orientation' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'degrees', 'orientation_degrees' - Degrees, limited on [0, 360)+newOrientation ::+  Orientation+newOrientation =+  Orientation' {degrees = Prelude.Nothing}++-- | Degrees, limited on [0, 360)+orientation_degrees :: Lens.Lens' Orientation (Prelude.Maybe Prelude.Double)+orientation_degrees = Lens.lens (\Orientation' {degrees} -> degrees) (\s@Orientation' {} a -> s {degrees = a} :: Orientation)++instance Data.FromJSON Orientation where+  parseJSON =+    Data.withObject+      "Orientation"+      ( \x ->+          Orientation' Prelude.<$> (x Data..:? "degrees")+      )++instance Prelude.Hashable Orientation where+  hashWithSalt _salt Orientation' {..} =+    _salt `Prelude.hashWithSalt` degrees++instance Prelude.NFData Orientation where+  rnf Orientation' {..} = Prelude.rnf degrees++instance Data.ToJSON Orientation where+  toJSON Orientation' {..} =+    Data.object+      ( Prelude.catMaybes+          [("degrees" Data..=) Prelude.<$> degrees]+      )
+ gen/Amazonka/IoTRoboRunner/Types/PositionCoordinates.hs view
@@ -0,0 +1,82 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.IoTRoboRunner.Types.PositionCoordinates+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IoTRoboRunner.Types.PositionCoordinates where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IoTRoboRunner.Types.CartesianCoordinates+import qualified Amazonka.Prelude as Prelude++-- | Supported coordinates for worker position.+--+-- /See:/ 'newPositionCoordinates' smart constructor.+data PositionCoordinates = PositionCoordinates'+  { -- | Cartesian coordinates.+    cartesianCoordinates :: Prelude.Maybe CartesianCoordinates+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'PositionCoordinates' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'cartesianCoordinates', 'positionCoordinates_cartesianCoordinates' - Cartesian coordinates.+newPositionCoordinates ::+  PositionCoordinates+newPositionCoordinates =+  PositionCoordinates'+    { cartesianCoordinates =+        Prelude.Nothing+    }++-- | Cartesian coordinates.+positionCoordinates_cartesianCoordinates :: Lens.Lens' PositionCoordinates (Prelude.Maybe CartesianCoordinates)+positionCoordinates_cartesianCoordinates = Lens.lens (\PositionCoordinates' {cartesianCoordinates} -> cartesianCoordinates) (\s@PositionCoordinates' {} a -> s {cartesianCoordinates = a} :: PositionCoordinates)++instance Data.FromJSON PositionCoordinates where+  parseJSON =+    Data.withObject+      "PositionCoordinates"+      ( \x ->+          PositionCoordinates'+            Prelude.<$> (x Data..:? "cartesianCoordinates")+      )++instance Prelude.Hashable PositionCoordinates where+  hashWithSalt _salt PositionCoordinates' {..} =+    _salt `Prelude.hashWithSalt` cartesianCoordinates++instance Prelude.NFData PositionCoordinates where+  rnf PositionCoordinates' {..} =+    Prelude.rnf cartesianCoordinates++instance Data.ToJSON PositionCoordinates where+  toJSON PositionCoordinates' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("cartesianCoordinates" Data..=)+              Prelude.<$> cartesianCoordinates+          ]+      )
+ gen/Amazonka/IoTRoboRunner/Types/Site.hs view
@@ -0,0 +1,116 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.IoTRoboRunner.Types.Site+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IoTRoboRunner.Types.Site where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Facility containing destinations, workers, activities, and tasks.+--+-- /See:/ 'newSite' smart constructor.+data Site = Site'+  { arn :: Prelude.Text,+    -- | The name of the site. Mutable after creation and unique within a given+    -- account.+    name :: Prelude.Text,+    countryCode :: Prelude.Text,+    createdAt :: Data.POSIX+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Site' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'arn', 'site_arn' - Undocumented member.+--+-- 'name', 'site_name' - The name of the site. Mutable after creation and unique within a given+-- account.+--+-- 'countryCode', 'site_countryCode' - Undocumented member.+--+-- 'createdAt', 'site_createdAt' - Undocumented member.+newSite ::+  -- | 'arn'+  Prelude.Text ->+  -- | 'name'+  Prelude.Text ->+  -- | 'countryCode'+  Prelude.Text ->+  -- | 'createdAt'+  Prelude.UTCTime ->+  Site+newSite pArn_ pName_ pCountryCode_ pCreatedAt_ =+  Site'+    { arn = pArn_,+      name = pName_,+      countryCode = pCountryCode_,+      createdAt = Data._Time Lens.# pCreatedAt_+    }++-- | Undocumented member.+site_arn :: Lens.Lens' Site Prelude.Text+site_arn = Lens.lens (\Site' {arn} -> arn) (\s@Site' {} a -> s {arn = a} :: Site)++-- | The name of the site. Mutable after creation and unique within a given+-- account.+site_name :: Lens.Lens' Site Prelude.Text+site_name = Lens.lens (\Site' {name} -> name) (\s@Site' {} a -> s {name = a} :: Site)++-- | Undocumented member.+site_countryCode :: Lens.Lens' Site Prelude.Text+site_countryCode = Lens.lens (\Site' {countryCode} -> countryCode) (\s@Site' {} a -> s {countryCode = a} :: Site)++-- | Undocumented member.+site_createdAt :: Lens.Lens' Site Prelude.UTCTime+site_createdAt = Lens.lens (\Site' {createdAt} -> createdAt) (\s@Site' {} a -> s {createdAt = a} :: Site) Prelude.. Data._Time++instance Data.FromJSON Site where+  parseJSON =+    Data.withObject+      "Site"+      ( \x ->+          Site'+            Prelude.<$> (x Data..: "arn")+            Prelude.<*> (x Data..: "name")+            Prelude.<*> (x Data..: "countryCode")+            Prelude.<*> (x Data..: "createdAt")+      )++instance Prelude.Hashable Site where+  hashWithSalt _salt Site' {..} =+    _salt+      `Prelude.hashWithSalt` arn+      `Prelude.hashWithSalt` name+      `Prelude.hashWithSalt` countryCode+      `Prelude.hashWithSalt` createdAt++instance Prelude.NFData Site where+  rnf Site' {..} =+    Prelude.rnf arn+      `Prelude.seq` Prelude.rnf name+      `Prelude.seq` Prelude.rnf countryCode+      `Prelude.seq` Prelude.rnf createdAt
+ gen/Amazonka/IoTRoboRunner/Types/VendorProperties.hs view
@@ -0,0 +1,123 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.IoTRoboRunner.Types.VendorProperties+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IoTRoboRunner.Types.VendorProperties where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | Properties of the worker that are provided by the vendor FMS.+--+-- /See:/ 'newVendorProperties' smart constructor.+data VendorProperties = VendorProperties'+  { vendorAdditionalFixedProperties :: Prelude.Maybe Prelude.Text,+    vendorAdditionalTransientProperties :: Prelude.Maybe Prelude.Text,+    vendorWorkerIpAddress :: Prelude.Maybe Prelude.Text,+    vendorWorkerId :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'VendorProperties' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'vendorAdditionalFixedProperties', 'vendorProperties_vendorAdditionalFixedProperties' - Undocumented member.+--+-- 'vendorAdditionalTransientProperties', 'vendorProperties_vendorAdditionalTransientProperties' - Undocumented member.+--+-- 'vendorWorkerIpAddress', 'vendorProperties_vendorWorkerIpAddress' - Undocumented member.+--+-- 'vendorWorkerId', 'vendorProperties_vendorWorkerId' - Undocumented member.+newVendorProperties ::+  -- | 'vendorWorkerId'+  Prelude.Text ->+  VendorProperties+newVendorProperties pVendorWorkerId_ =+  VendorProperties'+    { vendorAdditionalFixedProperties =+        Prelude.Nothing,+      vendorAdditionalTransientProperties =+        Prelude.Nothing,+      vendorWorkerIpAddress = Prelude.Nothing,+      vendorWorkerId = pVendorWorkerId_+    }++-- | Undocumented member.+vendorProperties_vendorAdditionalFixedProperties :: Lens.Lens' VendorProperties (Prelude.Maybe Prelude.Text)+vendorProperties_vendorAdditionalFixedProperties = Lens.lens (\VendorProperties' {vendorAdditionalFixedProperties} -> vendorAdditionalFixedProperties) (\s@VendorProperties' {} a -> s {vendorAdditionalFixedProperties = a} :: VendorProperties)++-- | Undocumented member.+vendorProperties_vendorAdditionalTransientProperties :: Lens.Lens' VendorProperties (Prelude.Maybe Prelude.Text)+vendorProperties_vendorAdditionalTransientProperties = Lens.lens (\VendorProperties' {vendorAdditionalTransientProperties} -> vendorAdditionalTransientProperties) (\s@VendorProperties' {} a -> s {vendorAdditionalTransientProperties = a} :: VendorProperties)++-- | Undocumented member.+vendorProperties_vendorWorkerIpAddress :: Lens.Lens' VendorProperties (Prelude.Maybe Prelude.Text)+vendorProperties_vendorWorkerIpAddress = Lens.lens (\VendorProperties' {vendorWorkerIpAddress} -> vendorWorkerIpAddress) (\s@VendorProperties' {} a -> s {vendorWorkerIpAddress = a} :: VendorProperties)++-- | Undocumented member.+vendorProperties_vendorWorkerId :: Lens.Lens' VendorProperties Prelude.Text+vendorProperties_vendorWorkerId = Lens.lens (\VendorProperties' {vendorWorkerId} -> vendorWorkerId) (\s@VendorProperties' {} a -> s {vendorWorkerId = a} :: VendorProperties)++instance Data.FromJSON VendorProperties where+  parseJSON =+    Data.withObject+      "VendorProperties"+      ( \x ->+          VendorProperties'+            Prelude.<$> (x Data..:? "vendorAdditionalFixedProperties")+            Prelude.<*> (x Data..:? "vendorAdditionalTransientProperties")+            Prelude.<*> (x Data..:? "vendorWorkerIpAddress")+            Prelude.<*> (x Data..: "vendorWorkerId")+      )++instance Prelude.Hashable VendorProperties where+  hashWithSalt _salt VendorProperties' {..} =+    _salt+      `Prelude.hashWithSalt` vendorAdditionalFixedProperties+      `Prelude.hashWithSalt` vendorAdditionalTransientProperties+      `Prelude.hashWithSalt` vendorWorkerIpAddress+      `Prelude.hashWithSalt` vendorWorkerId++instance Prelude.NFData VendorProperties where+  rnf VendorProperties' {..} =+    Prelude.rnf vendorAdditionalFixedProperties+      `Prelude.seq` Prelude.rnf vendorAdditionalTransientProperties+      `Prelude.seq` Prelude.rnf vendorWorkerIpAddress+      `Prelude.seq` Prelude.rnf vendorWorkerId++instance Data.ToJSON VendorProperties where+  toJSON VendorProperties' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("vendorAdditionalFixedProperties" Data..=)+              Prelude.<$> vendorAdditionalFixedProperties,+            ("vendorAdditionalTransientProperties" Data..=)+              Prelude.<$> vendorAdditionalTransientProperties,+            ("vendorWorkerIpAddress" Data..=)+              Prelude.<$> vendorWorkerIpAddress,+            Prelude.Just+              ("vendorWorkerId" Data..= vendorWorkerId)+          ]+      )
+ gen/Amazonka/IoTRoboRunner/Types/Worker.hs view
@@ -0,0 +1,217 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.IoTRoboRunner.Types.Worker+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IoTRoboRunner.Types.Worker where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IoTRoboRunner.Types.Orientation+import Amazonka.IoTRoboRunner.Types.PositionCoordinates+import Amazonka.IoTRoboRunner.Types.VendorProperties+import qualified Amazonka.Prelude as Prelude++-- | A unit capable of performing tasks.+--+-- /See:/ 'newWorker' smart constructor.+data Worker = Worker'+  { additionalFixedProperties :: Prelude.Maybe Prelude.Text,+    additionalTransientProperties :: Prelude.Maybe Prelude.Text,+    orientation :: Prelude.Maybe Orientation,+    position :: Prelude.Maybe PositionCoordinates,+    vendorProperties :: Prelude.Maybe VendorProperties,+    arn :: Prelude.Text,+    id :: Prelude.Text,+    fleet :: Prelude.Text,+    createdAt :: Data.POSIX,+    updatedAt :: Data.POSIX,+    name :: Prelude.Text,+    site :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'Worker' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'additionalFixedProperties', 'worker_additionalFixedProperties' - Undocumented member.+--+-- 'additionalTransientProperties', 'worker_additionalTransientProperties' - Undocumented member.+--+-- 'orientation', 'worker_orientation' - Undocumented member.+--+-- 'position', 'worker_position' - Undocumented member.+--+-- 'vendorProperties', 'worker_vendorProperties' - Undocumented member.+--+-- 'arn', 'worker_arn' - Undocumented member.+--+-- 'id', 'worker_id' - Undocumented member.+--+-- 'fleet', 'worker_fleet' - Undocumented member.+--+-- 'createdAt', 'worker_createdAt' - Undocumented member.+--+-- 'updatedAt', 'worker_updatedAt' - Undocumented member.+--+-- 'name', 'worker_name' - Undocumented member.+--+-- 'site', 'worker_site' - Undocumented member.+newWorker ::+  -- | 'arn'+  Prelude.Text ->+  -- | 'id'+  Prelude.Text ->+  -- | 'fleet'+  Prelude.Text ->+  -- | 'createdAt'+  Prelude.UTCTime ->+  -- | 'updatedAt'+  Prelude.UTCTime ->+  -- | 'name'+  Prelude.Text ->+  -- | 'site'+  Prelude.Text ->+  Worker+newWorker+  pArn_+  pId_+  pFleet_+  pCreatedAt_+  pUpdatedAt_+  pName_+  pSite_ =+    Worker'+      { additionalFixedProperties =+          Prelude.Nothing,+        additionalTransientProperties = Prelude.Nothing,+        orientation = Prelude.Nothing,+        position = Prelude.Nothing,+        vendorProperties = Prelude.Nothing,+        arn = pArn_,+        id = pId_,+        fleet = pFleet_,+        createdAt = Data._Time Lens.# pCreatedAt_,+        updatedAt = Data._Time Lens.# pUpdatedAt_,+        name = pName_,+        site = pSite_+      }++-- | Undocumented member.+worker_additionalFixedProperties :: Lens.Lens' Worker (Prelude.Maybe Prelude.Text)+worker_additionalFixedProperties = Lens.lens (\Worker' {additionalFixedProperties} -> additionalFixedProperties) (\s@Worker' {} a -> s {additionalFixedProperties = a} :: Worker)++-- | Undocumented member.+worker_additionalTransientProperties :: Lens.Lens' Worker (Prelude.Maybe Prelude.Text)+worker_additionalTransientProperties = Lens.lens (\Worker' {additionalTransientProperties} -> additionalTransientProperties) (\s@Worker' {} a -> s {additionalTransientProperties = a} :: Worker)++-- | Undocumented member.+worker_orientation :: Lens.Lens' Worker (Prelude.Maybe Orientation)+worker_orientation = Lens.lens (\Worker' {orientation} -> orientation) (\s@Worker' {} a -> s {orientation = a} :: Worker)++-- | Undocumented member.+worker_position :: Lens.Lens' Worker (Prelude.Maybe PositionCoordinates)+worker_position = Lens.lens (\Worker' {position} -> position) (\s@Worker' {} a -> s {position = a} :: Worker)++-- | Undocumented member.+worker_vendorProperties :: Lens.Lens' Worker (Prelude.Maybe VendorProperties)+worker_vendorProperties = Lens.lens (\Worker' {vendorProperties} -> vendorProperties) (\s@Worker' {} a -> s {vendorProperties = a} :: Worker)++-- | Undocumented member.+worker_arn :: Lens.Lens' Worker Prelude.Text+worker_arn = Lens.lens (\Worker' {arn} -> arn) (\s@Worker' {} a -> s {arn = a} :: Worker)++-- | Undocumented member.+worker_id :: Lens.Lens' Worker Prelude.Text+worker_id = Lens.lens (\Worker' {id} -> id) (\s@Worker' {} a -> s {id = a} :: Worker)++-- | Undocumented member.+worker_fleet :: Lens.Lens' Worker Prelude.Text+worker_fleet = Lens.lens (\Worker' {fleet} -> fleet) (\s@Worker' {} a -> s {fleet = a} :: Worker)++-- | Undocumented member.+worker_createdAt :: Lens.Lens' Worker Prelude.UTCTime+worker_createdAt = Lens.lens (\Worker' {createdAt} -> createdAt) (\s@Worker' {} a -> s {createdAt = a} :: Worker) Prelude.. Data._Time++-- | Undocumented member.+worker_updatedAt :: Lens.Lens' Worker Prelude.UTCTime+worker_updatedAt = Lens.lens (\Worker' {updatedAt} -> updatedAt) (\s@Worker' {} a -> s {updatedAt = a} :: Worker) Prelude.. Data._Time++-- | Undocumented member.+worker_name :: Lens.Lens' Worker Prelude.Text+worker_name = Lens.lens (\Worker' {name} -> name) (\s@Worker' {} a -> s {name = a} :: Worker)++-- | Undocumented member.+worker_site :: Lens.Lens' Worker Prelude.Text+worker_site = Lens.lens (\Worker' {site} -> site) (\s@Worker' {} a -> s {site = a} :: Worker)++instance Data.FromJSON Worker where+  parseJSON =+    Data.withObject+      "Worker"+      ( \x ->+          Worker'+            Prelude.<$> (x Data..:? "additionalFixedProperties")+            Prelude.<*> (x Data..:? "additionalTransientProperties")+            Prelude.<*> (x Data..:? "orientation")+            Prelude.<*> (x Data..:? "position")+            Prelude.<*> (x Data..:? "vendorProperties")+            Prelude.<*> (x Data..: "arn")+            Prelude.<*> (x Data..: "id")+            Prelude.<*> (x Data..: "fleet")+            Prelude.<*> (x Data..: "createdAt")+            Prelude.<*> (x Data..: "updatedAt")+            Prelude.<*> (x Data..: "name")+            Prelude.<*> (x Data..: "site")+      )++instance Prelude.Hashable Worker where+  hashWithSalt _salt Worker' {..} =+    _salt+      `Prelude.hashWithSalt` additionalFixedProperties+      `Prelude.hashWithSalt` additionalTransientProperties+      `Prelude.hashWithSalt` orientation+      `Prelude.hashWithSalt` position+      `Prelude.hashWithSalt` vendorProperties+      `Prelude.hashWithSalt` arn+      `Prelude.hashWithSalt` id+      `Prelude.hashWithSalt` fleet+      `Prelude.hashWithSalt` createdAt+      `Prelude.hashWithSalt` updatedAt+      `Prelude.hashWithSalt` name+      `Prelude.hashWithSalt` site++instance Prelude.NFData Worker where+  rnf Worker' {..} =+    Prelude.rnf additionalFixedProperties+      `Prelude.seq` Prelude.rnf additionalTransientProperties+      `Prelude.seq` Prelude.rnf orientation+      `Prelude.seq` Prelude.rnf position+      `Prelude.seq` Prelude.rnf vendorProperties+      `Prelude.seq` Prelude.rnf arn+      `Prelude.seq` Prelude.rnf id+      `Prelude.seq` Prelude.rnf fleet+      `Prelude.seq` Prelude.rnf createdAt+      `Prelude.seq` Prelude.rnf updatedAt+      `Prelude.seq` Prelude.rnf name+      `Prelude.seq` Prelude.rnf site
+ gen/Amazonka/IoTRoboRunner/Types/WorkerFleet.hs view
@@ -0,0 +1,156 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.IoTRoboRunner.Types.WorkerFleet+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IoTRoboRunner.Types.WorkerFleet where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import qualified Amazonka.Prelude as Prelude++-- | A collection of workers organized within a facility.+--+-- /See:/ 'newWorkerFleet' smart constructor.+data WorkerFleet = WorkerFleet'+  { additionalFixedProperties :: Prelude.Maybe Prelude.Text,+    arn :: Prelude.Text,+    id :: Prelude.Text,+    name :: Prelude.Text,+    site :: Prelude.Text,+    createdAt :: Data.POSIX,+    updatedAt :: Data.POSIX+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'WorkerFleet' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'additionalFixedProperties', 'workerFleet_additionalFixedProperties' - Undocumented member.+--+-- 'arn', 'workerFleet_arn' - Undocumented member.+--+-- 'id', 'workerFleet_id' - Undocumented member.+--+-- 'name', 'workerFleet_name' - Undocumented member.+--+-- 'site', 'workerFleet_site' - Undocumented member.+--+-- 'createdAt', 'workerFleet_createdAt' - Undocumented member.+--+-- 'updatedAt', 'workerFleet_updatedAt' - Undocumented member.+newWorkerFleet ::+  -- | 'arn'+  Prelude.Text ->+  -- | 'id'+  Prelude.Text ->+  -- | 'name'+  Prelude.Text ->+  -- | 'site'+  Prelude.Text ->+  -- | 'createdAt'+  Prelude.UTCTime ->+  -- | 'updatedAt'+  Prelude.UTCTime ->+  WorkerFleet+newWorkerFleet+  pArn_+  pId_+  pName_+  pSite_+  pCreatedAt_+  pUpdatedAt_ =+    WorkerFleet'+      { additionalFixedProperties =+          Prelude.Nothing,+        arn = pArn_,+        id = pId_,+        name = pName_,+        site = pSite_,+        createdAt = Data._Time Lens.# pCreatedAt_,+        updatedAt = Data._Time Lens.# pUpdatedAt_+      }++-- | Undocumented member.+workerFleet_additionalFixedProperties :: Lens.Lens' WorkerFleet (Prelude.Maybe Prelude.Text)+workerFleet_additionalFixedProperties = Lens.lens (\WorkerFleet' {additionalFixedProperties} -> additionalFixedProperties) (\s@WorkerFleet' {} a -> s {additionalFixedProperties = a} :: WorkerFleet)++-- | Undocumented member.+workerFleet_arn :: Lens.Lens' WorkerFleet Prelude.Text+workerFleet_arn = Lens.lens (\WorkerFleet' {arn} -> arn) (\s@WorkerFleet' {} a -> s {arn = a} :: WorkerFleet)++-- | Undocumented member.+workerFleet_id :: Lens.Lens' WorkerFleet Prelude.Text+workerFleet_id = Lens.lens (\WorkerFleet' {id} -> id) (\s@WorkerFleet' {} a -> s {id = a} :: WorkerFleet)++-- | Undocumented member.+workerFleet_name :: Lens.Lens' WorkerFleet Prelude.Text+workerFleet_name = Lens.lens (\WorkerFleet' {name} -> name) (\s@WorkerFleet' {} a -> s {name = a} :: WorkerFleet)++-- | Undocumented member.+workerFleet_site :: Lens.Lens' WorkerFleet Prelude.Text+workerFleet_site = Lens.lens (\WorkerFleet' {site} -> site) (\s@WorkerFleet' {} a -> s {site = a} :: WorkerFleet)++-- | Undocumented member.+workerFleet_createdAt :: Lens.Lens' WorkerFleet Prelude.UTCTime+workerFleet_createdAt = Lens.lens (\WorkerFleet' {createdAt} -> createdAt) (\s@WorkerFleet' {} a -> s {createdAt = a} :: WorkerFleet) Prelude.. Data._Time++-- | Undocumented member.+workerFleet_updatedAt :: Lens.Lens' WorkerFleet Prelude.UTCTime+workerFleet_updatedAt = Lens.lens (\WorkerFleet' {updatedAt} -> updatedAt) (\s@WorkerFleet' {} a -> s {updatedAt = a} :: WorkerFleet) Prelude.. Data._Time++instance Data.FromJSON WorkerFleet where+  parseJSON =+    Data.withObject+      "WorkerFleet"+      ( \x ->+          WorkerFleet'+            Prelude.<$> (x Data..:? "additionalFixedProperties")+            Prelude.<*> (x Data..: "arn")+            Prelude.<*> (x Data..: "id")+            Prelude.<*> (x Data..: "name")+            Prelude.<*> (x Data..: "site")+            Prelude.<*> (x Data..: "createdAt")+            Prelude.<*> (x Data..: "updatedAt")+      )++instance Prelude.Hashable WorkerFleet where+  hashWithSalt _salt WorkerFleet' {..} =+    _salt+      `Prelude.hashWithSalt` additionalFixedProperties+      `Prelude.hashWithSalt` arn+      `Prelude.hashWithSalt` id+      `Prelude.hashWithSalt` name+      `Prelude.hashWithSalt` site+      `Prelude.hashWithSalt` createdAt+      `Prelude.hashWithSalt` updatedAt++instance Prelude.NFData WorkerFleet where+  rnf WorkerFleet' {..} =+    Prelude.rnf additionalFixedProperties+      `Prelude.seq` Prelude.rnf arn+      `Prelude.seq` Prelude.rnf id+      `Prelude.seq` Prelude.rnf name+      `Prelude.seq` Prelude.rnf site+      `Prelude.seq` Prelude.rnf createdAt+      `Prelude.seq` Prelude.rnf updatedAt
+ gen/Amazonka/IoTRoboRunner/UpdateDestination.hs view
@@ -0,0 +1,276 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.IoTRoboRunner.UpdateDestination+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Grants permission to update a destination+module Amazonka.IoTRoboRunner.UpdateDestination+  ( -- * Creating a Request+    UpdateDestination (..),+    newUpdateDestination,++    -- * Request Lenses+    updateDestination_additionalFixedProperties,+    updateDestination_name,+    updateDestination_state,+    updateDestination_id,++    -- * Destructuring the Response+    UpdateDestinationResponse (..),+    newUpdateDestinationResponse,++    -- * Response Lenses+    updateDestinationResponse_additionalFixedProperties,+    updateDestinationResponse_httpStatus,+    updateDestinationResponse_arn,+    updateDestinationResponse_id,+    updateDestinationResponse_name,+    updateDestinationResponse_updatedAt,+    updateDestinationResponse_state,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IoTRoboRunner.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateDestination' smart constructor.+data UpdateDestination = UpdateDestination'+  { additionalFixedProperties :: Prelude.Maybe Prelude.Text,+    name :: Prelude.Maybe Prelude.Text,+    state :: Prelude.Maybe DestinationState,+    id :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateDestination' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'additionalFixedProperties', 'updateDestination_additionalFixedProperties' - Undocumented member.+--+-- 'name', 'updateDestination_name' - Undocumented member.+--+-- 'state', 'updateDestination_state' - Undocumented member.+--+-- 'id', 'updateDestination_id' - Undocumented member.+newUpdateDestination ::+  -- | 'id'+  Prelude.Text ->+  UpdateDestination+newUpdateDestination pId_ =+  UpdateDestination'+    { additionalFixedProperties =+        Prelude.Nothing,+      name = Prelude.Nothing,+      state = Prelude.Nothing,+      id = pId_+    }++-- | Undocumented member.+updateDestination_additionalFixedProperties :: Lens.Lens' UpdateDestination (Prelude.Maybe Prelude.Text)+updateDestination_additionalFixedProperties = Lens.lens (\UpdateDestination' {additionalFixedProperties} -> additionalFixedProperties) (\s@UpdateDestination' {} a -> s {additionalFixedProperties = a} :: UpdateDestination)++-- | Undocumented member.+updateDestination_name :: Lens.Lens' UpdateDestination (Prelude.Maybe Prelude.Text)+updateDestination_name = Lens.lens (\UpdateDestination' {name} -> name) (\s@UpdateDestination' {} a -> s {name = a} :: UpdateDestination)++-- | Undocumented member.+updateDestination_state :: Lens.Lens' UpdateDestination (Prelude.Maybe DestinationState)+updateDestination_state = Lens.lens (\UpdateDestination' {state} -> state) (\s@UpdateDestination' {} a -> s {state = a} :: UpdateDestination)++-- | Undocumented member.+updateDestination_id :: Lens.Lens' UpdateDestination Prelude.Text+updateDestination_id = Lens.lens (\UpdateDestination' {id} -> id) (\s@UpdateDestination' {} a -> s {id = a} :: UpdateDestination)++instance Core.AWSRequest UpdateDestination where+  type+    AWSResponse UpdateDestination =+      UpdateDestinationResponse+  request overrides =+    Request.postJSON (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          UpdateDestinationResponse'+            Prelude.<$> (x Data..?> "additionalFixedProperties")+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+            Prelude.<*> (x Data..:> "arn")+            Prelude.<*> (x Data..:> "id")+            Prelude.<*> (x Data..:> "name")+            Prelude.<*> (x Data..:> "updatedAt")+            Prelude.<*> (x Data..:> "state")+      )++instance Prelude.Hashable UpdateDestination where+  hashWithSalt _salt UpdateDestination' {..} =+    _salt+      `Prelude.hashWithSalt` additionalFixedProperties+      `Prelude.hashWithSalt` name+      `Prelude.hashWithSalt` state+      `Prelude.hashWithSalt` id++instance Prelude.NFData UpdateDestination where+  rnf UpdateDestination' {..} =+    Prelude.rnf additionalFixedProperties+      `Prelude.seq` Prelude.rnf name+      `Prelude.seq` Prelude.rnf state+      `Prelude.seq` Prelude.rnf id++instance Data.ToHeaders UpdateDestination where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToJSON UpdateDestination where+  toJSON UpdateDestination' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("additionalFixedProperties" Data..=)+              Prelude.<$> additionalFixedProperties,+            ("name" Data..=) Prelude.<$> name,+            ("state" Data..=) Prelude.<$> state,+            Prelude.Just ("id" Data..= id)+          ]+      )++instance Data.ToPath UpdateDestination where+  toPath = Prelude.const "/updateDestination"++instance Data.ToQuery UpdateDestination where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newUpdateDestinationResponse' smart constructor.+data UpdateDestinationResponse = UpdateDestinationResponse'+  { additionalFixedProperties :: Prelude.Maybe Prelude.Text,+    -- | The response's http status code.+    httpStatus :: Prelude.Int,+    arn :: Prelude.Text,+    id :: Prelude.Text,+    name :: Prelude.Text,+    updatedAt :: Data.POSIX,+    state :: DestinationState+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateDestinationResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'additionalFixedProperties', 'updateDestinationResponse_additionalFixedProperties' - Undocumented member.+--+-- 'httpStatus', 'updateDestinationResponse_httpStatus' - The response's http status code.+--+-- 'arn', 'updateDestinationResponse_arn' - Undocumented member.+--+-- 'id', 'updateDestinationResponse_id' - Undocumented member.+--+-- 'name', 'updateDestinationResponse_name' - Undocumented member.+--+-- 'updatedAt', 'updateDestinationResponse_updatedAt' - Undocumented member.+--+-- 'state', 'updateDestinationResponse_state' - Undocumented member.+newUpdateDestinationResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  -- | 'arn'+  Prelude.Text ->+  -- | 'id'+  Prelude.Text ->+  -- | 'name'+  Prelude.Text ->+  -- | 'updatedAt'+  Prelude.UTCTime ->+  -- | 'state'+  DestinationState ->+  UpdateDestinationResponse+newUpdateDestinationResponse+  pHttpStatus_+  pArn_+  pId_+  pName_+  pUpdatedAt_+  pState_ =+    UpdateDestinationResponse'+      { additionalFixedProperties =+          Prelude.Nothing,+        httpStatus = pHttpStatus_,+        arn = pArn_,+        id = pId_,+        name = pName_,+        updatedAt = Data._Time Lens.# pUpdatedAt_,+        state = pState_+      }++-- | Undocumented member.+updateDestinationResponse_additionalFixedProperties :: Lens.Lens' UpdateDestinationResponse (Prelude.Maybe Prelude.Text)+updateDestinationResponse_additionalFixedProperties = Lens.lens (\UpdateDestinationResponse' {additionalFixedProperties} -> additionalFixedProperties) (\s@UpdateDestinationResponse' {} a -> s {additionalFixedProperties = a} :: UpdateDestinationResponse)++-- | The response's http status code.+updateDestinationResponse_httpStatus :: Lens.Lens' UpdateDestinationResponse Prelude.Int+updateDestinationResponse_httpStatus = Lens.lens (\UpdateDestinationResponse' {httpStatus} -> httpStatus) (\s@UpdateDestinationResponse' {} a -> s {httpStatus = a} :: UpdateDestinationResponse)++-- | Undocumented member.+updateDestinationResponse_arn :: Lens.Lens' UpdateDestinationResponse Prelude.Text+updateDestinationResponse_arn = Lens.lens (\UpdateDestinationResponse' {arn} -> arn) (\s@UpdateDestinationResponse' {} a -> s {arn = a} :: UpdateDestinationResponse)++-- | Undocumented member.+updateDestinationResponse_id :: Lens.Lens' UpdateDestinationResponse Prelude.Text+updateDestinationResponse_id = Lens.lens (\UpdateDestinationResponse' {id} -> id) (\s@UpdateDestinationResponse' {} a -> s {id = a} :: UpdateDestinationResponse)++-- | Undocumented member.+updateDestinationResponse_name :: Lens.Lens' UpdateDestinationResponse Prelude.Text+updateDestinationResponse_name = Lens.lens (\UpdateDestinationResponse' {name} -> name) (\s@UpdateDestinationResponse' {} a -> s {name = a} :: UpdateDestinationResponse)++-- | Undocumented member.+updateDestinationResponse_updatedAt :: Lens.Lens' UpdateDestinationResponse Prelude.UTCTime+updateDestinationResponse_updatedAt = Lens.lens (\UpdateDestinationResponse' {updatedAt} -> updatedAt) (\s@UpdateDestinationResponse' {} a -> s {updatedAt = a} :: UpdateDestinationResponse) Prelude.. Data._Time++-- | Undocumented member.+updateDestinationResponse_state :: Lens.Lens' UpdateDestinationResponse DestinationState+updateDestinationResponse_state = Lens.lens (\UpdateDestinationResponse' {state} -> state) (\s@UpdateDestinationResponse' {} a -> s {state = a} :: UpdateDestinationResponse)++instance Prelude.NFData UpdateDestinationResponse where+  rnf UpdateDestinationResponse' {..} =+    Prelude.rnf additionalFixedProperties+      `Prelude.seq` Prelude.rnf httpStatus+      `Prelude.seq` Prelude.rnf arn+      `Prelude.seq` Prelude.rnf id+      `Prelude.seq` Prelude.rnf name+      `Prelude.seq` Prelude.rnf updatedAt+      `Prelude.seq` Prelude.rnf state
+ gen/Amazonka/IoTRoboRunner/UpdateSite.hs view
@@ -0,0 +1,268 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.IoTRoboRunner.UpdateSite+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Grants permission to update a site+module Amazonka.IoTRoboRunner.UpdateSite+  ( -- * Creating a Request+    UpdateSite (..),+    newUpdateSite,++    -- * Request Lenses+    updateSite_countryCode,+    updateSite_description,+    updateSite_name,+    updateSite_id,++    -- * Destructuring the Response+    UpdateSiteResponse (..),+    newUpdateSiteResponse,++    -- * Response Lenses+    updateSiteResponse_countryCode,+    updateSiteResponse_description,+    updateSiteResponse_httpStatus,+    updateSiteResponse_arn,+    updateSiteResponse_id,+    updateSiteResponse_name,+    updateSiteResponse_updatedAt,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IoTRoboRunner.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateSite' smart constructor.+data UpdateSite = UpdateSite'+  { countryCode :: Prelude.Maybe Prelude.Text,+    description :: Prelude.Maybe Prelude.Text,+    name :: Prelude.Maybe Prelude.Text,+    id :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateSite' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'countryCode', 'updateSite_countryCode' - Undocumented member.+--+-- 'description', 'updateSite_description' - Undocumented member.+--+-- 'name', 'updateSite_name' - Undocumented member.+--+-- 'id', 'updateSite_id' - Undocumented member.+newUpdateSite ::+  -- | 'id'+  Prelude.Text ->+  UpdateSite+newUpdateSite pId_ =+  UpdateSite'+    { countryCode = Prelude.Nothing,+      description = Prelude.Nothing,+      name = Prelude.Nothing,+      id = pId_+    }++-- | Undocumented member.+updateSite_countryCode :: Lens.Lens' UpdateSite (Prelude.Maybe Prelude.Text)+updateSite_countryCode = Lens.lens (\UpdateSite' {countryCode} -> countryCode) (\s@UpdateSite' {} a -> s {countryCode = a} :: UpdateSite)++-- | Undocumented member.+updateSite_description :: Lens.Lens' UpdateSite (Prelude.Maybe Prelude.Text)+updateSite_description = Lens.lens (\UpdateSite' {description} -> description) (\s@UpdateSite' {} a -> s {description = a} :: UpdateSite)++-- | Undocumented member.+updateSite_name :: Lens.Lens' UpdateSite (Prelude.Maybe Prelude.Text)+updateSite_name = Lens.lens (\UpdateSite' {name} -> name) (\s@UpdateSite' {} a -> s {name = a} :: UpdateSite)++-- | Undocumented member.+updateSite_id :: Lens.Lens' UpdateSite Prelude.Text+updateSite_id = Lens.lens (\UpdateSite' {id} -> id) (\s@UpdateSite' {} a -> s {id = a} :: UpdateSite)++instance Core.AWSRequest UpdateSite where+  type AWSResponse UpdateSite = UpdateSiteResponse+  request overrides =+    Request.postJSON (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          UpdateSiteResponse'+            Prelude.<$> (x Data..?> "countryCode")+            Prelude.<*> (x Data..?> "description")+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+            Prelude.<*> (x Data..:> "arn")+            Prelude.<*> (x Data..:> "id")+            Prelude.<*> (x Data..:> "name")+            Prelude.<*> (x Data..:> "updatedAt")+      )++instance Prelude.Hashable UpdateSite where+  hashWithSalt _salt UpdateSite' {..} =+    _salt+      `Prelude.hashWithSalt` countryCode+      `Prelude.hashWithSalt` description+      `Prelude.hashWithSalt` name+      `Prelude.hashWithSalt` id++instance Prelude.NFData UpdateSite where+  rnf UpdateSite' {..} =+    Prelude.rnf countryCode+      `Prelude.seq` Prelude.rnf description+      `Prelude.seq` Prelude.rnf name+      `Prelude.seq` Prelude.rnf id++instance Data.ToHeaders UpdateSite where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToJSON UpdateSite where+  toJSON UpdateSite' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("countryCode" Data..=) Prelude.<$> countryCode,+            ("description" Data..=) Prelude.<$> description,+            ("name" Data..=) Prelude.<$> name,+            Prelude.Just ("id" Data..= id)+          ]+      )++instance Data.ToPath UpdateSite where+  toPath = Prelude.const "/updateSite"++instance Data.ToQuery UpdateSite where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newUpdateSiteResponse' smart constructor.+data UpdateSiteResponse = UpdateSiteResponse'+  { countryCode :: Prelude.Maybe Prelude.Text,+    description :: Prelude.Maybe Prelude.Text,+    -- | The response's http status code.+    httpStatus :: Prelude.Int,+    arn :: Prelude.Text,+    id :: Prelude.Text,+    name :: Prelude.Text,+    updatedAt :: Data.POSIX+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateSiteResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'countryCode', 'updateSiteResponse_countryCode' - Undocumented member.+--+-- 'description', 'updateSiteResponse_description' - Undocumented member.+--+-- 'httpStatus', 'updateSiteResponse_httpStatus' - The response's http status code.+--+-- 'arn', 'updateSiteResponse_arn' - Undocumented member.+--+-- 'id', 'updateSiteResponse_id' - Undocumented member.+--+-- 'name', 'updateSiteResponse_name' - Undocumented member.+--+-- 'updatedAt', 'updateSiteResponse_updatedAt' - Undocumented member.+newUpdateSiteResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  -- | 'arn'+  Prelude.Text ->+  -- | 'id'+  Prelude.Text ->+  -- | 'name'+  Prelude.Text ->+  -- | 'updatedAt'+  Prelude.UTCTime ->+  UpdateSiteResponse+newUpdateSiteResponse+  pHttpStatus_+  pArn_+  pId_+  pName_+  pUpdatedAt_ =+    UpdateSiteResponse'+      { countryCode = Prelude.Nothing,+        description = Prelude.Nothing,+        httpStatus = pHttpStatus_,+        arn = pArn_,+        id = pId_,+        name = pName_,+        updatedAt = Data._Time Lens.# pUpdatedAt_+      }++-- | Undocumented member.+updateSiteResponse_countryCode :: Lens.Lens' UpdateSiteResponse (Prelude.Maybe Prelude.Text)+updateSiteResponse_countryCode = Lens.lens (\UpdateSiteResponse' {countryCode} -> countryCode) (\s@UpdateSiteResponse' {} a -> s {countryCode = a} :: UpdateSiteResponse)++-- | Undocumented member.+updateSiteResponse_description :: Lens.Lens' UpdateSiteResponse (Prelude.Maybe Prelude.Text)+updateSiteResponse_description = Lens.lens (\UpdateSiteResponse' {description} -> description) (\s@UpdateSiteResponse' {} a -> s {description = a} :: UpdateSiteResponse)++-- | The response's http status code.+updateSiteResponse_httpStatus :: Lens.Lens' UpdateSiteResponse Prelude.Int+updateSiteResponse_httpStatus = Lens.lens (\UpdateSiteResponse' {httpStatus} -> httpStatus) (\s@UpdateSiteResponse' {} a -> s {httpStatus = a} :: UpdateSiteResponse)++-- | Undocumented member.+updateSiteResponse_arn :: Lens.Lens' UpdateSiteResponse Prelude.Text+updateSiteResponse_arn = Lens.lens (\UpdateSiteResponse' {arn} -> arn) (\s@UpdateSiteResponse' {} a -> s {arn = a} :: UpdateSiteResponse)++-- | Undocumented member.+updateSiteResponse_id :: Lens.Lens' UpdateSiteResponse Prelude.Text+updateSiteResponse_id = Lens.lens (\UpdateSiteResponse' {id} -> id) (\s@UpdateSiteResponse' {} a -> s {id = a} :: UpdateSiteResponse)++-- | Undocumented member.+updateSiteResponse_name :: Lens.Lens' UpdateSiteResponse Prelude.Text+updateSiteResponse_name = Lens.lens (\UpdateSiteResponse' {name} -> name) (\s@UpdateSiteResponse' {} a -> s {name = a} :: UpdateSiteResponse)++-- | Undocumented member.+updateSiteResponse_updatedAt :: Lens.Lens' UpdateSiteResponse Prelude.UTCTime+updateSiteResponse_updatedAt = Lens.lens (\UpdateSiteResponse' {updatedAt} -> updatedAt) (\s@UpdateSiteResponse' {} a -> s {updatedAt = a} :: UpdateSiteResponse) Prelude.. Data._Time++instance Prelude.NFData UpdateSiteResponse where+  rnf UpdateSiteResponse' {..} =+    Prelude.rnf countryCode+      `Prelude.seq` Prelude.rnf description+      `Prelude.seq` Prelude.rnf httpStatus+      `Prelude.seq` Prelude.rnf arn+      `Prelude.seq` Prelude.rnf id+      `Prelude.seq` Prelude.rnf name+      `Prelude.seq` Prelude.rnf updatedAt
+ gen/Amazonka/IoTRoboRunner/UpdateWorker.hs view
@@ -0,0 +1,356 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.IoTRoboRunner.UpdateWorker+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Grants permission to update a worker+module Amazonka.IoTRoboRunner.UpdateWorker+  ( -- * Creating a Request+    UpdateWorker (..),+    newUpdateWorker,++    -- * Request Lenses+    updateWorker_additionalFixedProperties,+    updateWorker_additionalTransientProperties,+    updateWorker_name,+    updateWorker_orientation,+    updateWorker_position,+    updateWorker_vendorProperties,+    updateWorker_id,++    -- * Destructuring the Response+    UpdateWorkerResponse (..),+    newUpdateWorkerResponse,++    -- * Response Lenses+    updateWorkerResponse_additionalFixedProperties,+    updateWorkerResponse_additionalTransientProperties,+    updateWorkerResponse_orientation,+    updateWorkerResponse_position,+    updateWorkerResponse_vendorProperties,+    updateWorkerResponse_httpStatus,+    updateWorkerResponse_arn,+    updateWorkerResponse_id,+    updateWorkerResponse_fleet,+    updateWorkerResponse_updatedAt,+    updateWorkerResponse_name,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IoTRoboRunner.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateWorker' smart constructor.+data UpdateWorker = UpdateWorker'+  { additionalFixedProperties :: Prelude.Maybe Prelude.Text,+    additionalTransientProperties :: Prelude.Maybe Prelude.Text,+    name :: Prelude.Maybe Prelude.Text,+    orientation :: Prelude.Maybe Orientation,+    position :: Prelude.Maybe PositionCoordinates,+    vendorProperties :: Prelude.Maybe VendorProperties,+    id :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateWorker' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'additionalFixedProperties', 'updateWorker_additionalFixedProperties' - Undocumented member.+--+-- 'additionalTransientProperties', 'updateWorker_additionalTransientProperties' - Undocumented member.+--+-- 'name', 'updateWorker_name' - Undocumented member.+--+-- 'orientation', 'updateWorker_orientation' - Undocumented member.+--+-- 'position', 'updateWorker_position' - Undocumented member.+--+-- 'vendorProperties', 'updateWorker_vendorProperties' - Undocumented member.+--+-- 'id', 'updateWorker_id' - Undocumented member.+newUpdateWorker ::+  -- | 'id'+  Prelude.Text ->+  UpdateWorker+newUpdateWorker pId_ =+  UpdateWorker'+    { additionalFixedProperties =+        Prelude.Nothing,+      additionalTransientProperties = Prelude.Nothing,+      name = Prelude.Nothing,+      orientation = Prelude.Nothing,+      position = Prelude.Nothing,+      vendorProperties = Prelude.Nothing,+      id = pId_+    }++-- | Undocumented member.+updateWorker_additionalFixedProperties :: Lens.Lens' UpdateWorker (Prelude.Maybe Prelude.Text)+updateWorker_additionalFixedProperties = Lens.lens (\UpdateWorker' {additionalFixedProperties} -> additionalFixedProperties) (\s@UpdateWorker' {} a -> s {additionalFixedProperties = a} :: UpdateWorker)++-- | Undocumented member.+updateWorker_additionalTransientProperties :: Lens.Lens' UpdateWorker (Prelude.Maybe Prelude.Text)+updateWorker_additionalTransientProperties = Lens.lens (\UpdateWorker' {additionalTransientProperties} -> additionalTransientProperties) (\s@UpdateWorker' {} a -> s {additionalTransientProperties = a} :: UpdateWorker)++-- | Undocumented member.+updateWorker_name :: Lens.Lens' UpdateWorker (Prelude.Maybe Prelude.Text)+updateWorker_name = Lens.lens (\UpdateWorker' {name} -> name) (\s@UpdateWorker' {} a -> s {name = a} :: UpdateWorker)++-- | Undocumented member.+updateWorker_orientation :: Lens.Lens' UpdateWorker (Prelude.Maybe Orientation)+updateWorker_orientation = Lens.lens (\UpdateWorker' {orientation} -> orientation) (\s@UpdateWorker' {} a -> s {orientation = a} :: UpdateWorker)++-- | Undocumented member.+updateWorker_position :: Lens.Lens' UpdateWorker (Prelude.Maybe PositionCoordinates)+updateWorker_position = Lens.lens (\UpdateWorker' {position} -> position) (\s@UpdateWorker' {} a -> s {position = a} :: UpdateWorker)++-- | Undocumented member.+updateWorker_vendorProperties :: Lens.Lens' UpdateWorker (Prelude.Maybe VendorProperties)+updateWorker_vendorProperties = Lens.lens (\UpdateWorker' {vendorProperties} -> vendorProperties) (\s@UpdateWorker' {} a -> s {vendorProperties = a} :: UpdateWorker)++-- | Undocumented member.+updateWorker_id :: Lens.Lens' UpdateWorker Prelude.Text+updateWorker_id = Lens.lens (\UpdateWorker' {id} -> id) (\s@UpdateWorker' {} a -> s {id = a} :: UpdateWorker)++instance Core.AWSRequest UpdateWorker where+  type AWSResponse UpdateWorker = UpdateWorkerResponse+  request overrides =+    Request.postJSON (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          UpdateWorkerResponse'+            Prelude.<$> (x Data..?> "additionalFixedProperties")+            Prelude.<*> (x Data..?> "additionalTransientProperties")+            Prelude.<*> (x Data..?> "orientation")+            Prelude.<*> (x Data..?> "position")+            Prelude.<*> (x Data..?> "vendorProperties")+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+            Prelude.<*> (x Data..:> "arn")+            Prelude.<*> (x Data..:> "id")+            Prelude.<*> (x Data..:> "fleet")+            Prelude.<*> (x Data..:> "updatedAt")+            Prelude.<*> (x Data..:> "name")+      )++instance Prelude.Hashable UpdateWorker where+  hashWithSalt _salt UpdateWorker' {..} =+    _salt+      `Prelude.hashWithSalt` additionalFixedProperties+      `Prelude.hashWithSalt` additionalTransientProperties+      `Prelude.hashWithSalt` name+      `Prelude.hashWithSalt` orientation+      `Prelude.hashWithSalt` position+      `Prelude.hashWithSalt` vendorProperties+      `Prelude.hashWithSalt` id++instance Prelude.NFData UpdateWorker where+  rnf UpdateWorker' {..} =+    Prelude.rnf additionalFixedProperties+      `Prelude.seq` Prelude.rnf additionalTransientProperties+      `Prelude.seq` Prelude.rnf name+      `Prelude.seq` Prelude.rnf orientation+      `Prelude.seq` Prelude.rnf position+      `Prelude.seq` Prelude.rnf vendorProperties+      `Prelude.seq` Prelude.rnf id++instance Data.ToHeaders UpdateWorker where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToJSON UpdateWorker where+  toJSON UpdateWorker' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("additionalFixedProperties" Data..=)+              Prelude.<$> additionalFixedProperties,+            ("additionalTransientProperties" Data..=)+              Prelude.<$> additionalTransientProperties,+            ("name" Data..=) Prelude.<$> name,+            ("orientation" Data..=) Prelude.<$> orientation,+            ("position" Data..=) Prelude.<$> position,+            ("vendorProperties" Data..=)+              Prelude.<$> vendorProperties,+            Prelude.Just ("id" Data..= id)+          ]+      )++instance Data.ToPath UpdateWorker where+  toPath = Prelude.const "/updateWorker"++instance Data.ToQuery UpdateWorker where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newUpdateWorkerResponse' smart constructor.+data UpdateWorkerResponse = UpdateWorkerResponse'+  { additionalFixedProperties :: Prelude.Maybe Prelude.Text,+    additionalTransientProperties :: Prelude.Maybe Prelude.Text,+    orientation :: Prelude.Maybe Orientation,+    position :: Prelude.Maybe PositionCoordinates,+    vendorProperties :: Prelude.Maybe VendorProperties,+    -- | The response's http status code.+    httpStatus :: Prelude.Int,+    arn :: Prelude.Text,+    id :: Prelude.Text,+    fleet :: Prelude.Text,+    updatedAt :: Data.POSIX,+    name :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateWorkerResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'additionalFixedProperties', 'updateWorkerResponse_additionalFixedProperties' - Undocumented member.+--+-- 'additionalTransientProperties', 'updateWorkerResponse_additionalTransientProperties' - Undocumented member.+--+-- 'orientation', 'updateWorkerResponse_orientation' - Undocumented member.+--+-- 'position', 'updateWorkerResponse_position' - Undocumented member.+--+-- 'vendorProperties', 'updateWorkerResponse_vendorProperties' - Undocumented member.+--+-- 'httpStatus', 'updateWorkerResponse_httpStatus' - The response's http status code.+--+-- 'arn', 'updateWorkerResponse_arn' - Undocumented member.+--+-- 'id', 'updateWorkerResponse_id' - Undocumented member.+--+-- 'fleet', 'updateWorkerResponse_fleet' - Undocumented member.+--+-- 'updatedAt', 'updateWorkerResponse_updatedAt' - Undocumented member.+--+-- 'name', 'updateWorkerResponse_name' - Undocumented member.+newUpdateWorkerResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  -- | 'arn'+  Prelude.Text ->+  -- | 'id'+  Prelude.Text ->+  -- | 'fleet'+  Prelude.Text ->+  -- | 'updatedAt'+  Prelude.UTCTime ->+  -- | 'name'+  Prelude.Text ->+  UpdateWorkerResponse+newUpdateWorkerResponse+  pHttpStatus_+  pArn_+  pId_+  pFleet_+  pUpdatedAt_+  pName_ =+    UpdateWorkerResponse'+      { additionalFixedProperties =+          Prelude.Nothing,+        additionalTransientProperties = Prelude.Nothing,+        orientation = Prelude.Nothing,+        position = Prelude.Nothing,+        vendorProperties = Prelude.Nothing,+        httpStatus = pHttpStatus_,+        arn = pArn_,+        id = pId_,+        fleet = pFleet_,+        updatedAt = Data._Time Lens.# pUpdatedAt_,+        name = pName_+      }++-- | Undocumented member.+updateWorkerResponse_additionalFixedProperties :: Lens.Lens' UpdateWorkerResponse (Prelude.Maybe Prelude.Text)+updateWorkerResponse_additionalFixedProperties = Lens.lens (\UpdateWorkerResponse' {additionalFixedProperties} -> additionalFixedProperties) (\s@UpdateWorkerResponse' {} a -> s {additionalFixedProperties = a} :: UpdateWorkerResponse)++-- | Undocumented member.+updateWorkerResponse_additionalTransientProperties :: Lens.Lens' UpdateWorkerResponse (Prelude.Maybe Prelude.Text)+updateWorkerResponse_additionalTransientProperties = Lens.lens (\UpdateWorkerResponse' {additionalTransientProperties} -> additionalTransientProperties) (\s@UpdateWorkerResponse' {} a -> s {additionalTransientProperties = a} :: UpdateWorkerResponse)++-- | Undocumented member.+updateWorkerResponse_orientation :: Lens.Lens' UpdateWorkerResponse (Prelude.Maybe Orientation)+updateWorkerResponse_orientation = Lens.lens (\UpdateWorkerResponse' {orientation} -> orientation) (\s@UpdateWorkerResponse' {} a -> s {orientation = a} :: UpdateWorkerResponse)++-- | Undocumented member.+updateWorkerResponse_position :: Lens.Lens' UpdateWorkerResponse (Prelude.Maybe PositionCoordinates)+updateWorkerResponse_position = Lens.lens (\UpdateWorkerResponse' {position} -> position) (\s@UpdateWorkerResponse' {} a -> s {position = a} :: UpdateWorkerResponse)++-- | Undocumented member.+updateWorkerResponse_vendorProperties :: Lens.Lens' UpdateWorkerResponse (Prelude.Maybe VendorProperties)+updateWorkerResponse_vendorProperties = Lens.lens (\UpdateWorkerResponse' {vendorProperties} -> vendorProperties) (\s@UpdateWorkerResponse' {} a -> s {vendorProperties = a} :: UpdateWorkerResponse)++-- | The response's http status code.+updateWorkerResponse_httpStatus :: Lens.Lens' UpdateWorkerResponse Prelude.Int+updateWorkerResponse_httpStatus = Lens.lens (\UpdateWorkerResponse' {httpStatus} -> httpStatus) (\s@UpdateWorkerResponse' {} a -> s {httpStatus = a} :: UpdateWorkerResponse)++-- | Undocumented member.+updateWorkerResponse_arn :: Lens.Lens' UpdateWorkerResponse Prelude.Text+updateWorkerResponse_arn = Lens.lens (\UpdateWorkerResponse' {arn} -> arn) (\s@UpdateWorkerResponse' {} a -> s {arn = a} :: UpdateWorkerResponse)++-- | Undocumented member.+updateWorkerResponse_id :: Lens.Lens' UpdateWorkerResponse Prelude.Text+updateWorkerResponse_id = Lens.lens (\UpdateWorkerResponse' {id} -> id) (\s@UpdateWorkerResponse' {} a -> s {id = a} :: UpdateWorkerResponse)++-- | Undocumented member.+updateWorkerResponse_fleet :: Lens.Lens' UpdateWorkerResponse Prelude.Text+updateWorkerResponse_fleet = Lens.lens (\UpdateWorkerResponse' {fleet} -> fleet) (\s@UpdateWorkerResponse' {} a -> s {fleet = a} :: UpdateWorkerResponse)++-- | Undocumented member.+updateWorkerResponse_updatedAt :: Lens.Lens' UpdateWorkerResponse Prelude.UTCTime+updateWorkerResponse_updatedAt = Lens.lens (\UpdateWorkerResponse' {updatedAt} -> updatedAt) (\s@UpdateWorkerResponse' {} a -> s {updatedAt = a} :: UpdateWorkerResponse) Prelude.. Data._Time++-- | Undocumented member.+updateWorkerResponse_name :: Lens.Lens' UpdateWorkerResponse Prelude.Text+updateWorkerResponse_name = Lens.lens (\UpdateWorkerResponse' {name} -> name) (\s@UpdateWorkerResponse' {} a -> s {name = a} :: UpdateWorkerResponse)++instance Prelude.NFData UpdateWorkerResponse where+  rnf UpdateWorkerResponse' {..} =+    Prelude.rnf additionalFixedProperties+      `Prelude.seq` Prelude.rnf additionalTransientProperties+      `Prelude.seq` Prelude.rnf orientation+      `Prelude.seq` Prelude.rnf position+      `Prelude.seq` Prelude.rnf vendorProperties+      `Prelude.seq` Prelude.rnf httpStatus+      `Prelude.seq` Prelude.rnf arn+      `Prelude.seq` Prelude.rnf id+      `Prelude.seq` Prelude.rnf fleet+      `Prelude.seq` Prelude.rnf updatedAt+      `Prelude.seq` Prelude.rnf name
+ gen/Amazonka/IoTRoboRunner/UpdateWorkerFleet.hs view
@@ -0,0 +1,250 @@+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE DuplicateRecordFields #-}+{-# LANGUAGE NamedFieldPuns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-unused-matches #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.IoTRoboRunner.UpdateWorkerFleet+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Grants permission to update a worker fleet+module Amazonka.IoTRoboRunner.UpdateWorkerFleet+  ( -- * Creating a Request+    UpdateWorkerFleet (..),+    newUpdateWorkerFleet,++    -- * Request Lenses+    updateWorkerFleet_additionalFixedProperties,+    updateWorkerFleet_name,+    updateWorkerFleet_id,++    -- * Destructuring the Response+    UpdateWorkerFleetResponse (..),+    newUpdateWorkerFleetResponse,++    -- * Response Lenses+    updateWorkerFleetResponse_additionalFixedProperties,+    updateWorkerFleetResponse_httpStatus,+    updateWorkerFleetResponse_arn,+    updateWorkerFleetResponse_id,+    updateWorkerFleetResponse_name,+    updateWorkerFleetResponse_updatedAt,+  )+where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IoTRoboRunner.Types+import qualified Amazonka.Prelude as Prelude+import qualified Amazonka.Request as Request+import qualified Amazonka.Response as Response++-- | /See:/ 'newUpdateWorkerFleet' smart constructor.+data UpdateWorkerFleet = UpdateWorkerFleet'+  { additionalFixedProperties :: Prelude.Maybe Prelude.Text,+    name :: Prelude.Maybe Prelude.Text,+    id :: Prelude.Text+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateWorkerFleet' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'additionalFixedProperties', 'updateWorkerFleet_additionalFixedProperties' - Undocumented member.+--+-- 'name', 'updateWorkerFleet_name' - Undocumented member.+--+-- 'id', 'updateWorkerFleet_id' - Undocumented member.+newUpdateWorkerFleet ::+  -- | 'id'+  Prelude.Text ->+  UpdateWorkerFleet+newUpdateWorkerFleet pId_ =+  UpdateWorkerFleet'+    { additionalFixedProperties =+        Prelude.Nothing,+      name = Prelude.Nothing,+      id = pId_+    }++-- | Undocumented member.+updateWorkerFleet_additionalFixedProperties :: Lens.Lens' UpdateWorkerFleet (Prelude.Maybe Prelude.Text)+updateWorkerFleet_additionalFixedProperties = Lens.lens (\UpdateWorkerFleet' {additionalFixedProperties} -> additionalFixedProperties) (\s@UpdateWorkerFleet' {} a -> s {additionalFixedProperties = a} :: UpdateWorkerFleet)++-- | Undocumented member.+updateWorkerFleet_name :: Lens.Lens' UpdateWorkerFleet (Prelude.Maybe Prelude.Text)+updateWorkerFleet_name = Lens.lens (\UpdateWorkerFleet' {name} -> name) (\s@UpdateWorkerFleet' {} a -> s {name = a} :: UpdateWorkerFleet)++-- | Undocumented member.+updateWorkerFleet_id :: Lens.Lens' UpdateWorkerFleet Prelude.Text+updateWorkerFleet_id = Lens.lens (\UpdateWorkerFleet' {id} -> id) (\s@UpdateWorkerFleet' {} a -> s {id = a} :: UpdateWorkerFleet)++instance Core.AWSRequest UpdateWorkerFleet where+  type+    AWSResponse UpdateWorkerFleet =+      UpdateWorkerFleetResponse+  request overrides =+    Request.postJSON (overrides defaultService)+  response =+    Response.receiveJSON+      ( \s h x ->+          UpdateWorkerFleetResponse'+            Prelude.<$> (x Data..?> "additionalFixedProperties")+            Prelude.<*> (Prelude.pure (Prelude.fromEnum s))+            Prelude.<*> (x Data..:> "arn")+            Prelude.<*> (x Data..:> "id")+            Prelude.<*> (x Data..:> "name")+            Prelude.<*> (x Data..:> "updatedAt")+      )++instance Prelude.Hashable UpdateWorkerFleet where+  hashWithSalt _salt UpdateWorkerFleet' {..} =+    _salt+      `Prelude.hashWithSalt` additionalFixedProperties+      `Prelude.hashWithSalt` name+      `Prelude.hashWithSalt` id++instance Prelude.NFData UpdateWorkerFleet where+  rnf UpdateWorkerFleet' {..} =+    Prelude.rnf additionalFixedProperties+      `Prelude.seq` Prelude.rnf name+      `Prelude.seq` Prelude.rnf id++instance Data.ToHeaders UpdateWorkerFleet where+  toHeaders =+    Prelude.const+      ( Prelude.mconcat+          [ "Content-Type"+              Data.=# ( "application/x-amz-json-1.1" ::+                          Prelude.ByteString+                      )+          ]+      )++instance Data.ToJSON UpdateWorkerFleet where+  toJSON UpdateWorkerFleet' {..} =+    Data.object+      ( Prelude.catMaybes+          [ ("additionalFixedProperties" Data..=)+              Prelude.<$> additionalFixedProperties,+            ("name" Data..=) Prelude.<$> name,+            Prelude.Just ("id" Data..= id)+          ]+      )++instance Data.ToPath UpdateWorkerFleet where+  toPath = Prelude.const "/updateWorkerFleet"++instance Data.ToQuery UpdateWorkerFleet where+  toQuery = Prelude.const Prelude.mempty++-- | /See:/ 'newUpdateWorkerFleetResponse' smart constructor.+data UpdateWorkerFleetResponse = UpdateWorkerFleetResponse'+  { additionalFixedProperties :: Prelude.Maybe Prelude.Text,+    -- | The response's http status code.+    httpStatus :: Prelude.Int,+    arn :: Prelude.Text,+    id :: Prelude.Text,+    name :: Prelude.Text,+    updatedAt :: Data.POSIX+  }+  deriving (Prelude.Eq, Prelude.Read, Prelude.Show, Prelude.Generic)++-- |+-- Create a value of 'UpdateWorkerFleetResponse' with all optional fields omitted.+--+-- Use <https://hackage.haskell.org/package/generic-lens generic-lens> or <https://hackage.haskell.org/package/optics optics> to modify other optional fields.+--+-- The following record fields are available, with the corresponding lenses provided+-- for backwards compatibility:+--+-- 'additionalFixedProperties', 'updateWorkerFleetResponse_additionalFixedProperties' - Undocumented member.+--+-- 'httpStatus', 'updateWorkerFleetResponse_httpStatus' - The response's http status code.+--+-- 'arn', 'updateWorkerFleetResponse_arn' - Undocumented member.+--+-- 'id', 'updateWorkerFleetResponse_id' - Undocumented member.+--+-- 'name', 'updateWorkerFleetResponse_name' - Undocumented member.+--+-- 'updatedAt', 'updateWorkerFleetResponse_updatedAt' - Undocumented member.+newUpdateWorkerFleetResponse ::+  -- | 'httpStatus'+  Prelude.Int ->+  -- | 'arn'+  Prelude.Text ->+  -- | 'id'+  Prelude.Text ->+  -- | 'name'+  Prelude.Text ->+  -- | 'updatedAt'+  Prelude.UTCTime ->+  UpdateWorkerFleetResponse+newUpdateWorkerFleetResponse+  pHttpStatus_+  pArn_+  pId_+  pName_+  pUpdatedAt_ =+    UpdateWorkerFleetResponse'+      { additionalFixedProperties =+          Prelude.Nothing,+        httpStatus = pHttpStatus_,+        arn = pArn_,+        id = pId_,+        name = pName_,+        updatedAt = Data._Time Lens.# pUpdatedAt_+      }++-- | Undocumented member.+updateWorkerFleetResponse_additionalFixedProperties :: Lens.Lens' UpdateWorkerFleetResponse (Prelude.Maybe Prelude.Text)+updateWorkerFleetResponse_additionalFixedProperties = Lens.lens (\UpdateWorkerFleetResponse' {additionalFixedProperties} -> additionalFixedProperties) (\s@UpdateWorkerFleetResponse' {} a -> s {additionalFixedProperties = a} :: UpdateWorkerFleetResponse)++-- | The response's http status code.+updateWorkerFleetResponse_httpStatus :: Lens.Lens' UpdateWorkerFleetResponse Prelude.Int+updateWorkerFleetResponse_httpStatus = Lens.lens (\UpdateWorkerFleetResponse' {httpStatus} -> httpStatus) (\s@UpdateWorkerFleetResponse' {} a -> s {httpStatus = a} :: UpdateWorkerFleetResponse)++-- | Undocumented member.+updateWorkerFleetResponse_arn :: Lens.Lens' UpdateWorkerFleetResponse Prelude.Text+updateWorkerFleetResponse_arn = Lens.lens (\UpdateWorkerFleetResponse' {arn} -> arn) (\s@UpdateWorkerFleetResponse' {} a -> s {arn = a} :: UpdateWorkerFleetResponse)++-- | Undocumented member.+updateWorkerFleetResponse_id :: Lens.Lens' UpdateWorkerFleetResponse Prelude.Text+updateWorkerFleetResponse_id = Lens.lens (\UpdateWorkerFleetResponse' {id} -> id) (\s@UpdateWorkerFleetResponse' {} a -> s {id = a} :: UpdateWorkerFleetResponse)++-- | Undocumented member.+updateWorkerFleetResponse_name :: Lens.Lens' UpdateWorkerFleetResponse Prelude.Text+updateWorkerFleetResponse_name = Lens.lens (\UpdateWorkerFleetResponse' {name} -> name) (\s@UpdateWorkerFleetResponse' {} a -> s {name = a} :: UpdateWorkerFleetResponse)++-- | Undocumented member.+updateWorkerFleetResponse_updatedAt :: Lens.Lens' UpdateWorkerFleetResponse Prelude.UTCTime+updateWorkerFleetResponse_updatedAt = Lens.lens (\UpdateWorkerFleetResponse' {updatedAt} -> updatedAt) (\s@UpdateWorkerFleetResponse' {} a -> s {updatedAt = a} :: UpdateWorkerFleetResponse) Prelude.. Data._Time++instance Prelude.NFData UpdateWorkerFleetResponse where+  rnf UpdateWorkerFleetResponse' {..} =+    Prelude.rnf additionalFixedProperties+      `Prelude.seq` Prelude.rnf httpStatus+      `Prelude.seq` Prelude.rnf arn+      `Prelude.seq` Prelude.rnf id+      `Prelude.seq` Prelude.rnf name+      `Prelude.seq` Prelude.rnf updatedAt
+ gen/Amazonka/IoTRoboRunner/Waiters.hs view
@@ -0,0 +1,24 @@+{-# LANGUAGE DisambiguateRecordFields #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE StrictData #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Amazonka.IoTRoboRunner.Waiters+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Amazonka.IoTRoboRunner.Waiters where++import qualified Amazonka.Core as Core+import qualified Amazonka.Core.Lens.Internal as Lens+import qualified Amazonka.Data as Data+import Amazonka.IoTRoboRunner.Lens+import Amazonka.IoTRoboRunner.Types+import qualified Amazonka.Prelude as Prelude
+ src/.gitkeep view
+ test/Main.hs view
@@ -0,0 +1,23 @@+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module      : Main+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Main (main) where++import Test.Amazonka.IoTRoboRunner+import Test.Amazonka.IoTRoboRunner.Internal+import Test.Tasty++main :: IO ()+main =+  defaultMain $+    testGroup+      "IoTRoboRunner"+      [ testGroup "tests" tests,+        testGroup "fixtures" fixtures+      ]
+ test/Test/Amazonka/Gen/IoTRoboRunner.hs view
@@ -0,0 +1,438 @@+{-# OPTIONS_GHC -fno-warn-orphans #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module      : Test.Amazonka.Gen.IoTRoboRunner+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Test.Amazonka.Gen.IoTRoboRunner where++import Amazonka.IoTRoboRunner+import qualified Data.Proxy as Proxy+import Test.Amazonka.Fixture+import Test.Amazonka.IoTRoboRunner.Internal+import Test.Amazonka.Prelude+import Test.Tasty++-- Auto-generated: the actual test selection needs to be manually placed into+-- the top-level so that real test data can be incrementally added.+--+-- This commented snippet is what the entire set should look like:++-- fixtures :: TestTree+-- fixtures =+--     [ testGroup "request"+--         [ requestCreateDestination $+--             newCreateDestination+--+--         , requestCreateSite $+--             newCreateSite+--+--         , requestCreateWorker $+--             newCreateWorker+--+--         , requestCreateWorkerFleet $+--             newCreateWorkerFleet+--+--         , requestDeleteDestination $+--             newDeleteDestination+--+--         , requestDeleteSite $+--             newDeleteSite+--+--         , requestDeleteWorker $+--             newDeleteWorker+--+--         , requestDeleteWorkerFleet $+--             newDeleteWorkerFleet+--+--         , requestGetDestination $+--             newGetDestination+--+--         , requestGetSite $+--             newGetSite+--+--         , requestGetWorker $+--             newGetWorker+--+--         , requestGetWorkerFleet $+--             newGetWorkerFleet+--+--         , requestListDestinations $+--             newListDestinations+--+--         , requestListSites $+--             newListSites+--+--         , requestListWorkerFleets $+--             newListWorkerFleets+--+--         , requestListWorkers $+--             newListWorkers+--+--         , requestUpdateDestination $+--             newUpdateDestination+--+--         , requestUpdateSite $+--             newUpdateSite+--+--         , requestUpdateWorker $+--             newUpdateWorker+--+--         , requestUpdateWorkerFleet $+--             newUpdateWorkerFleet+--+--           ]++--     , testGroup "response"+--         [ responseCreateDestination $+--             newCreateDestinationResponse+--+--         , responseCreateSite $+--             newCreateSiteResponse+--+--         , responseCreateWorker $+--             newCreateWorkerResponse+--+--         , responseCreateWorkerFleet $+--             newCreateWorkerFleetResponse+--+--         , responseDeleteDestination $+--             newDeleteDestinationResponse+--+--         , responseDeleteSite $+--             newDeleteSiteResponse+--+--         , responseDeleteWorker $+--             newDeleteWorkerResponse+--+--         , responseDeleteWorkerFleet $+--             newDeleteWorkerFleetResponse+--+--         , responseGetDestination $+--             newGetDestinationResponse+--+--         , responseGetSite $+--             newGetSiteResponse+--+--         , responseGetWorker $+--             newGetWorkerResponse+--+--         , responseGetWorkerFleet $+--             newGetWorkerFleetResponse+--+--         , responseListDestinations $+--             newListDestinationsResponse+--+--         , responseListSites $+--             newListSitesResponse+--+--         , responseListWorkerFleets $+--             newListWorkerFleetsResponse+--+--         , responseListWorkers $+--             newListWorkersResponse+--+--         , responseUpdateDestination $+--             newUpdateDestinationResponse+--+--         , responseUpdateSite $+--             newUpdateSiteResponse+--+--         , responseUpdateWorker $+--             newUpdateWorkerResponse+--+--         , responseUpdateWorkerFleet $+--             newUpdateWorkerFleetResponse+--+--           ]+--     ]++-- Requests++requestCreateDestination :: CreateDestination -> TestTree+requestCreateDestination =+  req+    "CreateDestination"+    "fixture/CreateDestination.yaml"++requestCreateSite :: CreateSite -> TestTree+requestCreateSite =+  req+    "CreateSite"+    "fixture/CreateSite.yaml"++requestCreateWorker :: CreateWorker -> TestTree+requestCreateWorker =+  req+    "CreateWorker"+    "fixture/CreateWorker.yaml"++requestCreateWorkerFleet :: CreateWorkerFleet -> TestTree+requestCreateWorkerFleet =+  req+    "CreateWorkerFleet"+    "fixture/CreateWorkerFleet.yaml"++requestDeleteDestination :: DeleteDestination -> TestTree+requestDeleteDestination =+  req+    "DeleteDestination"+    "fixture/DeleteDestination.yaml"++requestDeleteSite :: DeleteSite -> TestTree+requestDeleteSite =+  req+    "DeleteSite"+    "fixture/DeleteSite.yaml"++requestDeleteWorker :: DeleteWorker -> TestTree+requestDeleteWorker =+  req+    "DeleteWorker"+    "fixture/DeleteWorker.yaml"++requestDeleteWorkerFleet :: DeleteWorkerFleet -> TestTree+requestDeleteWorkerFleet =+  req+    "DeleteWorkerFleet"+    "fixture/DeleteWorkerFleet.yaml"++requestGetDestination :: GetDestination -> TestTree+requestGetDestination =+  req+    "GetDestination"+    "fixture/GetDestination.yaml"++requestGetSite :: GetSite -> TestTree+requestGetSite =+  req+    "GetSite"+    "fixture/GetSite.yaml"++requestGetWorker :: GetWorker -> TestTree+requestGetWorker =+  req+    "GetWorker"+    "fixture/GetWorker.yaml"++requestGetWorkerFleet :: GetWorkerFleet -> TestTree+requestGetWorkerFleet =+  req+    "GetWorkerFleet"+    "fixture/GetWorkerFleet.yaml"++requestListDestinations :: ListDestinations -> TestTree+requestListDestinations =+  req+    "ListDestinations"+    "fixture/ListDestinations.yaml"++requestListSites :: ListSites -> TestTree+requestListSites =+  req+    "ListSites"+    "fixture/ListSites.yaml"++requestListWorkerFleets :: ListWorkerFleets -> TestTree+requestListWorkerFleets =+  req+    "ListWorkerFleets"+    "fixture/ListWorkerFleets.yaml"++requestListWorkers :: ListWorkers -> TestTree+requestListWorkers =+  req+    "ListWorkers"+    "fixture/ListWorkers.yaml"++requestUpdateDestination :: UpdateDestination -> TestTree+requestUpdateDestination =+  req+    "UpdateDestination"+    "fixture/UpdateDestination.yaml"++requestUpdateSite :: UpdateSite -> TestTree+requestUpdateSite =+  req+    "UpdateSite"+    "fixture/UpdateSite.yaml"++requestUpdateWorker :: UpdateWorker -> TestTree+requestUpdateWorker =+  req+    "UpdateWorker"+    "fixture/UpdateWorker.yaml"++requestUpdateWorkerFleet :: UpdateWorkerFleet -> TestTree+requestUpdateWorkerFleet =+  req+    "UpdateWorkerFleet"+    "fixture/UpdateWorkerFleet.yaml"++-- Responses++responseCreateDestination :: CreateDestinationResponse -> TestTree+responseCreateDestination =+  res+    "CreateDestinationResponse"+    "fixture/CreateDestinationResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy CreateDestination)++responseCreateSite :: CreateSiteResponse -> TestTree+responseCreateSite =+  res+    "CreateSiteResponse"+    "fixture/CreateSiteResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy CreateSite)++responseCreateWorker :: CreateWorkerResponse -> TestTree+responseCreateWorker =+  res+    "CreateWorkerResponse"+    "fixture/CreateWorkerResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy CreateWorker)++responseCreateWorkerFleet :: CreateWorkerFleetResponse -> TestTree+responseCreateWorkerFleet =+  res+    "CreateWorkerFleetResponse"+    "fixture/CreateWorkerFleetResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy CreateWorkerFleet)++responseDeleteDestination :: DeleteDestinationResponse -> TestTree+responseDeleteDestination =+  res+    "DeleteDestinationResponse"+    "fixture/DeleteDestinationResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy DeleteDestination)++responseDeleteSite :: DeleteSiteResponse -> TestTree+responseDeleteSite =+  res+    "DeleteSiteResponse"+    "fixture/DeleteSiteResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy DeleteSite)++responseDeleteWorker :: DeleteWorkerResponse -> TestTree+responseDeleteWorker =+  res+    "DeleteWorkerResponse"+    "fixture/DeleteWorkerResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy DeleteWorker)++responseDeleteWorkerFleet :: DeleteWorkerFleetResponse -> TestTree+responseDeleteWorkerFleet =+  res+    "DeleteWorkerFleetResponse"+    "fixture/DeleteWorkerFleetResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy DeleteWorkerFleet)++responseGetDestination :: GetDestinationResponse -> TestTree+responseGetDestination =+  res+    "GetDestinationResponse"+    "fixture/GetDestinationResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy GetDestination)++responseGetSite :: GetSiteResponse -> TestTree+responseGetSite =+  res+    "GetSiteResponse"+    "fixture/GetSiteResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy GetSite)++responseGetWorker :: GetWorkerResponse -> TestTree+responseGetWorker =+  res+    "GetWorkerResponse"+    "fixture/GetWorkerResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy GetWorker)++responseGetWorkerFleet :: GetWorkerFleetResponse -> TestTree+responseGetWorkerFleet =+  res+    "GetWorkerFleetResponse"+    "fixture/GetWorkerFleetResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy GetWorkerFleet)++responseListDestinations :: ListDestinationsResponse -> TestTree+responseListDestinations =+  res+    "ListDestinationsResponse"+    "fixture/ListDestinationsResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy ListDestinations)++responseListSites :: ListSitesResponse -> TestTree+responseListSites =+  res+    "ListSitesResponse"+    "fixture/ListSitesResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy ListSites)++responseListWorkerFleets :: ListWorkerFleetsResponse -> TestTree+responseListWorkerFleets =+  res+    "ListWorkerFleetsResponse"+    "fixture/ListWorkerFleetsResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy ListWorkerFleets)++responseListWorkers :: ListWorkersResponse -> TestTree+responseListWorkers =+  res+    "ListWorkersResponse"+    "fixture/ListWorkersResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy ListWorkers)++responseUpdateDestination :: UpdateDestinationResponse -> TestTree+responseUpdateDestination =+  res+    "UpdateDestinationResponse"+    "fixture/UpdateDestinationResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy UpdateDestination)++responseUpdateSite :: UpdateSiteResponse -> TestTree+responseUpdateSite =+  res+    "UpdateSiteResponse"+    "fixture/UpdateSiteResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy UpdateSite)++responseUpdateWorker :: UpdateWorkerResponse -> TestTree+responseUpdateWorker =+  res+    "UpdateWorkerResponse"+    "fixture/UpdateWorkerResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy UpdateWorker)++responseUpdateWorkerFleet :: UpdateWorkerFleetResponse -> TestTree+responseUpdateWorkerFleet =+  res+    "UpdateWorkerFleetResponse"+    "fixture/UpdateWorkerFleetResponse.proto"+    defaultService+    (Proxy.Proxy :: Proxy.Proxy UpdateWorkerFleet)
+ test/Test/Amazonka/IoTRoboRunner.hs view
@@ -0,0 +1,20 @@+-- |+-- Module      : Test.Amazonka.IoTRoboRunner+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Test.Amazonka.IoTRoboRunner+  ( tests,+    fixtures,+  )+where++import Test.Tasty (TestTree)++tests :: [TestTree]+tests = []++fixtures :: [TestTree]+fixtures = []
+ test/Test/Amazonka/IoTRoboRunner/Internal.hs view
@@ -0,0 +1,8 @@+-- |+-- Module      : Test.Amazonka.IoTRoboRunner.Internal+-- Copyright   : (c) 2013-2023 Brendan Hay+-- License     : Mozilla Public License, v. 2.0.+-- Maintainer  : Brendan Hay+-- Stability   : auto-generated+-- Portability : non-portable (GHC extensions)+module Test.Amazonka.IoTRoboRunner.Internal where